$(document).ready(function(){
	
	//Models drop-down
	$("#new-vehicle-models h3").click(function(){
		if(!$(this).attr('class')) {
			$(this).next("ul").slideDown();
			$(this).attr('class','active');
		}
		else {
			$(this).next("ul").slideUp();
			$(this).attr('class','');
		}
		Cufon.replace("#new-vehicle-models h3");
	});
	
	
	//Homepage Search tabs
	$('#home-search h2').click(function(){
		$('#home-search h2').removeClass('active');
		$(this).addClass('active');
		Cufon.replace("#home-search h2");
		$('#home-search-cars, #home-search-budget').hide();
		thisDiv = $(this).attr('id');
		thisDiv = '#' + thisDiv.replace('-link', '');
		$(thisDiv).show();
	});
	
	//Hide/show div depending on url (new vehicles page)
	var URL = unescape(window.document.location);
	if (URL.indexOf("#") > -1) {
		var splitUrl = URL.split("#");
		var visDiv = splitUrl[1];
		toBeHidden = hiddenDivs(visDiv);
		if(visDiv == 'ford' || visDiv == 'fpv') {
			for(i in toBeHidden) {
				vis("#div-"+toBeHidden[i],true);
			}
			vis("#div-"+visDiv);
			changeh2(visDiv,toBeHidden);
		}
	}
	
	//New Vehicles Landing page
	function hiddenDivs(id) {
		var toBeHidden = Array('ford','fpv');
		for(i in toBeHidden) {
			if(toBeHidden[i] == id) {
				toBeHidden.splice(i,1);
				break;
			}
		}
		return toBeHidden;
	}
	
	$("#h2-mitsubishi").click(function(){
		var id = $(this).attr('id').replace('h2-','');
		toBeHidden = hiddenDivs(id);
		for(i in toBeHidden) {
			vis("#div-"+toBeHidden[i],true);
		}
		vis("#div-"+id);
		$("#h2-mitsubishi").attr('class','inactive');
		$(this).attr('class','active');
		Cufon.replace('#h2-mitsubishi');
	});
	
	$("#h2-mitsubishi").hover(function(){
		$(this).addClass('activestate');
		Cufon.replace('#h2-mitsubishi');
	},function(){
		$(this).removeClass('activestate');
		Cufon.replace('#h2-mitsubishi');
		}
	);
	
	// Search slidedown
	$('#nav-search-button').click(function() {
		$('#nav-search-content').slideToggle(600);
		return false;
	});
	$('#nav-search-regular, #nav-search-budget').click(function() {
		$('#nav-search-regular-content, #nav-search-budget-content').css('display','none');
		$('#' + $(this).attr('id') + '-content').css('display','block');
		$('#nav-search-buttons a').removeClass('active');
		$(this).addClass('active');
		return false;
	});
		
	
	//Show/hide Call to action panels	
	$("#new-vehicle-right #calls-action a").each(function(){
			var linkAttr = $(this).attr("href");
			if (linkAttr.indexOf("#") > -1 && linkAttr.indexOf("#") == 0) {
				$(this).attr("name",linkAttr);
				$(this).removeAttr("href");
			}
	});
	$("#new-vehicle-right #calls-action a").click(function(){
		var href = $(this).attr('name');
		if(href != '#' && !$(this).attr('href')) {
			$("#new-vehicle-right #calls-action a").each(function(){
				var hrefLi = $(this).attr('name');
				$(this).attr('class','');
				vis(hrefLi,true);
			});
			vis('#flashcontent',true);
			vis(href,false);
		$(this).attr('class','active');
	   }
	});
	
	
	//Close button on hidden panels
	$('.close-button').click(function(){
		$('.hidden-panel').css('display','none')
		$('#flashcontent').css('display','block')
	});
	

	//Show/hide New Model Features
	$("#new-vehicle-nav a").each(function(){
		var linkAttr = $(this).attr("href");
		$(this).attr("name",linkAttr);
		$(this).removeAttr("href");
	});
	$("#new-vehicle-nav a").click(function(){
		var href = $(this).attr('name');
		if(href != '#') {
			$("#new-vehicle-nav a").each(function(){
				var hrefLi = $(this).attr('name');
				var thisId = $(this).attr('id');
				if(hrefLi != '#') {
					$(this).attr('id',thisId.replace('-active',''));
					vis(hrefLi,true);
				}
			});
			vis(href);
		$(this).attr('id',$(this).attr('id')+'-active');
		}
	});
	
	
		//Show different colours
	$("#new-colours ul li").live('click',function(){
		if(!$("#new-colours-switch-cache").length) {
			$("#new-colours ul li").removeClass('active')
			$(this).addClass('active')
			$("#desc").html('Model shown: <strong>'+$(this).children('span').html()+'</strong>')
			loadImg($('#new-colours-switch img'),$(this).children('input').val())
		}
	});
	
	// Load first colour on page load
	if($('#new-colours-switch img').length) loadImg($('#new-colours-switch img'),$("#new-colours ul li:first").children('input').val())
	$("#new-colours ul li:first").addClass('active')
	$("#desc").html('Model shown: <strong>'+$("#new-colours ul li:first").children('span').html()+'</strong>')
	
});



function vis(element,hide) {
	if(!hide) var hide = false;
	var change = hide ? 'none' : 'block';
	$(element).css('display',change);
}

 function loadImg(container,imgSrc) {
	container.before("<div id='new-colours-switch-cache'></div>");
	container
		.attr('src', imgSrc)
		.one("load",function(){
			var me = $(this)
			$("#new-colours-switch-cache").fadeOut(function(){
				$(this).remove()
			})
		})
		// In case IE ignores load event, force image to display after 2 secs
		.oneTime(2000,function(){
			if(this.complete || (jQuery.browser.msie && parseInt(jQuery.browser.version) == 6)) 
			$(this).trigger("load");
		})
}
