// JavaScript Document

Cufon.replace('#pageTitle');
Cufon.replace('div.module:not("div.moduleSearch") h1');
Cufon.replace('#landing h1');
Cufon.replace('#contentRHS h3');
Cufon.replace('#countryPage h1');

var homeNewsIndex = 0;
var firstTime = true;
var rotateId = 0;

$(document).ready(function(){
	
	// hover and display news image on homepage
	var homepageNews = $('#homepageNews');
	if(homepageNews){
		homepageNews.find('a').mouseenter(function(){
			homepageNews.find('li').each(function(){
				$(this).removeClass('on');	
			});
			$(this).parent('li').addClass('on');
						
			// find index of li roll'd over. 
			var selectedIndex = $(this).parent('li').index();
			var homepageNewsImage = homepageNews.find('#homepageNewsImage');
			homepageNewsImage.find('img').attr('src', '/' + newsImages[selectedIndex][0]);
			homepageNewsImage.find('p').html(newsImages[selectedIndex][1]);
		});
	}
	
	// Setting current state on Nav
	var url = new String(document.location);
	url = url.split('/')[3].split('.html')[0];
	
	$('#nav a').each(function(){
		var currentPage = $(this).attr('href');
		currentPage = currentPage.split('/')[1].split('.html')[0];		
		
		if(currentPage == url){
			$(this).parent('li').addClass('on');
		}		
	});
	
	// Setting 'open' class in #aside
	var asideOn = $('#aside li.on');
	if(asideOn.find('ul').size() > 0){
		asideOn.addClass('open');
	}
	
	// Homepage cycle
	$('#homepageNewsList').find('li:eq(0)').addClass('on'); // first one will always be shown.
	rotateNews(homeNewsIndex);
	
	// bind homepage hover to stop cycle
	$('#homepageNews').hover(function(){
		clearTimeout(rotateId);
	}, function(){
		rotateId = setTimeout('rotateNews(homeNewsIndex)', 4000);
	});

});

var homepage = $('#homepage');
if(homepage.length){

	/* Image preload - http://engineeredweb.com/blog/09/12/preloading-images-jquery-and-javascript */
	(function($) {
	  var cache = [];
	  // Arguments are image paths relative to the current page.
	  $.preLoadImages = function() {
		 var args_len = arguments.length;
		 for (var i = args_len; i--;) {
			var cacheImage = document.createElement('img');
			cacheImage.src = arguments[i];
			cache.push(cacheImage);
		 }
	  }
	})(jQuery)
	jQuery.preLoadImages(newsImages[0][0]);
	jQuery.preLoadImages(newsImages[1][0]);
	jQuery.preLoadImages(newsImages[2][0]);
	jQuery.preLoadImages(newsImages[3][0]);
}

function rotateNews(index){

	if(!firstTime){
		
		var _newsImage = $('#homepageNewsImage');
		_newsImage.find('img').fadeOut(400, function(){
			var _newsList = $('#homepageNewsList');
			_newsList.find('li').removeClass('on');
			_newsList.find('li:eq('+index+')').addClass('on');
			
			_newsImage.find('img').hide().attr('src', '/' + newsImages[index][0]).fadeIn(400);
			
			_newsImage.find('p').html(newsImages[index][1]);
		});
		
		
	}
	else{
		firstTime = false;
	}
	
	rotateId = setTimeout('rotateNews(homeNewsIndex)', 4000);
	
	homeNewsIndex++;
	if(homeNewsIndex == 4){
		homeNewsIndex = 0;
	}
	
}
