var emailValidated = false;
var emailValidatedValue = "";

function delayRefresh(url, time){
	timeout = setTimeout('getURL("'+url+'")', time);
}

function getURL(url){
	window.location = url;
}
	

function submitDiscountForm(form){
	emailValidated = echeck($(form).find("#email").attr("value"));
	if(validateDiscountForm(form) && emailValidated){
		return true;
	}else{
		alert("Form Validation Vailed, please fill out all required fields.");
		return false;
	}
}
function submitContactForm(form){
	emailValidated = echeck($(form).find("#email").attr("value"));
	if(validateContactForm(form) && emailValidated){
		//return sendContactEmail(form);
		return true;
	}else{
		alert("Form Validation Vailed");
		return false;
	}
}

/**
 * DHTML email validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */

function echeck(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)

		if(lstr == 0){
			return false
		}
		if (str.indexOf(at)==-1){
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    return false
		 }

 		 return true					
	}

function validateContactForm(form){
	requiredPass = true;
	$(form).children("input[type!=hidden],textarea[type!=hidden]").each(function(){
		if($(this).attr('id') != 'telephone'){
			if($(this).attr("id") == "email"){
				requiredPass = echeck($(this).attr("value"));
			}
			if($(this).attr("value") == ""){
				alert("The required field (" + $(this).attr("id") + ") is empty!");
				requiredPass = false;
			}
		}
	});
	return requiredPass;
 }
function validateDiscountForm(form){
	requiredPass = true;
	$(form).children("input[type!=hidden],textarea[type!=hidden]").each(function(){
		if($(this).attr("id") == "email"){
			requiredPass = echeck($(this).attr("value"));
		}
		if($(this).attr("value") == "" && $(this).attr("id") == "email" || $(this).attr("id") == "name" || $(this).attr("id") == "recaptcha_challenge_field"){
			alert("The required field (" + $(this).attr("id") + ") is empty!");
			requiredPass = false;
		}
	});
	return requiredPass;
 }


function liveCheckEmail(email){
	//skip validation if it's null or same value as previous validation
	if($(email).attr("value") == "" || (emailValidated && emailValidatedValue == $(email).attr("value"))){
		return false;
	}

	$("#emailValidationFeedback").empty();
	var good = echeck($(email).attr("value"));
	if(!good){
		$("#emailValidationFeedback").css("display","block");
		$("#emailValidationFeedback").show("slow");
	}

	var feedback = "";
	if(good){
		feedback = "The email address is valid!";
		emailValidated = true;
		//save valid value to compare against further changes
		emailValidatedValue = $(email).attr("value");
		$("#emailValidationFeedback").attr("class", "feedback");
		//$("#emailValidationFeedback").show("slow");

	}else{
		feedback = "Invalid Email Address!";
		emailValidated = false;
		$("#emailValidationFeedback").attr("class", "feedbackError");
	}

		
		//output the feedback and then trigger focus on the bad email field
		$("#emailValidationFeedback").append("<p>"+feedback+"</p>").fadeOut(6000, function(){
			if(!good){
				//focus email
				$(email).trigger("focus");
			}
		});

		return good;

}
