// JavaScript Document
var EMAIL_VALIDATION = 1; 
var STRING_VALIDATION = 2; 
var NUMERIC_VALIDATION = 3 ;
var PASSWORD_VALIDATION = 4 ;

function validate_form(form){
	for(loop=0 ; loop < form.elements.length ; loop++){
		if(form.elements[loop].es_val_type){
			if(!validate_field(form.elements[loop],form)) return false;
		}
	}
	return true;
}


function validate_field(field,form){
	switch(eval(field.es_val_type)){
		case EMAIL_VALIDATION:
			return validate_email(field);
			break;
			
		case STRING_VALIDATION :
			return validate_string(field);
			break;		

		case NUMERIC_VALIDATION:
			return validate_number(field);
			break;	

		case PASSWORD_VALIDATION:
			if(!validate_password(form.password.value,form.password2.value)){ 
				form.password.focus();
				return false;
			}
			break;	
	};
return true;
}

function validate_string(field){
	var value = new String(field.value);
	if(value.length==0 || value == ""){
		alert(field.title);
		field.focus();
		return false;
	}
	return true;
}

function validate_email(field){
	if (field.value.indexOf("@") <= 0 || field.value.indexOf(".") <= 0 ){
		alert("The format of the \"e-mail\" address is incorrect. Please enter in the format 'john@aol.com'");
		field.focus();
		return false;
	}	
	return true;
}


function validate_number(field){
	var value = new Number(field.value);
	if(isNaN(value) || field.value==''){
		alert(field.title);
		field.focus();
		return false;
	}
	return true;	
}


function validate_password(password1, password2){
	if(password1=='' || (password1 != password2)){
		alert('Please enter valid passord matching with verification');
		return false;
	}
	return true;	
}