$(document).ready(function(){
	initHeader();	
	initTimeline();
	initTopBanners();
	initFooterLogos();
});

function initHeader(){
	$('#startSearchBtn').click(openSearch);
	$('#searchContainer .right').click(openSearch);
	
	startCountdown();
}

var topBannerInterval;
function initTopBanners(){
	//go and load the rest in
	var currentImgSrc = $('#mainphoto img').eq(0).attr('src');
	var currentImgNum = currentImgSrc.search(/[0-9]/i);
	currentImgNum = parseInt(currentImgSrc.charAt(currentImgNum));
	for(var i=1; i<6; i++){
		if( i !== currentImgNum){
			var img = new Image();
			$(img).load(function () {
				  $(this).hide();
				  $('#mainphoto').removeClass('loading').append(this);
				  $(this).css('display', 'block');
			}).attr('src', '/graphics/global/mainphotos/' + i + '.jpg');
		}
	}
	setInterval( "rotateTopBanners()", 6000 );
}

function rotateTopBanners(){
 	var $active = $('#mainphoto img.active');
    
    if ( $active.length == 0 ) $active = $('#mainphoto img:first');

    var $next =  $active.next().length ? $active.next()
        : $('#mainphoto img:first');

    $active.addClass('last-active');

    $next.css({opacity: 0.0})
        .addClass('active')
        .animate({opacity: 1.0}, 1000, function() {
            $active.removeClass('active last-active');
        });	
}

function togglesInputField(thisID){
	thisIDObj = $('#' + thisID);
	thisIDObj.toggle("fast");
}

function showInputField(thisID){
	thisIDObj = $('#' + thisID);
	thisIDObj.fadeIn("fast");
}

function hideOtherInputField(thisID){
	thisIDObj = $('#' + thisID);
	thisIDObj.fadeOut("fast");
}

function showEmailSignUp(thisID){
	thisIDObj = $('#' + thisID);
	thisIDObj.fadeIn("normal");
}

function hideEmailSignUp(thisID){
	thisIDObj = $('#' + thisID);
	thisIDObj.fadeOut("normal");
}


function openSearch(){
	$('#startSearchBtn').fadeOut('fast', function(){
		$('#searchContainer .searchContent').animate({'width': '238px'}, 'fast', function(){
			var searchCriteria = $('#searchCriteria');
			searchCriteria.fadeIn('fast');
			searchCriteria.bind('click', function(){
				if(searchCriteria.val() == 'looking for something?')
					searchCriteria.val('');
			});
			searchCriteria.bind('blur', function(){
				if(searchCriteria.val() == '')
					searchCriteria.val('looking for something?');
			});
			
			$('#searchContainer .right').unbind('click');
			//submit the search form
			$('#searchContainer .right').bind('click', function(){
				$('#searchForm').submit();
			});
			
		});
	});
}


function startCountdown(){
	/**/var today = new Date();
	var julyFourthDate = new Date();
	julyFourthDate = new Date(julyFourthDate.getFullYear(), 6, 4);
	
	/**/var one_day=1000*60*60*24
	if(Math.ceil((julyFourthDate.getTime()-today.getTime())/one_day) < 0 ){
		julyFourthDate = new Date(julyFourthDate.getFullYear()+1, 6, 4);
	}

	
	$('#countdownNumContainer').countdown({ until: julyFourthDate, serverSync: getCurrentServerTime, format: 'DHMS', onTick:checkDayCount, tickInterval:1, layout:
		'<div class="days">' + 
			'<div class="num digit{d100}"></div><div class="num digit{d10}"></div><div class="num digit{d1}"></div>' + 
		'</div>'+
		
		'<div class="hours">' + 
			'<div class="num digit{h10}"></div><div class="num digit{h1}"></div>' + 
		'</div>'+
		
		'<div class="minutes">' + 
			'<div class="num digit{m10}"></div><div class="num digit{m1}"></div>' + 
		'</div>'+
		
		'<div class="seconds">' + 
			'<div class="num digit{s10}"></div><div class="num digit{s1}"></div>' + 
		'</div>'
	});
	
	
	
	//FLATTENED ZERO'S
	/*$('#countdownNumContainer').countdown({ until: julyFourthDate, serverSync: getCurrentServerTime, format: 'DHMS', onTick:checkDayCount, tickInterval:1, layout:
		'<div class="days">' + 
			'<div class="num digit{d10}" style="visibility: hidden"></div><div class="num digit{d1}"></div><div class="num digit{d1}"></div>' + 
		'</div>'+
		
		'<div class="hours">' + 
			'<div class="num digit0"></div><div class="num digit0"></div>' + 
		'</div>'+
		
		'<div class="minutes">' + 
			'<div class="num digit0"></div><div class="num digit0"></div>' + 
		'</div>'+
		
		'<div class="seconds">' + 
			'<div class="num digit0"></div><div class="num digit0"></div>' + 
		'</div>'
	});*/
}

function getCurrentServerTime(){
	$.ajax({url: '/notquiteflat/time.cfc?method=getTime', 
        async: false, dataType: 'json', 
        success: function(text) { 
            time = new Date(text); 
			//alert(time);
        }, error: function(http, message, exc) { 
            /*time = new Date(); */
    }});	
	return time;
}

function checkDayCount(periods){
	if(periods[3].toString().length == '3'){
		$('#countdownNumContainer .days').addClass('threedigits');	   
	}
	else if(periods[3].toString().length == '2' || periods[3].toString().length == '1'){
		$('#countdownNumContainer .days .num:first').remove();	 	
	}
}



function initTimeline(){
	$('#timeline .previous').click(moveTimeLeft);
	$('#timeline .next').click(moveTimeRight);
	$('#timelineSlider .date').hover(function(e){showBlurb(e);}, function(e){hideBlurb(e);});
}

function moveTimeLeft(){
	$('#timeline .next').css('display', 'block');
	if(parseInt($('#timelineSlider').css('left')) == 0){
		return false;
	}
	else{
		$('#timeline .previous').unbind();
		$('#timeline .next').unbind();
		$('#timelineSlider').animate({left: '+=456px'}, function(){
			$('#timeline .previous').click(moveTimeLeft);
			$('#timeline .next').click(moveTimeRight);	
			if(parseInt($('#timelineSlider').css('left')) == -0){
				$('#timeline .previous').css('display', 'none');
			}
		});
		$('#blurbTimelineSlider').animate({left: '+=456px'});
		$('#photoTimelineSlider').animate({left: '+=456px'});
	}
}

function moveTimeRight(){
	$('#timeline .previous').css('display', 'block');
	if(parseInt($('#timelineSlider').css('left')) == -912){
		return false;
	}
	else{
		$('#timeline .previous').unbind();
		$('#timeline .next').unbind();
		$('#timelineSlider').animate({left: '-=456px'}, function(){
			$('#timeline .previous').click(moveTimeLeft);
			$('#timeline .next').click(moveTimeRight);
			if(parseInt($('#timelineSlider').css('left')) == -912){
				$('#timeline .next').css('display', 'none');
			}													 
		});	
		$('#blurbTimelineSlider').animate({left: '-=456px'});
		$('#photoTimelineSlider').animate({left: '-=456px'});
		
	}
}

function showBlurb(e){
	var year = $(e.currentTarget).parent().attr('year');
	$('#blurbTimelineSlider .b'+year).fadeIn('fast');
	$('#photoTimelineSlider .p'+year).fadeIn('fast');
	$('#timelineInfo').hide();
}
function hideBlurb(e){
	var year = $(e.currentTarget).parent().attr('year');
	$('#blurbTimelineSlider .b'+year).fadeOut('fast');
	$('#photoTimelineSlider .p'+year).fadeOut('fast');
}


var temp;
var statusCode;
function initializeWeather() {
 var feed = new google.feeds.Feed("http://weather.yahooapis.com/forecastrss?w=12758708");
  feed.setResultFormat(google.feeds.Feed.XML_FORMAT);
  feed.load(function(result) {
	if (!result.error) {
		 var items = result.xmlDocument.getElementsByTagName("item");
		 var condition = google.feeds.getElementsByTagNameNS(items[0], "http://xml.weather.yahoo.com/ns/rss/1.0", "condition")[0];
		 temp = condition.attributes.getNamedItem('temp').nodeValue;
		 statusCode = condition.attributes.getNamedItem('code').nodeValue;
		 $('#weatherTemp').html(temp +'&deg;F');
		 $('#weatherPhoto').html('<img alt="" width=64" height="64" src="/graphics/weather/'+statusCode+'.png" />');
	}
	else{
		alert('Error getting weather.');
	}
  });
	/* $.ajax({
		type: "get",
		url: "/_commongoal/api/weatherFeed.cfc",
		dataType: "json",
		data: {
		   method: 'getWeather'
		},
		success: function(results){
			alert(results);	
		},
		error: function(a, b, c){
			alert(a + b + c);	
		}
	});	*/
}


function initFooterLogos(){
	setInterval("setFooterLogos()", 2000 );
}

var pos = 2;
function setFooterLogos(){
	var logos = $('#footerLogoContainer').find('.logos');
	if(pos > 4)
		pos = 1;
	if(pos==1){
		$(logos).fadeOut('normal', function(){
			$(logos).removeClass('top');
			$(logos).removeClass('middle');
			$(logos).removeClass('bottom2');
			$(logos).removeClass('bottom');
			$(logos).addClass('top');
			$(logos).fadeIn('normal');
		});	
	}
	if(pos==2){
		$(logos).fadeOut('normal', function(){
			$(logos).removeClass('top');
			$(logos).removeClass('bottom');
			$(logos).removeClass('bottom2');
			$(logos).addClass('middle');
			$(logos).fadeIn('normal');
		});	
	}
	if(pos==3){
		$(logos).fadeOut('normal', function(){
			$(logos).removeClass('middle');
			$(logos).removeClass('bottom2');
			$(logos).removeClass('top');
			$(logos).addClass('bottom');
			$(logos).fadeIn('normal');
		});	
	}
	if(pos==4){
		$(logos).fadeOut('normal', function(){
			$(logos).removeClass('top');
			$(logos).removeClass('middle');
			$(logos).removeClass('bottom');
			$(logos).addClass('bottom2');
			$(logos).fadeIn('normal');
		});	
	}
	pos++;
	/*if(logos.hasClass('top')){
		$(logos).fadeOut('normal', function(){
			$(logos).removeClass('top');
			$(logos).addClass('bottom');
			$(logos).fadeIn('normal');
		});	
	}
	else{
		$(logos).fadeOut('normal', function(){
			$(logos).removeClass('bottom');
			$(logos).addClass('top');
			$(logos).fadeIn('normal');
		});									  
	}*/
}


