jQuery(function(){

	//audiences accordion
	jQuery('ul.accordion').accordion({
		autoHeight: true,
		header: 'h2',
		event: 'mouseover'
	});
	
	jQuery('ul.accordion').show();
	jQuery('ul.accordion').accordion("activate", Math.floor(Math.random()*jQuery('ul.accordion > li').length));
	
	//publications and image slider
	var maxWidth = 0;
	jQuery('.slides-wrapper li').each(function () {
		var thiswidth = jQuery(this).width();
		maxWidth += thiswidth + 2;
	});

	jQuery('.slides-wrapper .slides').css({"width": maxWidth+"px"});

	jQuery('.featured_publications .slides-wrapper').serialScroll({
		items: 'li',
		prev: '.featured_publications .slide_previous',
		next:'.featured_publications .slide_next'
	});
	
	
	//key partners
	jQuery('.key-partners .key-partners-list-controls').show();
	jQuery('.key-partners-list li.inactive').hide();
	
	keyPartnersScrollerRun();
	
	jQuery('.key-partners-list-controls .prev').click(function(){
		keyPartnersScrollerPrev();
		return false;
	});
	
	jQuery('.key-partners-list-controls .next').click(function(){
		keyPartnersScrollerNext();
		return false;
	});
		
	//jump select boxes
	jQuery('.jumpform .submit').hide();
	jQuery('.jumpform select').change(function(){
		jQuery(this).parents('form').submit();
	});
	
	jQuery('.howcanwehelp .jumpform').show(); //hidden by default as it is js-only
	jQuery('.howcanwehelp h3,.howcanwehelp .links > li').hide();
	jQuery('.howcanwehelp .jumpform select').unbind().change(function(){
		jQuery('.howcanwehelp .links > li').hide();
		jQuery('#'+jQuery(this).val()).show();
		return false;
	});
		
	//useful links
	jQuery('#useful_links').addClass('js_enabled_useful_links');
	maxWidth = 0;
	jQuery('#useful_links li').each(function () {
		var thiswidth = jQuery(this).width();
		maxWidth += thiswidth + 2;
	});
	jQuery('#useful_links ul').css({"width": maxWidth+"px"}); 	
	jQuery('#useful_links .slides-wrapper').serialScroll({
		items: 'li',
		prev: '#useful_links .slide_previous',
		next: '#useful_links .slide_next'
	});
	
});
var keyPartnersScrollerTimeout;

function keyPartnersScrollerPause(){
	keyPartnersScrollerTimeout = clearTimeout(keyPartnersScrollerTimeout);
}

function keyPartnersScrollerPrev(){
	var newleft = jQuery('.key-partners-list li.active:first').prev();
	var newright = jQuery('.key-partners-list li.active:first').prev().prev();

 	if (jQuery(newleft).attr('class') == undefined) {
		if (jQuery('.key-partners-list li').length % 2){
			newleft = jQuery('.key-partners-list li:last');
			newright = jQuery('.key-partners-list li:last').next();//empty since there are odd numbers of links
		}else{
			newleft = jQuery('.key-partners-list li:last').prev();
			newright = jQuery('.key-partners-list li:last');
		}
	}
	
	keyPartnersReplaceWith(newleft, newright);
}

function keyPartnersScrollerNext(){
	var newleft = jQuery('.key-partners-list li.active:last').next();
	var newright = jQuery('.key-partners-list li.active:last').next().next();

	if (jQuery(newleft).attr('class') == undefined) {
		newleft = jQuery('.key-partners-list li:first');
		newright = jQuery('.key-partners-list li:first').next();
	}
	
	keyPartnersReplaceWith(newleft, newright);
}

function keyPartnersScrollerRun(){
	keyPartnersScrollerTimeout = clearTimeout(keyPartnersScrollerTimeout);
	keyPartnersScrollerTimeout = setTimeout("keyPartnersScrollerNext();", 5000);
}

function keyPartnersReplaceWith(newleft, newright){
	jQuery('.key-partners-list li.active').fadeOut("slow", function(){
		keyPartnersDoFadeIn(newleft, newright);
	});
}

function keyPartnersDoFadeIn(newleft, newright){
	jQuery('.key-partners-list li.active').attr('class', 'inactive');
	jQuery(newleft).attr('class', 'active');
	jQuery(newright).attr('class', 'active');
	jQuery('.key-partners-list li.active').fadeIn('fast', keyPartnersScrollerRun);
	
}
function recordGAEvent(){
	try{
		mainTracker._trackEvent('Homepage Mainstage', 'click', $(this).html());
		account23Tracker._trackEvent('Homepage Mainstage', 'click', $(this).html());
	}catch(err){
	}
}


