function validateEmail( strValue) {

var objRegExp  = /(^[a-z]([a-z_\.]*)@([a-z_\.]*)([.][a-z]{3})$)|(^[a-z]([a-z_\.]*)@([a-z_\.]*)((\.[a-z]{3})|(\.[a-z]{2}))*$)/i;
 

  return objRegExp.test(strValue);
}

function validateUSPhone( strValue ) {

  var objRegExp  = /^\([1-9]\d{2}\)\s?\d{3}\-\d{4}$/;
 
  return objRegExp.test(strValue); 
}

function validatePhone( strValue ) {

  var objRegExp  = /(^[ \-\d]*$)/;

  return objRegExp.test(strValue);
}

function  validateNumeric( strValue ) {

  var objRegExp  =  /(^-?\d\d*\.\d*$)|(^-?\d\d*$)|(^-?\.\d\d*$)/; 
 
  return objRegExp.test(strValue);
}

function validatePositiveInteger( strValue ) {

  var objRegExp  = /(^\d*$)/;

  return objRegExp.test(strValue);
}

function validateInteger( strValue ) {

  var objRegExp  = /(^-?\d\d*$)/;
 
  return objRegExp.test(strValue);
}

function validateNotEmpty( strValue ) {
   var strTemp = strValue;
   strTemp = trimAll(strTemp);
   if(strTemp.length > 0){
     return true;
   }  
   return false;
}

function validateUSZip( strValue ) {

var objRegExp  = /(^\d{5}$)|(^\d{5}-\d{4}$)/;
 

  return objRegExp.test(strValue);
}

function validateUSDate( strValue ) {

  var objRegExp = /^\d{1,2}(\-|\/|\.)\d{1,2}\1\d{4}$/
 

  if(!objRegExp.test(strValue))
    return false; 
  else{
    var strSeparator = strValue.substring(2,3) 
    var arrayDate = strValue.split(strSeparator); 

    var arrayLookup = { '01' : 31,'03' : 31, '04' : 30,'05' : 31,'06' : 30,'07' : 31,
                        '08' : 31,'09' : 30,'10' : 31,'11' : 30,'12' : 31}
    var intDay = parseInt(arrayDate[1]); 


    if(arrayLookup[arrayDate[0]] != null) {
      if(intDay <= arrayLookup[arrayDate[0]] && intDay != 0)
        return true;
    }
    

    var intMonth = parseInt(arrayDate[0]);
    if (intMonth == 2) { 
       var intYear = parseInt(arrayDate[2]);
       if( ((intYear % 4 == 0 && intDay <= 29) || (intYear % 4 != 0 && intDay <=28)) && intDay !=0)
          return true; 
       }
  }
  return false;
}

function validateValue( strValue, strMatchPattern ) {

var objRegExp = new RegExp( strMatchPattern);
 

 return objRegExp.test(strValue);
}


function rightTrim( strValue ) {
var objRegExp = /^([\w\W]*)(\b\s*)$/;
 
      if(objRegExp.test(strValue)) {

       strValue = strValue.replace(objRegExp, '$1');
    }
  return strValue;
}


function leftTrim( strValue ) {

var objRegExp = /^(\s*)(\b[\w\W]*)$/;
 
      if(objRegExp.test(strValue)) {

       strValue = strValue.replace(objRegExp, '$2');
    }
  return strValue;
}


function trimAll( strValue ) {
 var objRegExp = /^(\s*)$/;


    if(objRegExp.test(strValue)) {
       strValue = strValue.replace(objRegExp, '');
       if( strValue.length == 0)
          return strValue;
    }
    

   objRegExp = /^(\s*)([\W\w]*)(\b\s*$)/;
   if(objRegExp.test(strValue)) {

       strValue = strValue.replace(objRegExp, '$2');
    }
  return strValue;
}


function removeCurrency( strValue ) {
  var objRegExp = /\(/;
  var strMinus = '';
 

  if(objRegExp.test(strValue)){
    strMinus = '-';
  }
  
  objRegExp = /\)|\(|[,]/g;
  strValue = strValue.replace(objRegExp,'');
  if(strValue.indexOf('$') >= 0){
    strValue = strValue.substring(1, strValue.length);
  }
  return strMinus + strValue;
}


function addCurrency( strValue ) {
  var objRegExp = /-?[0-9]+\.[0-9]{2}$/;
   
    if( objRegExp.test(strValue)) {
      objRegExp.compile('^-');
      strValue = addCommas(strValue);
      if (objRegExp.test(strValue)){
        strValue = '(' + strValue.replace(objRegExp,'') + ')';
      }
      return '$' + strValue;
    }
    else
      return strValue;
}


function removeCommas( strValue ) {
  var objRegExp = /,/g; 
 

  return strValue.replace(objRegExp,'');
}


function addCommas( strValue ) {
  var objRegExp  = new RegExp('(-?[0-9]+)([0-9]{3})'); 


    while(objRegExp.test(strValue)) {
       strValue = strValue.replace(objRegExp, '$1,$2');
    }
  return strValue;
}


function removeCharacters( strValue, strMatchPattern ) {

 var objRegExp =  new RegExp( strMatchPattern, 'gi' );
 
  return strValue.replace(objRegExp,'');
}

 
