/***************************/
//@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 title = $("#title");
	var titleInfo = $("#titleInfo"); 
	
	var email = $("#email");
	var emailInfo = $("#emailInfo"); 
	
	var price = $("#price");
	var priceInfo = $("#priceInfo"); 
	
	var zip = $("#zip");
	var zipInfo = $("#zipInfo");
	 
	var body = $("#body");
	var bodyInfo = $("#bodyInfo"); 
	
	var phone = $("#phone");
	var phoneInfo = $("#phoneInfo"); 
	
	
	//On blur
	//title.blur(validateTitle); 
//	email.blur(validateEmail); 
//	price.blur(validatePrice); 
//	zip.blur(validateZip); 
//	
//	//On key press
//	title.keyup(validateTitle); 
//	price.keyup(validatePrice);
	
	//On Submitting
	form.submit(function(){
		if(validateTitle() & validateEmail() & validatePrice() & validateZip() & validatePhone() & validateBody())
			return true
		else
			return false;
	});
	 
	
		function validateBody(){
		//it's NOT valid
		if(body.val().length < 10){
			body.addClass("error");
			bodyInfo.text("Please enter a valid post");
			bodyInfo.addClass("error");
			return false;
		}
		//it's valid
		else{			
			body.removeClass("error");
			return true;
		}
	}


	function validateZip(){
		//testing regular expression
		var a = $("#zip").val();
		var filter = /^[0-9]{2,5}$/;
		//if it's valid zip
		if(filter.test(a)){
			zip.removeClass("error");
			zipInfo.text("");
			zipInfo.removeClass("error");
			return true;
		}
		//if it's NOT valid
		else{
			zip.addClass("error");
			zipInfo.text("Zip code should only contin 5 digits");
			zipInfo.addClass("error");
			return false;
		}
	}
	
	function validatePrice(){ 
		//if it's valid email
		if(price.val() > 1000){
			price.addClass("error");
			priceInfo.text("Price can't be higher than $1,0000");
			priceInfo.addClass("error");
			return false;
		} else if(price.val().length > 0){
			price.removeClass("error");
			priceInfo.text("example: 1000");
			priceInfo.removeClass("error");
			return true;
		} else{
			price.addClass("error");
			priceInfo.text("Numbers only, example 1000");
			priceInfo.addClass("error");
			return false;
		}
	}
	
	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-zA-Z0-9.-]+.[a-z]{2,4}$/;
		//if it's valid email
		if(filter.test(a)){
			email.removeClass("error");
			emailInfo.text("");
			emailInfo.removeClass("error");
			return true;
		}
		//if it's NOT valid
		else{
			email.addClass("error");
			emailInfo.text("Type a valid e-mail please");
			emailInfo.addClass("error");
			return false;
		}
	}


	function validateTitle(){
		//if it's NOT valid
		if(title.val().length == 0){
			title.addClass("error");
			titleInfo.text("Please enter a title for your ad");
			titleInfo.addClass("error");
			return false;
			}
		else{
			title.removeClass("error");
			titleInfo.text("example: 1999 Honda Accord");
			titleInfo.removeClass("error");
			return true;
		}
	} 


	function validatePhone(){
		//if it's NOT valid
		if(phone.val().length == 0){
			phone.addClass("error");
			phoneInfo.text("Please enter a contact number");
			phoneInfo.addClass("error");
			return false;
			}
		else{
			phone.removeClass("error");
			phoneInfo.text("example: example: xxx-xxx-xxxx");
			phoneInfo.removeClass("error");
			return true;
		}
	} 
});
