// JavaScript Document
function validate(){}//constructor for validate

validate.prototype.isOnlyAlphaNumeric = function(string,blank){
	var chrRegExp;
	if(blank)chrRegExp = /[^a-z\d ]/i;
	else chrRegExp = /[^a-z\d]/i;
	var isValid = !(chrRegExp.test(string));
	
	return isValid;
}

validate.prototype.isOnlyAlphabetic = function(string,blank){
	var chrRegExp;
	if(blank)chrRegExp = /[^a-z ]/i;
	else chrRegExp = /[^a-z]/i;
	var isValid = !(chrRegExp.test(string));
	
	return isValid;
}

validate.prototype.isOnlyNumeric = function(string){
	var chrRegExp = /[^\d]/; // for integers not text /[^\d-]/ for floating point /[^\d\.-]/
	var isValid = !(chrRegExp.test(string));
	
	return isValid;
}

validate.prototype.isValidAge = function(age){
	var isValid =false;
	if(this.isOnlyNumeric(age)){
		isValid = (parseInt(age) >= 0 && parseInt(age) < 140)
	}
	
	return isValid;
}

validate.prototype.isValidPostalCode = function(postalCode){ //   US and UK based zip codes
	var validFormat = /^(\d(5)(-\d(4))?|[a-z]{1,2}[\da-z]{1,2} ?\d[a-z][a-z])$/i;
	var isValid = validformat.test(postalCode);
	
	return isValid;
}

validate.prototype.isValidEmail = function(email){
	var validFormatEmail = /^\w(\.?\w)*@\w(\.?[-\w])*\.([a-z]{3}(\.[a-z]{2})?|[a-z]{2}(\.[a-z]{2})?)$/i
	var isValid = validFormatEmail.test(email);
	
	return isValid;
}

validate.prototype.isValidDate = function(day, month, year){
	var isValid = true;
	var sDate = new Date(day + " " + month + " " + year);
	if(sDate.getDate() != day) {
		isValid = false;
	}
	return isValid;
}
