String.prototype.trim = function() { return this.replace(/^\s+|\s+$/g, ''); };
function isValid(input) {
  if (null != input) {
    var v = input.value.trim();
    if (null == v || v.length == 0) {
      return false;
    }
  }
  return true;
}
function validateInput(input, msg) {
  if (null != input) {
    var v = input.value.trim();
    if (null == v || v.length == 0) {
      alert(msg);
      input.focus();
      return false;
    }
  }
  return true;
}
function validateField(input) {
  if (null != input) {
    var v = input.value.trim();
    if (null == v || v.length == 0) {
      	input.focus();
      	return false;
    }
    else {
    	input.value=v;
    }
  }
  return true;
}
function blankOrMaxRestriction(elem,max,message){
  	if(isValid(elem)) {
  	    var uInput = elem.value.trim();
		if(uInput.length <= max){
			return true;
		}else{
		    alert(message);
			elem.focus();
			return false;
		}
	}
	else {
		return true;
	}
}//end func
function maxRestriction(elem,max,message){
		
  	    if(null!=elem) {
  	       	    var uInput = elem.value.trim();
				if(uInput.length <= max){
					return true;
				}else{
				    alert(message);
					elem.focus();
					return false;
				}
		}
		return true;
}//end func
function lengthRestriction(elem, min, max,message){
	if(null!=elem){
	var uInput = elem.value.trim();
	if(uInput.length >= min && uInput.length <= max){
		return true;
	}else{
	    alert(message);
		elem.focus();
		return false;
	}
	}
	return true;
}//end func
//////////////////////////////////////////////
function checkLength(elem, length){
	if(null!=elem){
		var uInput = elem.value.trim();
		if(uInput.length != 8){
			elem.focus();
			return false;
		}
		else{
			elem.value=uInput;
			return true;
		}
	}
	return false;
}//end func
//////////////////////////////////////////////
function checkMinMax(elem, min,max){
	if(null!=elem){
		var uInput = elem.value.trim();
		if(uInput <= min||uInput>max){
			elem.focus();
			return false;
		}
		else{
			elem.value=uInput;
			return true;
		}
	}
	return false;
}//end func
//////////////////////////////////////////////
function isNumeric(elem, helperMsg){
	if(elem!=null) {
	var numericExpression = /^[0-9]+$/;
	if(elem.value.match(numericExpression)){
		return true;
	}else{
		alert(helperMsg);
		elem.focus();
		return false;
	}
	}
	return true;
}//end func
function isNumericField(elem){
	if(elem!=null) {
			var numericExpression = /^[0-9]+$/;
			if(elem.value.match(numericExpression)){
				return true;
			}
			else{
				elem.focus();
				return false;
			}
	}
	return true;
}//end func
function isBlankOrNumeric(elem, helperMsg){
	if(!isValid(elem)){
		return true;
	}
	var numericExpression = /^[0-9]+$/;
	if(elem.value.match(numericExpression)){
		return true;
	}else{
		alert(helperMsg);
		elem.focus();
		return false;
	}
}//end func
///////////
function checkemail(input,message){
	
	if(null != input) {
		var str=input.value
		var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
		if (filter.test(str))
			return true;
		else{
			alert(message);
			input.focus();
			return false
		}
		return true;
	}
	else{
		return true;
	}
}//end false
///////////
function validEmailField(input,doFocus){
	if(null != input) {
		var str=input.value
		var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
		if (filter.test(str))
			return true;
		else{
			if(doFocus==true){
				input.focus();
			}
			return false
		}
		return true;
	}
	else{
		return true;
	}
}//end false
function checkbae(){
	if (document.layers||document.getElementById||document.all)
		return checkemail()
	else
		return true
}
function isValidPhoneNumber(input,message) 
{
     if(input!=null) {
     // Check for correct phone number
     rePhoneNumber = new RegExp(/^\([1-9]\d{2}\)\s?\d{3}\-\d{4}$/);
     //"Phone Number Must Be Entered As: (123) 444-1234
     if (!rePhoneNumber.test(input.value.trim())) {
          alert(message);
          input.foucus();
          return false;
     }
 	 return true;
 	 }
 	 return true;
}
function isBlankOrvalidPhoneNumber(input,message) 
{
     if(!isValid(input)){
		return true;
	 }
     // Check for correct phone number
     rePhoneNumber = new RegExp(/^\([1-9]\d{2}\)\s?\d{3}\-\d{4}$/);
     //"Phone Number Must Be Entered As: (123) 444-1234
     if (!rePhoneNumber.test(input.value.trim())) {
          alert(message);
          input.focus();
          return false;
     }
 	 return true;
}

function checkNumberOnly(e) {
  var charCode = (navigator.appName == "Netscape") ? e.which : e.keyCode;
  if (charCode > 31 && (charCode < 48 || charCode > 57)) {
    return false;
  }
  else {
    return true;
  }
}

function allValidChars(dataValue) {
  var parsed = true;
  var validchars = "abcdefghijklmnopqrstuvwxyz0123456789@.-_";
  for (var i=0; i < dataValue.length; i++) {
    var letter = dataValue.charAt(i).toLowerCase();
    if (validchars.indexOf(letter) != -1)
      continue;
    parsed = false;
    break;
  }
  return parsed;
}


function validDigits(value) {
  var parsed = true;
  var validchars = "0123456789";
  for (var i=0; i < value.length; i++) {
    var letter = value.charAt(i).toLowerCase();
    if (validchars.indexOf(letter) != -1)
      continue;
    parsed = false;
    break;
  }
  return parsed;
}

function isValidEmail(email, required) {
    if (required==undefined) {   // if not specified, assume it's required
        required=true;
    }
    if (email==null) {
        if (required) {
            return false;
        }
        return true;
    }
    if (email.length==0) {  
        if (required) {
            return false;
        }
        return true;
    }
    if (! allValidChars(email)) {  // check to make sure all characters are valid
        return false;
    }
 
    if (email.indexOf("@") < 1) { //  must contain @, and it must not be the first character
        return false;
    } else if (email.lastIndexOf(".") <= email.indexOf("@")) {  // last dot must be after the @
        return false;
    } else if (email.indexOf("@") == email.length) {  // @ must not be the last character
        return false;
    } else if (email.indexOf("..") >=0) { // two periods in a row is not valid
	return false;
    } else if (email.indexOf(".") == email.length) {  // . must not be the last character
	return false;
    }
    return true;
}

function isValidAmount(obj,evt){
	var value = obj.value;
	var charCode = (evt.which) ? evt.which : evt.keyCode
	//alert(charCode);
	if(value.indexOf(".")>-1 && charCode == 46){
		return false;
	}
	if(charCode == 46 || charCode == 9 || charCode == 13){
		return true;
	}
	else {
		if (charCode > 31 && (charCode < 48 || charCode > 57)){  
	    	return false;
	    }else {
		    return true;
	    }
	}   
}
function isNumberKey(evt){
	var charCode = (evt.which) ? evt.which : evt.keyCode
    if(evt.keyCode==8 || evt.keyCode==13)
        {
               return true;
    }
    if (charCode > 31 && (charCode < 48 || charCode > 57))
    {  
    	return false;
    }
    return true;
}

function isAplhaNumberKey(evt){
	var charCode = (evt.which) ? evt.which : evt.keyCode
    key = evt.which;
    keychar = String.fromCharCode(key);
	keychar = keychar.toLowerCase();
    if ((("abcdefghijklmnopqrstuvwxyz0123456789").indexOf(keychar) != -1)) {
   		return true;
   	}
    else {
    	if(evt.keyCode==8 || evt.keyCode==13)
        {
               return true;
        }
    	if (charCode > 31 && (charCode < 48 || charCode > 57))
    	{  
    		return false;
    	}
    	return true;
    }
}

/*
function isTelephoneKey(evt){
	var charCode = (evt.which) ? evt.which : evt.keyCode
    key = evt.which;
    keychar = String.fromCharCode(key);
	keychar = keychar.toLowerCase();
     if ((("abcdefghijklmnopqrstuvwxyz0123456789").indexOf(keychar) != -1)) {
    //if ((("+-0123456789").indexOf(keychar) != -1)) {
   		return true;
   	}
    else {
    	if(evt.keyCode==8 || evt.keyCode==13)
        {
             return true;
        }
    	return false;
    }
}
*/

