/***************************/
//@Author: Adrian "yEnS" Mato Gondelle & Ivan Guardado Castro
//@website: www.yensdesign.com
//@email: yensamg@gmail.com
//@license: Feel free to use it, but keep this credits please!					
/***************************/

$(document).ready(function(){
	//global vars
	var form = $("#customForm");
	var name = $("#name");
	var nameInfo = $("#nameInfo");
	var email = $("#email");
	var emailInfo = $("#emailInfo");
	var adresse = $("#adresse");
	var adresseInfo = $("#adresseInfo");
	var postnr = $("#postnr");
	var postnrInfo = $("#postnrInfo");
	var antall = $("#antall")
	var antallInfo = $("#antallInfo")
	var check = $("#check")
	var checkInfo = $("#checkInfo")
	var vennname = $("#vennname");
	var vennnameInfo = $("#vennnameInfo");
	var vennemail = $("#vennemail");
	var vennemailInfo = $("#vennemailInfo");
	
	
	//On blur
	//name.blur(validateName);
	//email.blur(validateEmail);
	//vennname.blur(validatevennName);
	//vennemail.blur(validatevennEmail);
	//adresse.blur(validateAdresse);
	//postnr.blur(validatePostnr);
	//antall.blur(validateAntall);
	//On mouseevent
	//check.mouseup(validateCheck);
	//check.mousedown(validateCheck);
	//check.click(validateCheck);
	//On key press
//	antall.keyup(validateAntall);
//	postnr.keyup(validatePostnr);
//	postnr.keyup(validateCheck);
//	name.keyup(validateName);
//	vennname.keyup(validatevennName);
//	adresse.keyup(validateAdresse);
//	adresse.keyup(validateCheck);
//	email.keyup(validateEmail);
//	vennemail.keyup(validatevennEmail);
	
	//On Submitting
	form.submit(function(){
		if(validateAntall() & validateName() & validateEmail() & validateAdresse() & validatePostnr() & validateCheck())
			return true
		else
			return true;
	});
	
	//validation functions
	function validateEmail(){
		//testing regular expression
		var a = $("#email").val();
		var filter = /^[a-zA-Z0-9]+[a-zA-Z0-9_.-]+@[a-zA-Z0-9]+[a-zA-Z0-9.-]+.[a-z]{2,4}$/;
		//if it's valid email
		if(filter.test(a)){
			email.removeClass("error");
			emailInfo.text("Bekreftelse sendes til " + a);
			emailInfo.removeClass("error");
			return true;
		//if it's NOT valid
		}
		else{
			email.addClass("error");
			emailInfo.text("Denne eposten er er ugyldig");
			emailInfo.addClass("error");
			return true;
		}
	}
		function validatevennEmail(){
		//testing regular expression
		var a = $("#vennemail").val();
		var filter = /^[a-zA-Z0-9]+[a-zA-Z0-9_.-]+@[a-zA-Z0-9]+[a-zA-Z0-9.-]+.[a-z]{2,4}$/;
		//if it's valid email
		if(filter.test(a)){
			vennemail.removeClass("error");
			vennemailInfo.text("Tips blir sendt til " + a);
			vennemailInfo.removeClass("error");
			return true;
		//if it's NOT valid
		}
		else{
			vennemail.addClass("error");
			vennemailInfo.text("Denne eposten er er ugyldig");
			vennemailInfo.addClass("error");
			return true;
		}
	}
		function validateCheck(){
		//testing regular expression
		var a = $("#check").val();
		var b = $("#name").val();
		var c = $("#antall").val();
		//if it's valid email
		if(a =="on"){
			check.removeClass("error");
			checkInfo.text("Jeg, " + b + " bestiller" + c + " eks. av Eurekaformelen");
			checkInfo.removeClass("error");
			return true;
		//if it's NOT valid
		}
		else{
			checkInfo.text(b + " bekreft at du du ønsker " + c + " eks. av Eurekaformelen");
			return true;
		}
	}
	function validateAdresse(){
		//testing regular expression
		var a = $("#adresse").val();
		var b = $("#postnr").val();
		var filter = /^[a-zA-Z0-9 .øæåØÆÅ]{4,40}$/;
		//if it's valid adresse
		if(filter.test(a)){
			adresse.removeClass("error");
			adresseInfo.text("Vi sender pakken til: " + a + ", " + b);
			adresseInfo.removeClass("error");
			return true;
		}
		//if it's NOT valid
		else{
			adresse.addClass("error");
			adresseInfo.text("Denne adressen innholder ugyldige tegn eller er for kort");
			adresseInfo.addClass("error");
			return true;
		}
	}
		function validatePostnr(){
		//testing regular expression
		var a = $("#postnr").val();
		var b = $("#adresse").val();
		var filter = /^[0-9999]{4,4}$/;
		//if it's valid postnr
		if(filter.test(a)){
			postnr.removeClass("error");
			postnrInfo.text(" ");
			adresseInfo.text("Vi sender pakken til: " + b + ", " + a);
			postnrInfo.removeClass("error");
			return true;
		}
		//if it's NOT valid
		else{
			postnr.addClass("error");
			postnrInfo.text("Kun postummer 4 siffer");
			postnrInfo.addClass("error");
			return true;
		}
	}
	function validateAntall(){
		//testing regular expression
		var a = $("#antall").val();
		var ant = parseInt(a);
		var pris = 250;
		if(ant > 10){
		pris = 200;
		}
		else{
		pris = 250;
		}
		var total = pris * ant;
		var filter = /^[0-9999]{1,3}$/;
		//if it's valid postnr
		if(filter.test(a)){
		//if the number is below 10
			if(ant < 10){
				antall.removeClass("error");
				antallInfo.removeClass("error");
				antallInfo.text("Pris: " + total + " kr  (" + ant + " bøker à kr " + pris + ") ");
				return true;
			}
		//if it's NOT valid	and the number is abowe 10
			if(ant > 10){
				antall.addClass("error");
				antallInfo.text("Ved store ordre kontakt forlaget: alexander@pantagruel.no");
				antallInfo.addClass("error");
				return true;
			}
		 }
		//if it's NOT valid
		else{
			antall.addClass("error");
			antallInfo.text("Vennligs skriv inn et gyldig antall bøker");
			antallInfo.addClass("error");
			return true;
		}
	}
	function validateName(){
			//testing regular expression
		var a = $("#name").val();
		var filter = /^[a-zA-ZøæåØÆÅ ]+ [a-zA-ZøæåØÆÅ ]{3,20}$/;
		//if it's valid email
		if(!filter.test(a)){
			name.addClass("error");
			nameInfo.text("Vennligst skriv inn fullt navn");
			nameInfo.addClass("error");
			return true;
		}
		//if it's NOT valid
		if(name.val().length < 4){
			name.addClass("error");
			nameInfo.text("Vennligst skriv inn fullt navn");
			nameInfo.addClass("error");
			return true;
		}
		//if it's valid
		else{
			name.removeClass("error");
			nameInfo.text("Takk for at du fylte inn navnet ditt " + a);
			nameInfo.removeClass("error");
			return true;
		}
	}
	function validatevennName(){
			//testing regular expression
		var a = $("#vennname").val();
		var filter = /^[a-zA-ZøæåØÆÅ ]+ [a-zA-ZøæåØÆÅ ]{3,20}$/;
		//if it's valid email
		if(!filter.test(a)){
			vennname.addClass("error");
			vennnameInfo.text("Vennligst skriv inn fullt navn");
			vennnameInfo.addClass("error");
			return true;
		}
		//if it's NOT valid
		if(vennname.val().length < 4){
			vennname.addClass("error");
			vennnameInfo.text("Vennligst skriv inn fullt navn");
			vennnameInfo.addClass("error");
			return true;
		}
		//if it's valid
		else{
			vennname.removeClass("error");
			vennnameInfo.text("Takk for at du fylte inn navnet ditt " + a);
			vennnameInfo.removeClass("error");
			return true;
		}
	}
});
