
function popUp(href, width, height, name, scroll) {
    var top = (screen.height - height) / 2;
    var left = (screen.width - width) / 2;
    window.open(href, name, 'scrollbars=' + scroll + ',status=0,menubar=0,resize=0,width=' + width + ',height=' + height + ',top=' + top + ',left=' + left)
}

/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Valida os campos que contenham id no formulário, o title deve conter no nome
que se quer retornar no alerta.
Essa funcao só valida
campos que não necessitem de indice (radio, milti select e etc...)
para estes campos, utilizar validação tradicional.
Alvaro Riz de Barros - alvaroriz@hotmail.com - 19-03-2004
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
*/
function validaFormAuto(form)
{
   for (i=0;i<form.length;i++)
   {
      if (form[i].value == "")
      {
         if (form[i].title.length > 0)
         {
            var nome = form[i].name.substring(1,form[i].name.length);
            var ident = form[i].title;
            alert("O campo [" + ident + "] é necessário.");
			form[i].focus();
         return false;
         }
      }
   }
return true;
}


/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Valida E-mail utilizando expressao regular
Alvaro Riz de Barros - alvaroriz@hotmail.com - 19-03-2004
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
*/
function validacaoEmail(emailad){
    var exclude=/[^@\-\.\w]|^[_@\.\-]|[\._\-]{2}|[@\.]{2}|(@)[^@]*\1/;
    var check=/@[\w\-]+\./;
    var checkend=/\.[a-zA-Z]{2,3}$/;
    if(((emailad.search(exclude) != -1)||(emailad.search(check)) == -1)||(emailad.search(checkend) == -1)){
        return false;
    }
    else {
        return true;
    }
}

/*
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Abre PopUp
Alvaro Riz de Barros - alvaroriz@gmail.com - 20-12-2006
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
*/
function abrePop(theURL,winName,features){
    window.open(theURL,winName,features)
}


/*----------------------------------------------------------------------------
Valida Caracteres
tipo = 1:Somente Numeros
tipo = 2:Somente Letras
tipo = 3:Somente Números e Letras
-----------------------------------------------------------------------------*/
function validaCaracteres(e){
    var tecla=(window.event)?event.keyCode:e.which;
    
//--(tecla >= 97 && tecla <= 122)
    
    
    if((tecla > 47 && tecla < 58)) 
        return true;
    else{
    
    if (tecla != 8) return false;
    else return true;
    
    }
}




/*-----------------------------------------------------------------------------------*/

function validaCpf(s)
{
	var i;
	var c;
	var achou; 
	x = 0;
	soma = 0;
	dig1 = 0;
	dig2 = 0;
	texto = "";
	umcpf1="";
	numcpf = "";

	for (i = 0; i < s.length; i++) {
		c = s.substring(i,i+1);
		if (isdigit(c))
			numcpf = numcpf + c;
	}

	if (numcpf.length != 11) {
		return false;
	}

	len = numcpf.length; x = len -1;
	for (var i=0; i <= len - 3; i++) {
		y = numcpf.substring(i,i+1);
		soma = soma + ( y * x);
		x = x - 1;
		texto = texto + y;
	}

	dig1 = 11 - (soma % 11);
	if (dig1 == 10) dig1=0 ;
	if (dig1 == 11) dig1=0 ;
	numcpf1 = numcpf.substring(0,len - 2) + dig1 ;
	x = 11; soma=0;

	for (var i=0; i <= len - 2; i++) {
		soma = soma + (numcpf1.substring(i,i+1) * x);
		x = x - 1;
	}

	dig2= 11 - (soma % 11);
	if (dig2 == 10) dig2=0;
	if (dig2 == 11) dig2=0;
	if ((dig1 + "" + dig2) == numcpf.substring(len,len-2)) {
		return true;
	}
return false;
}


/*----------------------------------------------------------------------------------------*/
// verifica o preenchimento do campo
function validaCampo(campo, valida) {
	campo.value = trim(campo.value);
	if (!campo.disabled) {
	  if (campo.type == 'text' || campo.type == 'password'){
	    if (campo.value == ''){
	      alert('Informe ' + campo.title+ '.'); 
	      campo.focus();
	      campo.select();      
	      return true;
	    }
	  }
	  else if (campo.type == 'textarea'){
	    if (campo.value == ''){
	      alert('Informe '+campo.title+ '.'); 
	      campo.focus();
	      campo.select();      
	      return true;
	    }
	  }
	  else if (campo.type == 'select-one'){
	    if (campo.options.length > 1) {
	      if (campo.value == '' || campo.value == '-1' || trim(campo.value) == '-'){
	        alert('Informe '+campo.title+ '.');
	        campo.focus();
	        return true;
	      }
	    }
	    else{
	      if (valida == 'S'){
	        if (campo.value == '' || campo.value == '-1' || trim(campo.value) == '-'){
	          alert('Informe '+campo.title+ '.');
	          //campo.focus();
	          return true;
	        }
	      }
	    }
	  }
	}  
    
    return false;
}


function fnEvnEntradaLetraNumeroPonto(){
	var peCharEntrada = String.fromCharCode(event.keyCode);
	var locStrExpression	= /[^wãàáâäèéêëìíîïõòóôöùúûüçÃÀÁÂÄÈÉÊËÌÍÎÏÖÒÓÔÙÚÛÜÇabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ .,0123456789]/i;	
	var locRetorno			= peCharEntrada.match(locStrExpression);

	if (locRetorno == null) {
		return true;
	}
	else {
		event.keyCode = 0;
		return false;
	}
}

function trim(s) {
	if (s != null && s.length > 0) {
		return ltrim(rtrim(s));
	} else {
		return "";
	}
}

function trim(TRIM_VALUE, caracter){
	if(TRIM_VALUE != null && TRIM_VALUE.length < 1){
		return"";
	}

	TRIM_VALUE = rtrim(TRIM_VALUE);
	TRIM_VALUE = ltrim(TRIM_VALUE);

	return TRIM_VALUE;
} //End Function

function rtrim(VALUE){
	var w_space = String.fromCharCode(32);
	var v_length = VALUE.length;
	var strTemp = "";
	if(v_length < 0){
		return"";
	}
	var iTemp = v_length -1;
	
	while(iTemp > -1) {
		if(VALUE.charAt(iTemp) == w_space){
		} else {
			strTemp = VALUE.substring(0,iTemp +1);
			break;
		}
		iTemp = iTemp-1;
	} //End While

	return strTemp;

} //End Function

function ltrim(VALUE){
	var w_space = String.fromCharCode(32);
	if(v_length < 1){
		return"";
	}

	var v_length = VALUE.length;
	var strTemp = "";
	var iTemp = 0;
	
	while(iTemp < v_length){
		if(VALUE.charAt(iTemp) == w_space){
		} else {
			strTemp = VALUE.substring(iTemp,v_length);
			break;
		}
		iTemp = iTemp + 1;
	} //End While

	return strTemp;
} //End Function


function ispunct(c)
{
 if ((c == '.') || (c == ',') || (c == '-') || (c == '+') || 
     (c == '@') || (c == '_') || (c == '"') ||
	 (c == '$') || (c == '#') || (c == '!') ||
	 (c == '%') || (c == '&') || (c == '*') || (c == '(') ||
	 (c == ')') || (c == '=') || (c == '{') || (c == '}') ||
	 (c == '[') || (c == ']') || (c == '/') || (c == '\\') ||
	 (c == ':') || (c == ';') || (c == '>') || (c == '<') || 
	 (escape(c) == '%20') )
 	 return true;
 else
    return false;
}

function isalpha(c)
{
 if (((c >= 'a') && (c <= 'z')) ||
     ((c >= 'A') && (c <= 'Z')))
 	 return true;
 else  
 	 return false;
}

function isdigit(c)
{
 if ((c >= '0') && (c <= '9'))
 	 return true;
 else  
 	 return false;
}


// Verifica se o cep foi preenchido corretamente
function validaCampoCep(campo) {
    if (tiraMaskNumero(campo.value).length != 8){
	  var msg = campo.title == '' ? 'Campo' : campo.title;
      alert(msg + ' inválido.'); 
	  campo.value = '';
      campo.focus();
      campo.select();
      return false;      
    }
  return true;
}

// tira a mascara de um numero
function tiraMaskNumero(str){
	 tamanho = str.length;
	 s = "";
	 l = "";
  	 for (var i = 0; i < tamanho; i++) {
		s = str.substring(i, i+1);
		if (!isNaN(s)){
		   l += s;
		} 
	}
	return l;
}

/*----------------------------------------------------------------------------
Formatação para qualquer mascara
-----------------------------------------------------------------------------*/
function formatarMarcaraGenerica(src, mask){
  var i = src.value.length;
  var saida = mask.substring(0,1);
  var texto = mask.substring(i)
if (texto.substring(0,1) != saida)
  {
    src.value += texto.substring(0,1);
  }
}


function fnValidaNumero(){
	var peCharEntrada = String.fromCharCode(event.keyCode);
	var locStrExpression	= /[^0-9]/i;	
	var locRetorno			= peCharEntrada.match(locStrExpression);

	if (locRetorno == null) {
		return true;
	}
	else {
		event.keyCode = 0;
		return false;
	}
}



//Formata valor financeiro
//onKeyPress="FormataValor(this.id, 10, event)"
function FormataValor(id,tammax,teclapres) {
    
        if(window.event) { // Internet Explorer
         var tecla = teclapres.keyCode; }
        else if(teclapres.which) { // Nestcape / firefox
         var tecla = teclapres.which;
        }
    

vr = document.getElementById(id).value;
vr = vr.toString().replace( "/", "" );
vr = vr.toString().replace( "/", "" );
vr = vr.toString().replace( ",", "" );
vr = vr.toString().replace( ".", "" );
vr = vr.toString().replace( ".", "" );
vr = vr.toString().replace( ".", "" );
vr = vr.toString().replace( ".", "" );
tam = vr.length;

if (tam < tammax && tecla != 8){ tam = vr.length + 1; }

if (tecla == 8 ){ tam = tam - 1; }

if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){
if ( tam <= 2 ){
document.getElementById(id).value = vr; }
if ( (tam > 2) && (tam <= 5) ){
document.getElementById(id).value = vr.substr( 0, tam - 2 ) + ',' + vr.substr( tam - 2, tam ); }
if ( (tam >= 6) && (tam <= 8) ){
document.getElementById(id).value = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ); }
if ( (tam >= 9) && (tam <= 11) ){
document.getElementById(id).value = vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ); }
if ( (tam >= 12) && (tam <= 14) ){
document.getElementById(id).value = vr.substr( 0, tam - 11 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ); }
if ( (tam >= 15) && (tam <= 17) ){
document.getElementById(id).value = vr.substr( 0, tam - 14 ) + '.' + vr.substr( tam - 14, 3 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam );}
}
}