/* 

  ==============================
   Acclaim Driving Academy
   Author: 9xb.com
  ==============================
  
*/

$(function ()
	{
		$("a[rel='external']").attr("target", "_blank");
	}
);

$(function ()
	{
		$(".news-article:even").addClass("news-article-alt");
	}
);


$(function ()
	{
		var hi_res_links = $("a.hi-res-link");
		for(var i=0; i<=hi_res_links.length; i++) {
			
			var loc = $("a.hi-res-link:eq(" + i + ")").attr("href");
			
			if(loc) {
				
				var pos = loc.lastIndexOf("/");
				loc = loc.substr(pos + 1);
				var download_link = "download.php?file=" + loc + "&type=press";
				$("a.hi-res-link:eq(" + i + ")").attr("href", download_link);
				
			}
			
		}
	}
);


function validator () 
{	

	var invalid_email = false;
	var show_invalid_email_warning = true;
	var mail_cmsg = "The highlighted email address you provided does not seem to be correct.\n\nWould you like to continue anyway?";
	
	/* required fields */
	var required = document.createElement("span");
	$(required).text("*");
	$(required).addClass("req");
	$(".mand").parent("div").append(required);
	
	/* zebra colouring */
	$("form div.row input[type!='submit'], form div.row select, form div.row textarea").focus(
		function ()
		{
			$(this).parent("div.row").addClass("altrow");
		}
	);
	$("form div.row input[type!='submit'], form div.row select, form div.row textarea").blur(
		function ()
		{
			$(this).parent("div.row").removeClass("altrow");
		}
	);
	
	$("form").submit(function() 
		{
								  
			var fields = $(this).find(".mand");
			var invalid_count = 0;
			var formoutput = $(this).find(".formoutput");
			
			if($(formoutput).css("display") !== "none") {
				if(formoutput.length > 0) $(formoutput).fadeOut(500);
			}
			
			for(i=0; i<fields.length; i++) {
				$(fields[i]).css("border", "1px solid #999");
			}
			
			for(i=0; i<fields.length; i++) {
				
				switch(fields[i].type) {
					case "select-one":
					case "select-multiple":
						if(fields[i].selectedIndex == 0) {
							$(fields[i]).css("border", "1px solid #ff0000");
							invalid_count++;
						}
						break;
					case "text":
					case "textarea":
					case "password":
						if(!fields[i].value) {
							$(fields[i]).css("border", "1px solid #ff0000");
							invalid_count++;
						} else {
							var name = $(fields[i]).attr("name");
							if(name.indexOf("email") >= 0) {
								var emailRegxp = /^([\w]+)(.[\w]+)*@([\w]+)(.[\w]{2,4}){1,2}$/;
								if(emailRegxp.test(fields[i].value) == false) {
									invalid_email = true;
									if(show_invalid_email_warning) {
										$(fields[i]).css("border", "1px solid #ff0000");
									}
								}
							}
						}
						break;
				}
				
			}
			
			if( !invalid_count ) {
				
				if(invalid_email && show_invalid_email_warning) {
					if(!confirm(mail_cmsg)) { 
						return false;
					}
				}
				return true;
				
			} else {
				
				if(formoutput.length > 0) {
					
					$(formoutput).css("font-size", "0.9em");
					$(formoutput).css("color", "#ff0000");
					$(formoutput).css("font-weight", "bold");
					$(formoutput).text("Please ensure the highlighted fields are complete before proceeding.");
					$(formoutput).fadeIn(500);
					
				} else {
					
					alert("Please ensure the highlighted fields are complete before proceeding.");
					
				}
				
				return false;
				
			}
		
		}
	);
	
}

function collectionRotator ()
{
	
	var wait_time = 5000; // miliseconds (1s = 1000ms)
	var fade_time = 1000; // miliseconds (1s = 1000ms)
	var currItem = 0;
	var numItems = $("#collection-image-rotate img").length;
	
	$("#collection-image-rotate img:eq(0)").css("display", "block");
	$("#collection-image-rotate img:gt(0)").css("display", "none");

	window.setInterval(doRotate, wait_time);
	
	function doRotate()
	{

		$("#collection-image-rotate img:eq("+currItem+")").fadeOut(fade_time);
		if(currItem < (numItems-1)) {
			currItem++
		} else {
			currItem = 0;
		}
		$("#collection-image-rotate img:eq("+currItem+")").fadeIn(fade_time);
		
	}
	
}


/* -- jQuery: Document Ready. -- */
$(document).ready(function()
{
	collectionRotator();
	validator();
});




/* -- Window On-Load Manager -- */
var woms = new Array();
function womOn(){
  window.onload = womGo;
}
function womGo(){
  for(var i = 0;i < woms.length;i++)
    eval(woms[i]);
}
function womAdd(func){
  woms[woms.length] = func;
}