// Sifr customization
var helveticaRounded = { src: rootUrl+'swf/HelveticaRounded.swf', highsrc: rootUrl+'swf/HelveticaRounded.swf' };
var helveticaNeue	 = { src: rootUrl+'swf/HelveticaNeue.swf', highsrc: rootUrl+'swf/HelveticaNeue.swf' };

sIFR.compatMode = true; 
sIFR.activate();

// Basic code
function clickclear(thisfield, defaulttext) { if (thisfield.value == defaulttext) { thisfield.value = ""; } }
function clickrecall(thisfield, defaulttext) { if (thisfield.value == "") { thisfield.value = defaulttext; } }
function isGalleryView(){ return ($('div.btnGallery').size() > 0); }

function updateGraphs(){
	sIFR.replace(helveticaRounded, { selector: 'h1', wmode: 'transparent', css: [ '.sIFR-root { font-size: 28px; color: #ec142d }' ] });
 	sIFR.replace(helveticaRounded, { selector: 'h2', wmode: 'transparent', css: [ '.sIFR-root { font-size: 19px; color: #0e0e0e; }' ] });
	
	// Animate poll graphs
	$('.whySponsorGraph .graphPBS').hide().slideDown('slow');
	$('.whySponsorGraph .graphBroadcast').hide().slideDown('slow');
	$('.whySponsorGraph .graphCable').hide().slideDown('slow');
}

function refreshSIFRs() {	
	 sIFR.replace(helveticaRounded, { selector: '.programTitle', wmode: 'transparent', css: [ '.sIFR-root { font-size: 19px; color: #0e0e0e; }' ] });
	 sIFR.replace(helveticaRounded, { selector: 'h3.underlined', wmode: 'transparent', css: [ '.sIFR-root { font-size: 18px; color: #ff0000; }' ] });
	 sIFR.replace(helveticaRounded, { selector: 'h3.grey', wmode: 'transparent', css: [ '.sIFR-root { font-size: 19px; color: #363636; }' ] });
	 sIFR.replace(helveticaRounded, { selector: 'h3.videoListTitle', wmode: 'transparent', css: [ '.sIFR-root { font-size: 14px; color: #363636; text-transform:uppercase; }' ] });
	 sIFR.replace(helveticaRounded, { selector: 'h3', wmode: 'transparent', css: [ '.sIFR-root { font-size: 20px; color: #EC142D; }' ] });
	 sIFR.replace(helveticaRounded, { selector: 'h2', wmode: 'transparent', css: [ '.sIFR-root { font-size: 19px; color: #0e0e0e; }' ] });
}

var featuredProgramsState = null;

function showProgramDetails(obj) {
	$('#programsLoading').fadeIn('slow');
		
	// Save featured tabs state
	if($("#featuredProgramsContainer").is(':visible'))
	{
		featuredProgramsState = 'visible';
	}
	
	$("#featuredProgramsContainer").hide();
	$('.programGrid').hide();
	$('.programDetailsContainer').load(obj.toString(), null, updateProgramDetails);
}

//
// Program screenshot gallery 
//
function setupProgramScreenshotGallery()
{
	$('.programDetailsContainer .left a img').click(function(e){		
		this.src.replace('/thumbs/', '/thumbs_blackwhite/');
		
		$('.programDetailsContainer .left a img').each( function (i) {  this.src=this.src.replace('/thumbs/', '/thumbs_blackwhite/'); } ); 
		
		this.src = this.src.replace('/thumbs_blackwhite/', '/thumbs/');
		newsrc = this.src;
		$('.programDetailsContainer .left .full').fadeOut('slow', function() {
			$(".programDetailsContainer .left .full").load( function() {  $(this).fadeIn('slow'); } );
			$('.programDetailsContainer .left .full').attr("src", newsrc.replace('/thumbs/', '/full/'));			
		});

		return false;
	});
}



/*
 * Document load
 */
$(document).ready(function() {
	
	$(document).ready(function() {
		$('#emailPreviewContainer h1, #emailPreviewContainer h2, #emailPreviewContainer h3').addClass('sIFR-ignore');
	});
	
	
	if ($("#whySponsorIcons").size() > 0) {
		$("#whySponsorIcons .tooltip").hide();
		$("#whySponsorIcons li").Tooltip({ track: true, delay: 0, top:5, left:5, width: 100, showURL: false });
	}
	
	 sIFR.replace(helveticaRounded, { selector: 'h1', wmode: 'transparent', css: ['.sIFR-root { font-size: 28px; color: #ec142d }']});
	 sIFR.replace({ selector: 'div.sectionTitle h2.white', src: rootUrl+'swf/HelveticaRounded.swf', highsrc: rootUrl+'swf/HelveticaRounded.swf', wmode: 'transparent', css: [ '.sIFR-root { font-size: 19px; color: #ffffff; }' ] });
	 sIFR.replace(helveticaRounded, { selector: '.whySponsorGraphContainer h2', wmode: 'transparent', css: [ '.sIFR-root { font-size: 22px; color: #0e0e0e; }' ] });
	 sIFR.replace(helveticaNeue, { selector: 'h2.contactReasonText', wmode: 'transparent', css: [ '.sIFR-root { font-size: 24px; color: #363636; }' ] });
	 sIFR.replace(helveticaRounded, { selector: 'h2.white', wmode: 'transparent', css: [ '.sIFR-root { font-size: 19px; color: #FFFFFF; }' ] });
	 sIFR.replace(helveticaRounded, { selector: 'h2', wmode: 'transparent', css: [ '.sIFR-root { font-size: 19px; color: #0e0e0e; }' ] });
	 sIFR.replace(helveticaRounded, { selector: 'h3.white', wmode: 'transparent', css: [ '.sIFR-root { font-size: 20px; color: #ffffff; }' ] });
	 sIFR.replace(helveticaRounded, { selector: 'h3.grey', wmode: 'transparent', css: [ '.sIFR-root { font-size: 18px; color: #363636; }' ] });
	 sIFR.replace(helveticaRounded, { selector: '#whySponsorGraphNav h3', wmode: 'transparent', css: [ '.sIFR-root { font-size: 17px; color: #EC142D; }' ] });
	 sIFR.replace(helveticaRounded, { selector: 'h3.small', wmode: 'transparent', css: [ '.sIFR-root { font-size: 19px; color: #EC142D; }' ] });
	 sIFR.replace(helveticaRounded, { selector: 'h3.videoListTitle', wmode: 'transparent', css: [ '.sIFR-root { font-size: 14px; color: #363636; text-transform:uppercase; }' ] });
	 sIFR.replace(helveticaRounded, { selector: 'h3', wmode: 'transparent', css: [ '.sIFR-root { font-size: 20px; color: #EC142D; }' ] });
	
	// jScrollPane
	$('.scroll-pane').jScrollPane({showArrows:true});
	
	// Show view buttons on programs page
	$('.btnList').show();
	$('.btnGallery').show();

	// charts
	$('#whySponsorGraphNav li a').click(function(){
		$(this).parent().siblings().children('a.active').removeClass('active');
		console.log($(this).parent().siblings().children('a.active'));
		$(this).addClass('active');
		$('.whySponsorGraphContainer').load(this.href, null, function(){
			updateGraphs();
		});
		return false;
	});

	$('.btnprogram').click(function(e){
		 try {
			$('#videoPlayer').get(0).playProgramVideo();
		 }
		catch(err){
			return true;
		}
		return false;
	});	


	// Animate poll graphs
	$('.whySponsorGraph .graphPBS').hide().slideDown('slow');
	$('.whySponsorGraph .graphBroadcast').hide().slideDown('slow');
	$('.whySponsorGraph .graphCable').hide().slideDown('slow');

	setupProgramScreenshotGallery();

	// Program filter
	$("#programFilterSubmit").hide();
	$('#programsFilter input').click(function(e){		
		
		// Highlight labels
		$(this).next(':first').css('color', (this.checked ? '#EC142D' : '#868686'));
		
		if (!isGalleryView()) {		
				// Show preloader and hide tabs box 
				$('.programGrid').hide(); 
				$("#featuredProgramsContainer").hide();
				if ($(".programDetailsContainer").is(':visible')) {
					$(".programDetailsContainer, .programDetailsContainerTop").hide();
				}
			
				$('#programsLoading').fadeIn('slow', function() {
				
				// Submit filter
				$('#ProgramIndexForm').ajaxSubmit(function (data) {
					$('.programGrid').html(data);
					programGridUpdateResponseHandler();
					$('#programsLoading').hide();
					$("h3.underlined").show(); 
					$('.programGrid').show();
					refreshSIFRs();  	
				});
			});  
		}else { // Gallery view
			updateGalleryFlash();
		}
	}); 
	

	// Show program details
	$('.programGrid a').click(function(e){
		//showProgramDetails(this);
		//return false;
	});


	// Goals page
	$('ul.goals').hide();
	$('#goalsContainer').show();
	
	
	$(".navTabs a").parent().hover(function(e) {
		if($(this).parent('li.active').size() < 1) {
			$(this).css('background-color', $(this).parent().css("border-top-color"))
				   .css('border-bottom-color', $(this).parent().css("border-top-color"));		
		}
	}, 	
	function(e){
			if($(this).parent('li.active').size() < 1) {
				$(this).css('background-color', '#4C4C4C')
					   .css('border-bottom-color', '#797979')
					   .parent().css('background-color', '#ECEBEB');
			}
	});

	// Featured programs tabs
	$(".navTabs a").click(function(e){
		$(".featuredBox").hide();
		$("#featuredBox" + this.innerHTML.replace(' ', '_')).show();
		$(".navTabs li").removeClass('active').addClass('inactive');
		$(this).parent().parent().addClass("active")
								 .removeClass("inactive")
								 .css('background-color', $(this).parent().parent().css("border-top-color"));
		
		$(this).parent().parent().parent().children().not('.active').children(0).css('background-color', '#4C4C4C')
																				 .css('border-bottom-color', '#797979').parent().css('background-color', '#ECEBEB');
		
		
		// Submit AJAX
		$('.programGrid').hide();
		var tab = this;
		$('#programsLoading').fadeIn('slow', function() { 			
			sIFR.replace(helveticaRounded, { selector: 'h3.grey', wmode: 'transparent', css: [ '.sIFR-root { font-size: 19px; color: #363636; }' ] });
			$('.programGrid').load(rootUrl + escape('programs/genre:' + tab.innerHTML), null, programGridUpdateResponseHandler);
		});
		
	
		
		
		return false;
	});
 });


function updateGalleryFlash() {	
	
	$('.programGrid').hide(); 
	$("#featuredProgramsContainer").hide();
	
	if($(".programDetailsContainer").is(':visible')) {
		$(".programDetailsContainer, .programDetailsContainerTop").hide();
	}
	
	$('#videoContent').show();

	$('#ProgramIndexForm').get(0).action = rootUrl + 'programs.xml';
	
	// notify loading to flash here
	$('#galleryFlash').get(0).setStateLoading();
	
	// Submit filter
	$('#ProgramIndexForm').ajaxSubmit(function(data){
		// notify flash here
		// alert(data);
	
	
	var str = new XMLSerializer().serializeToString(data);
	
		$('#galleryFlash').get(0).sendXML(str);
	});
}

function openMegaShow(str) {
  	//if(str == 'close')

//alert('Got from flash!' + str);
	//{
	//	// Hide flash here
		$('#videoContent').hide();
		//$('').show();
		$('#programsLoading').fadeIn('slow');

		$('.programDetailsContainer').load(rootUrl + 'programs/view/' + str, null, updateProgramDetails);		
	//}
  return str + " received";
 }



function updateProgramDetails(responseText, textStatus, XMLHttpRequest) {	
	$('#programsLoading').fadeOut('slow', function(){ $('.programDetailsContainer, .programDetailsContainerTop').fadeIn('slow'); setupProgramScreenshotGallery(); });
	
	
	$('#backToPrograms').click(function(e){
		$('.programDetailsContainer, .programDetailsContainerTop').fadeOut('slow', function(){
			
			if(isGalleryView())$('#videoContent').show();
			else $('.programGrid').show();
			
			//Restore tabs
			if(featuredProgramsState == 'visible')$("#featuredProgramsContainer").show();	
		}); return false; });
	
	refreshSIFRs();

	
	//Update bindings on AJAX content
	$('.programDetailsNav .navDetails').click(function(e){
		$('.programDetailsContainer').load(rootUrl + '/programs/view/' + currentProgramId, null, updateProgramDetails);
		$('.programDetailsContainer, .programDetailsContainerTop').show();
		return false;
	});
	
	$('.programDetailsNav .navBenefits').click(function(e){
		$('.programDetailsContainer').load(rootUrl + '/programs/benefits/' + currentProgramId, null, updateProgramDetails);
		$('.programDetailsContainer, .programDetailsContainerTop').show();
		return false;
	});
	
	$('.programDetailsNav .navVideo').click(function(e){
		$('.programDetailsContainer').load(rootUrl + '/programs/video/' + currentProgramId, null, updateProgramDetails);
		$('.programDetailsContainer, .programDetailsContainerTop').show();
		return false;
	});
}


	// Show program details
function programGridUpdateResponseHandler(responseText, textStatus, XMLHttpRequest) {
	$('.programGrid a').click(function(e){ showProgramDetails(this); return false; });	
	$('#programsLoading').fadeOut('slow');
	$('.programGrid').fadeIn('slow', function(){ refreshSIFRs(); });
}
