//------------------------------------
//	HOMEPAGE.JS
//	Author: 	Engage Interactive
//	Requires:	jquery 1.3.2
//				global.js
//				cufon.js
//				gazz.js
//------------------------------------


//BEGIN jQuery
$(function(){

	//NEAREST NEWS TABS

	$('#nearest_news ul.tabs li a').click(function(){
		newT = $(this).attr('href');
		$(this).addClass('on').parent().siblings().children().removeClass('on');
		$(newT).show().siblings('.tab_content').hide();
		return false;
	});
	$('#nearest_news ul.tabs li a[href="#news"]').click();
	
	// FLICKR COLOURBOX
	
	$('.flickr').colorbox({
		slideshow:true,
		slideshowSpeed:4000
	});
	
	
	//PROMO SLIDER

	totalPromo = $('#promo_slider div').size();
	xPos = 0;
	currentPromo = 1;
	moose = true;
	autoMoose = true;
	promoDelay = 6000;
	easeIn = 'easeInExpo';
	easeOut = 'easeOutExpo';
	inSpeed = 400;
	outSpeed = 1000;
	
	$('#promo_nav .next a').click(function(){
		if(moose==true && totalPromo>currentPromo){
			xPos = xPos - 965;
			currentPromo = currentPromo + 1;
			slideTo(xPos, 'right');
		}else if(moose==true){			
			currentPromo = 1;
			infiniteLoop('right');
		}
		return false;
	});
	
	$('#promo_nav .prev a').click(function(){
		if(moose==true && currentPromo>1){
			xPos = xPos + 965;
			currentPromo = currentPromo - 1;
			slideTo(xPos, 'left');
		}else if(moose==true){
			currentPromo = totalPromo;
			infiniteLoop('left');
		}
		return false;
	});
	
	function infiniteLoop(dir){
		
		moose = false;
		
		totalX = 965 - (965 * totalPromo);
		
		if(dir == 'left'){
			$('#promo_slider').prepend('<div class="promo_content">'+$('#promo_slider div.promo_content:last').html()+'</div>').css({left:-965}).animate({left:0},inSpeed,easeIn,function(){
				$(this).animate({left:0},outSpeed,easeOut,function(){
					$('#promo_slider').css({left:totalX});
					$('#promo_slider div.promo_content:first').remove();
					moose = true;
				})
			});
			xPos = totalX;
		}else if(dir == 'right'){
			$('#promo_slider').append('<div class="promo_content">'+$('#promo_slider div.promo_content:first').html()+'</div>').animate({left:totalX-419},inSpeed,easeIn,function(){
				$(this).animate({left:totalX-965},outSpeed,easeOut,function(){
					$('#promo_slider').css({left:0});
					$('#promo_slider div.promo_content:last').remove();
					moose = true;
				});
			});
			xPos = 0;
		}
		
		thumbState(true);
	}
	
	$('#promo_panel').mouseenter(function(){
		$.clearTimer(promoTimer);
	});
	$('#promo_panel').mouseleave(function(){
		autoMagical();
	});
	
	var promoTimer = {};
	
	function autoMagical(){
		promoTimer = $.timer(promoDelay,function(){
			$.clearTimer(promoTimer);
			$('#promo_nav .next a').click();
			autoMagical();
		});
	}
	
	autoMagical();
	
	function slideTo(newX, dir){
		moose = false;
		if(dir == 'left'){
			halfX = newX - 419;
		}else{
			halfX = newX + 419;
		}
		$('#promo_slider').animate({left:halfX},inSpeed,easeIn,function(){
			$(this).animate({left:newX},outSpeed,easeOut,function(){
				moose = true;
			});
		});
		thumbState(true);
	}
	
	
	// THUMB NAV
	
	function thumbNav(){
		
		$this = $('#promo_thumbs');
		t = $('#promo_slider .promo_content').length;
		i = 0;
		e = 'easeInOutCirc';
		s = 300;
		
		$this.append('<ul id="thumbs_nav"></ul>');
		
		$('#promo_slider .promo_content').each(function(){

			if( $(this).hasClass('html') ){
				html = '<a href="#' + i + '"><img src="' + $(this).find('.thumb').attr('src') + '" alt="Thumbnail"/></a>';
				$this.children('div').append(html);
			}else{
				html = $(this).html();
				$this.children('div').append(html).children('a:eq(' + i + ')').attr('href','#' + i );
			}
			
			i++;
			
			$('#thumbs_nav').append('<li></li>');
			
			if(i==t){
				$this.find('img').attr('width','160').attr('height','60');
				thumbSlide();
				thumbState(true);
			}
		});
		
		$this.mouseenter(function(){
			$('#promo_slider .promo_content').stop([]).animate({paddingTop:88},s,e);
			$this.stop([]).animate({top:0},s,e);
			thumbState();
			$this.children('.corners').show();
		});
		
		$this.mouseleave(function(){
			$('#promo_slider .promo_content').stop([]).animate({paddingTop:0},s,e);
			$this.stop([]).animate({top:-88},s,e,function(){
				$this.children('.corners').hide();
			});
			$this.find('a').removeClass('on');
		});
		
		$('#promo_thumbs div a').click(function(){
			if($(this).hasClass('on') || moose == false ) return false;
			$(this).addClass('on').siblings().removeClass('on');
			
			thumbNum = parseFloat($(this).attr('href').substr(1));
			
			xPos = thumbNum * -965;
			
			if( currentPromo < ( thumbNum + 1 ) ){
				slideTo(xPos, 'right');
			}else{
				slideTo(xPos, 'left');
			}
			
			currentPromo = thumbNum + 1;
			
			thumbState();

			return false;
		});
		
		// When there are more than 4, we need some cool slidy stuffs

		function thumbSlide(){
			w = 182 * t;
			//offset = $this.offset();
			
			$this.children('div').css({width:w, marginLeft: '-' + Math.ceil( w / 2 ) + 'px'});
			
			/*$this.mousemove(function(e){
				xmouse = ( e.pageX - offset.left ) * 100 / 833;
				$this.scrollLeft(x);
			});*/
		}
		
	}
	
	function thumbState(e){
		$('#thumbs_nav li:eq(' + ( currentPromo - 1 ) + ')').addClass('on').siblings().removeClass('on');
		if( !e ) $('#promo_thumbs div a:eq(' + ( currentPromo - 1 ) + ')').addClass('on').siblings().removeClass('on');
	}
	
	
	if ( $.browser.msie && $.browser.version.substr(0,1) < 7 ){
		$('#promo_thumbs').remove();
	}else{
		thumbNav();
	}
	
	//PRELOAD IMAGES
	
	/*$('img.preload').each(function(){
		imgLoad($(this));
	});
	
	function imgLoad(img){
		url = $(img).attr('href').substring(1);
		alert(url);
	}*/
	
//END jQuery
});
