/* DATE PICKERS */
jQuery(document).ready(function($) {
	$("#datepicker").datepicker({
		showOn: 'button', 
		buttonImage: '/images/gen/bk/spacer.gif', 
		buttonImageOnly: true,
		dateFormat: 'yy-mm-dd',
		altField: '#datedisplay', 
		altFormat: 'DD dd MM',
		onSelect: function(dateText, inst) { 
			GetWhatsOn('WhatsOn','/programmes/WhatsOn?date=' + dateText);
		}
	});
	$("#dateguidepicker").datepicker({
		showOn: 'button', 
		buttonImage: '/images/gen/bk/spacer.gif', 
		buttonImageOnly: true,
		dateFormat: 'yy-mm-dd',
		altField: '#dateguide', 
		altFormat: 'DD dd MM',
		onSelect: function(dateText, inst) { 
			window.location.href = '?date=' + dateText;
		}
	});
	
	
	$.fn.tipsy.defaults = {
        delayIn: 0,
        delayOut: 0.1,
        fade: true,
        fallback: '',
        gravity: $.fn.tipsy.autoWE,
        html: true,
        opacity: 0.8,
        title: 'title'
    };
	$('.slots .cell').tipsy({fallback:'Programme Info'});
	
	// GET WhatsOn Panel
	GetWhatsOn('WhatsOn','/programmes/WhatsOn');
});

// GET WhatsOn Panel
function GetWhatsOn(id,url) {
	// Default URL
	url=url?url:'/programmes/WhatsOn';
	$("#"+id).html('');
	$.ajax({
			url: url,
			error:function(ajaxrequest){
				$("#"+id).html('Error fetching content.<br />Server Response: '+ajaxrequest.responseText)
			},
			success:function(content){
				$("#"+id).html(content);
				$('#WhatsOn .cell').tipsy({fallback:'Programme Info'});
			}
		})
}

	
// TV GUIDE MOVER
function moveGuide(pos) {
	var gV = 492;
	var gH = gV*4;

	var animDir = pos*-1;
	
	var currT = parseInt($("#guideWrap .slots").css('top').replace('px',''));
	
	// ANIM STANDARD gV
	if((pos==-1 && currT<=0-gV) || (pos==1 && currT>((gH*-1)+gV))) {
		
		$(".schedule-controls .left-controls").css('visibility','hidden');
		$("#guideWrap .slots").animate(
										{'top':currT+(gV*animDir)},
										350, 
										function(){
										  $(".schedule-controls .left-controls").css('visibility','visible');
										}
									);
	}
	// ANIM TO POS
	if(pos!=-1&&pos!=1) {
		// Adjust pos to nearest round 6hrs;
		var virtualPos = Math.ceil(((pos / gH ) / 25)*100)*gV;  // Ceil because pos number is negative!
		//alert(virtualPos);
		$(".schedule-controls .left-controls").css('visibility','hidden');
		$("#guideWrap .slots").animate(
										{'top':virtualPos},
										350, 
										function(){
										  $(".schedule-controls .left-controls").css('visibility','visible');
										}
									);
			
	}
	
}
