﻿function EInteiro(sText){
  var ValidChars = "0123456789"; var IsNumber=true; var Char;
  for (i = 0; i < sText.length && IsNumber == true; i++){ 
    Char = sText.charAt(i); 
    if (ValidChars.indexOf(Char) == -1){IsNumber = false;}
  }
  return IsNumber;
}
function EReal(sText){
  var ValidChars = "0123456789,"; var IsNumber=true; var Char; var EVirg=0;
  for (i = 0; i < sText.length && IsNumber == true; i++){ 
   Char = sText.charAt(i); 
   if (ValidChars.indexOf(Char) == -1){IsNumber = false;} else{ if (Char==','){EVirg=EVirg+1;} }
  }
  if(EVirg > 1){IsNumber = false;} 
  return IsNumber;
}
function EVazio(val){
	if(val==null){return true;}
	for(var i=0;i<val.length;i++) {
		if ((val.charAt(i)!=' ')&&(val.charAt(i)!="\t")&&(val.charAt(i)!="\n")&&(val.charAt(i)!="\r")){return false;}
	}
	return true;
}
function MascaraCampo(quem, mask, evt) { 
/*
ex: input type="text" name="cep" id="cep" onkeypress="return MascaraCampo(this, '???.???.???-??', Event)"> <--formata o campo para cep
O caracter '?' define que só será permitido números  -  O caracter '!' define que é permitido qualquer caracter
*/
  campo = document.getElementById(quem);  
  key = evt.keyCode ? evt.keyCode : (evt.which ? evt.which : evt.charCode);
  if (key == 8) {return true;}
  string = campo.value;  
  i = string.length;
  if (i < mask.length) {
    if(mask.charAt(i) == '?'){ return (key > 47 && key < 58); } 
    else { 
      if(mask.charAt(i)== '!'){ return true; }
     
      for (c = i; c < mask.length; c++) {
        if (mask.charAt(c) != '?' &&  mask.charAt(c) != '!'){
          campo.value = campo.value + mask.charAt(c);
        }
        else{ 
          if (mask.charAt(c) == '!'){ return true; } 
          else { return (key > 47 && key < 58); }
        }  
      }     
    }
   } 
   else 
     return false;
}
	
	
	function EData(dt){
 if(dt.length==10){
	 var temp = new Array();
   temp = dt.split('/');
	 if(temp[0].length==2 && temp[1].length==2 && temp[2].length==4){
		  return(EDataTesta(temp[0],temp[1],temp[2]))
	 }
	 else{
		  temp = dt.split('-');
      if(temp[0].length==2 && temp[1].length==2 && temp[2].length==4){
		     return(EDataTesta(temp[0],temp[1],temp[2]))
	    }
  	  else return false;
	 }
 }
 else{
	 if(dt.length==8){
	   return(EDataTesta(dt.substr(0,2),dt.substr(2,2),dt.substr(4,4)));
   }
   else return false;
 }
}

function EDataTesta(day,month,year){
if(day>31 || day==0 || month==0 || month>12){return false;}
if(month==2){
  if(year % 4 == 0){ if(day >29){ return false;} } 
  if(year % 4 != 0){ if(month==2 && day >28){ return false;} } // fev ano normal
}
if(month==4 || month==6 || month==9 || month==11){if(day==31){return false;}}
return true;
}

	
function EEMail(em){
     var bOk = 0;
     for (i = 0; i < em.length; i++){
             if ( em.charAt(i) == "@" ){
                     i = em.length;
                     bOk = 1;
             }
     }
     if (bOk == 0)        {
             return false;
     }
     return true;
}	
	

// --- TRIMs -------------------------------------------------
function LTrim(str){
	if (str==null){return null;}
	for(var i=0;str.charAt(i)==" ";i++);
	return str.substring(i,str.length);
	}

function RTrim(str){
	if (str==null){return null;}
	for(var i=str.length-1;str.charAt(i)==" ";i--);
	return str.substring(0,i+1);
	}
function Trim(str){return LTrim(RTrim(str));}

function LTrimAll(str) {
	if (str==null){return str;}
	for (var i=0; str.charAt(i)==" " || str.charAt(i)=="\n" || str.charAt(i)=="\t"; i++);
	return str.substring(i,str.length);
	}

function RTrimAll(str) {
	if (str==null){return str;}
	for (var i=str.length-1; str.charAt(i)==" " || str.charAt(i)=="\n" || str.charAt(i)=="\t"; i--);
	return str.substring(0,i+1);
	}
function TrimAll(str) {
	return LTrimAll(RTrimAll(str));
	}






