$(document).ready(function(){

	// START OF SEARCH BOX JS
	var defaultsearchtext = "enter product or part number";
	
	var invalue = $("#topbar-right input.textfield").val();	
	if (invalue == "" || invalue == defaultsearchtext) {
		$("#topbar-right input.textfield").addClass("inactive").attr("value",defaultsearchtext);
	}
	
	$("#topbar-right input.inactive").focus(function(){
		$(this).removeClass("inactive").attr("value","");
	});
	
	$("#topbar-right input.textfield").blur(function(){
		var outvalue = $("#topbar-right input.textfield").val();
		if (outvalue == "") {
			$("#topbar-right input.textfield").addClass("inactive").attr("value",defaultsearchtext);
		}
	});
	
	$("#topbar-right form").submit(function(){
		var submitvalue = $("#topbar-right input.textfield").val();
		if (submitvalue == defaultsearchtext) {
			$("#topbar-right input.textfield").attr("value","");
		}
	});
	// END OF SEARCH BOX JS
	
	
	// START OF PRODUCT LIGHTBOX	
	$('.product .photos a').lightBox();
	$('.currentimages table td.thumb a').lightBox();
	$('.currentimages table td.info a').lightBox();
	// END OF PRODUCT LIGHTBOX
	
	
	// START OF CONTACT FORM VALIDATION
	function validateEmail(elementValue){
		var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
		return emailPattern.test(elementValue);
	}
	
	$("form#contact").submit(function(){
		$("div.errors").remove();
		$("form#contact *").removeClass("fielderror");
	
		var arrError=new Array();
		var arrFields=new Array();
		if ($("form#contact input[name='formname']").val() == "") { 
			arrError.push("Please enter your name");
			arrFields.push("formname");
		}
		
		if ($("form#contact input[name='formemail']").val() == "") { 
			arrError.push("Please enter your email address");
			arrFields.push("formemail");
		} else if (validateEmail($("form#contact input[name='formemail']").val()) == 0) {
			arrError.push("Please enter a valid email address");
			arrFields.push("formemail");
		}
		
		if ($("form#contact textarea[name='formmessage']").val() == "") { 
			arrError.push("Please enter a message");
			arrFields.push("formmessage");
		}
		
		if (arrError.length > 0) {
			var errorhtml = '<div class="errors" style="display:none"><ul>';			
			for ( var i=0, len=arrError.length; i<len; ++i ){
				var errorhtml = errorhtml + '<li>' + arrError[i] + '</li>';
				$("form#contact input[name='" + arrFields[i] + "'], form#contact textarea[name='" + arrFields[i] + "']").addClass("fielderror");
			}
			var errorhtml = errorhtml + '</ul></div>';
			
			$("form#contact").before(errorhtml);
			$("div.errors").fadeIn("slow");
			return false;
		}
	});
	// END OF CONTACT FORM VALIDATION	
	
	function isNumber(n) {
		return !isNaN(parseFloat(n)) && isFinite(n);
	}

	// START OF BASKET FORM VALIDATION	
	$("form#formbasket").submit(function(){
	
		$("div.errors").remove();
		$("form#formbasket *").removeClass("fielderror");
	
		var arrError=new Array();
		var arrFields=new Array();
		if (!isNumber($("form#formbasket select[name='shippinglocation']").val())) { 
			arrError.push("Please select your shipping location");
			arrFields.push("shippinglocation");
		}
		
		if (arrError.length > 0) {
			var errorhtml = '<div class="errors" style="display:none"><ul>';			
			for ( var i=0, len=arrError.length; i<len; ++i ){
				var errorhtml = errorhtml + '<li>' + arrError[i] + '</li>';
				$("form#formbasket select[name='" + arrFields[i] + "']").addClass("fielderror");
			}
			var errorhtml = errorhtml + '</ul></div>';
			
			$("form#formbasket").before(errorhtml);
			$("div.errors").fadeIn("slow");
			return false;
		}
	});
	// END OF BASKET FORM VALIDATION

	// START DELVERY CHARGE COLUMN HOVER
	$("table#delivery tr th a").hover(function(){
		var columnToHighlight = $("table#delivery tr th a").index(this) + 3;
		$("table#delivery tr:not('.underrow') td:nth-child(" + columnToHighlight + ")").addClass("columhighlight");	
	}, function(){
		$("table#delivery td").removeClass("columhighlight");	
	});
	
	$("table#delivery tr td a").hover(function(){
		$(this).parent().parent().find('td').addClass("columhighlight");
	}, function(){
		$("table#delivery td").removeClass("columhighlight");	
	});
	// END DELVERY CHARGE COLUMN HOVER

});
