// JavaScript Document
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 isValid(parm,val) {
  if (parm == "") return false;
  for (i=0; i<parm.length; i++) {
    if (val.indexOf(parm.charAt(i),0) == -1) return false;
  }
  return true;
}

// FUNÇÕES DE VALIDAÇÃO
function ValidarExtensao(field, ext) { 
	//fazer a contagem de pontos para invalidar o upload
	if (field.value.indexOf('.' + ext.toLowerCase()) == -1) { 
		if (field.value.indexOf('.' + ext.toUpperCase()) == -1) { 
			return false; 
		}
	} 
	else {
		return true; 
	}
} 

function ValidarData( 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[0]);

    if(arrayLookup[arrayDate[0]] != null) {
      if(intDay <= arrayLookup[arrayDate[0]] && intDay != 0)
        return true; 
    }

    var intYear = parseInt(arrayDate[2]);
    var intMonth = parseInt(arrayDate[1]);
    if( ((intYear % 4 == 0 && intDay <= 29) || (intYear % 4 != 0 && intDay <=28)) && intDay !=0)
      return true; 
  }
  return false; 
}

function ValidarEmail(str){
var testresults;
var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
if (filter.test(str))
testresults=true;
else{
testresults=false;
}
return (testresults);
}

function ValidarPreenchido( strValue ) {
   var strTemp = strValue;
   strTemp = trimAll(strTemp);
   if(strTemp.length > 0){
     return true;
   }
   return false;
}

function  ValidarNumerico( strValue ) {
  var numb = '0123456789.';
  return isValid(strValue,numb);
}

function ValidarHora( strValue, formato) {
	if (ValidarNumerico(strValue) == true) {
		if (formato == "hora") {
			if (parseInt(strValue) > 23) {
				return false;
			}
			else {
				return true;
			}
		}
		else {
			if (parseInt(strValue) > 59) {
				return false;
			}
			else {
				return true;
			}			
		}
	}
	else {
		return false;
	}
}
