// JavaScript Document



 function goToPage(url) {
  if (url != "") {
  /* window.navigate(url); /* IE working , NOT in FF , IN FF code 
   window.location.href('url')  but not in IE */
   
   window.location.href=url ;
 		  } 
   }
   
   
   // JavaScript Document

function formValidator(){
	
	var textfield = document.getElementById('textfield');
	var email = document.getElementById('email');
	var score=document.getElementById('score');
	var payment=document.getElementById('payment');
	var trade=document.getElementById('trade');
	var make=document.getElementById('make');
	var model=document.getElementById('model');
	var year=document.getElementById('year');
	var miles=document.getElementById('miles');
	


	
	// Check each input in the order that it appears in the form!
	if(isAlphabet(textfield, "Please enter  your name, This May be empty")){
		if(emailValidator(email, "Please enter a valid email address")){
			if(isNumeric(score, "Please enter a valid Number")){
				 if(isNumeric(payment, "Please enter a valid Number")){
					if(madeSelection(trade, "Please Choose a Trade")){
						if(isAlphabet(make, "Please enter  Make name, This May be empty")){
							if(isAlphabet(model, "Please enter  Model name, This May be empty")){
				              	if(lengthRestriction(year, 4, 4)){
									if(isNumeric(miles, "Please enter a valid Miles Number")){
								    return true;
									}
								}
							}
						}
					}
				}
			}
		}
	}
	
	
	return false;
	
}


function notEmpty(elem, helperMsg){
	if(elem.value.length == 0){
		alert(helperMsg);
		elem.focus(); // set the focus to this input
		return false;
	}
	return true;
}

function isNumeric(elem, helperMsg){
	var numericExpression = /^[0-9]+$/;
	if(elem.value.match(numericExpression)){
		return true;
	}else{
		alert(helperMsg);
		elem.focus();
		return false;
	}
}

function isAlphabet(elem, helperMsg){
	var alphaExp = /^[a-zA-Z]+$/;
	if(elem.value.match(alphaExp)){
		return true;
	}else{
		alert(helperMsg);
		elem.focus();
		return false;
	}
}

function isAlphanumeric(elem, helperMsg){
	var alphaExp = /^[0-9a-zA-Z]+$/;
	if(elem.value.match(alphaExp)){
		return true;
	}else{
		alert(helperMsg);
		elem.focus();
		return false;
	}
}

function lengthRestriction(elem, min, max){
	var uInput = elem.value;
	if(uInput.length >= min && uInput.length <= max){
		return true;
	}else{
		alert("Please enter between " +min+ " and " +max+ " characters");
		elem.focus();
		return false;
	}
}

function madeSelection(elem, helperMsg){
	if(elem.value == "Please Choose"){
		alert(helperMsg);
		elem.focus();
		return false;
	}else{
		return true;
	}
}

function emailValidator(elem, helperMsg){
	var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
	if(elem.value.match(emailExp)){
		return true;
	}else{
		alert(helperMsg);
		elem.focus();
		return false;
	}
}



