function msg(texto){
	
	var texto;	
	alert(texto);		
}

function redireciona(pagina){

	var pagina;
	window.location = pagina;	
}

function popup(pagina, nome_pagina, largura, altura){
	
	var pagina;
	var windowName = nome_pagina;
	var windowFeatures = 'width='+largura+',height='+altura+',top=30,left=30,resizable=no,scrollbars=no,toolbar=no,location=no,menubar=no,status=no'; 
	windowForm = window.open(pagina, windowName, windowFeatures);
}

function popup2(pagina, nome_pagina, largura, altura){
	
	var pagina;
	var windowName = nome_pagina;
	var windowFeatures = 'width='+largura+',height='+altura+',top=30,left=30,resizable=no,scrollbars=yes,toolbar=no,location=no,menubar=no,status=no'; 
	windowForm = window.open(pagina, windowName, windowFeatures);
}


function fechaJanela(){
	
	window.close();	
}


function setClose(key, val)
{
	window.opener.setFunc(key, val);
	window.close();
}

function atua()
{
	return confirm('Deseja Excluir?');
} 

//esconde e depois mostra o elemento	
function mostraEsconde(id) {
	var element = document.getElementById(id);
		
		
	if (element.style.display == 'none'){
		element.style.display = '';
	} else {
		element.style.display = 'none';
	}
		
}	

function enableCamp(id, tipo)
{
	if (tipo == "enable") {
		var obj = document.getElementById(id);
		obj.disabled = 0; /* deixa o campo habilitado para edicao */
	}
	if (tipo == "disable") {
		var obj = document.getElementById(id);
		obj.disabled = 1; /* deixa o campo desabilitado para edicao */
		obj.value = ""; /*deixa o campo vazio */
	}
		
}


function validaForm(id,tipo,campo,obrigatorio){

	
    var regINT = /^[1-9]\d*$/; //expressão para validar numeros inteiros não iniciados com zero
	var regINTFULL = /^\d*$/; //expressão para validar numeros inteiros quaisquer
	var regDATA = /^((0?[1-9]|[12]\d)\/(0?[1-9]|1[0-2])|30\/(0?[13-9]|1[0-2])|31\/(0?[13578]|1[02]))\/(19|20)?\d{2}$/;
	var regDATA_ = /^((0?[1-9]|[12]\d)\-(0?[1-9]|1[0-2])|30\-(0?[13-9]|1[0-2])|31\-(0?[13578]|1[02]))\-(19|20)?\d{2}$/;
	var regEMAIL = /^[\w!#$%&'*+\/=?^`{|}~-]+(\.[\w!#$%&'*+\/=?^`{|}~-]+)*@(([\w-]+\.)+[A-Za-z]{2,6}|\[\d{1,3}(\.\d{1,3}){3}\])$/;
	var regMOEDA = /^\d{1,3}(\.\d{3})*\,\d{2}$/;
	var regMOEDASIMP = /^\d*\,\d{2}$/;
	var regETIQUETA = /^[1-9]\d*(\,\d+)*$/; //expressão para validar consultas separadas por vírgula;
	var regALFA = /^[A-Z]|[a-z]([A-Z]|[a-z])*$/;
	var regALFANUM = /^([A-Z]|[a-z]|[0-9])([A-Z]|[a-z]|[0-9])*\.?([A-Z]|[a-z]|[0-9])([A-Z]|[a-z]|[0-9])*$/; //Valores alfanumérias aceitando separação com no máximo um ponto.
	
	//var d = document.cadastro;
	
	var obj = document.getElementById(id);
	var valor = obj.getAttributeNode('name').value;
	
	//alert (obj); 
	
	//verificar se está preenchido
	
	
	if ((obj.value == "")&&(obrigatorio==1)){
		alert ("O campo " + campo + " deve ser preenchido!");
		obj.focus();
		return false;
	} 

	
	if ((tipo == "INTEIRO")&&(obj.value != "")) {
		//validar dados numéricos
		if (!regINT.test(obj.value)){
			alert ("O campo "+ campo +" deve conter apenas numeros inteiros não iniciados por ZERO!");
			obj.focus();
			return false;
		}
	} else
	
	if ((tipo == "COMBO")&&(obj.value != "")) {
		//validar dados numéricos
		if (!regINT.test(obj.value)){
			alert ("O campo "+ campo +" deve ser selecionado!");
			obj.focus();
			return false;
		}
	} else	
	
	if ((tipo == "INTEIROFULL")&&(obj.value != "")) {
		//validar dados numéricos
		if (!regINTFULL.test(obj.value)){
			alert ("O campo "+ campo +" deve conter apenas numeros inteiros!");
			obj.focus();
			return false;
		}
	} else	
	
	if ((tipo == "DATA")&&(obj.value != "")) {
		//validar data
		if (!regDATA.test(obj.value)){
			alert("Formato de data invalido! dd/mm/aaaa");
			obj.focus();
			return false;
			}
	} else
	
	if ((tipo == "DATA-")&&(obj.value != "")) {
		//validar data
		if (!regDATA_.test(obj.value)){
			alert("Formato de data invalido! dd-mm-aaaa");
			obj.focus();
			return false;
			}
	} else	
	
	if ((tipo == "EMAIL")&&(obj.value != "")){
		//validar email(verificao de endereco eletrônico)
		if (!regEMAIL.test(obj.value)){
			alert("Formato de e-mail inválido!");
			obj.focus();
			return false;
		}
	} else
	
	if ((tipo == "MOEDA")&&(obj.value != "")){
		//validar valor monetário
		if (!regMOEDA.test(obj.value)){
			alert("Formato de moeda inválido!");
			obj.focus();
			return false;
		}
	} else
	
	if ((tipo == "MOEDASIMP")&&(obj.value != "")){
		//validar valor monetário
		if (!regMOEDASIMP.test(obj.value)){
			alert("Formato de moeda inválido! XXXXXX,XX");
			obj.focus();
			return false;
		}
	} else	
	
	if ((tipo == "ETIQUETA")&&(obj.value != "")){
		//validar valor monetário
		if (!regETIQUETA.test(obj.value)){
			alert("o Formato deve ser de valores inteiros não iniciados por Zero e separados por vírgula!");
			obj.focus();
			return false;
		}
	}	else
	
	if ((tipo == "ALFA")&&(obj.value != "")){
		//validar valor monetário
		if (!regALFA.test(obj.value)){
			alert("Esse campo só aceita carateres do alfabeto sem espaços!");
			obj.focus();
			return false;
		}
	}	else
	
	if ((tipo == "ALFANUM")&&(obj.value != "")){
		//validar valor monetário
		if (!regALFANUM.test(obj.value)){
			alert("Esse campo só aceita valores alfanuméricos sem espaços ou separados por um ponto(no máximo um)!");
			obj.focus();
			return false;
		}
	}
	return true;
}

function criaMascara(_RefObjeto, _Modelo){

var valorAtual = _RefObjeto.value;
var valorNumerico = '';
var nIndexModelo = 0;
var nIndexString = 0;
var valorFinal = '';
var adicionarValor = true;
 

// limpa a string valor atual para verificar
// se todos os caracteres são números
for (i=0;i<_Modelo.length;i++){
  if (_Modelo.substr(i,1) != '#'){
    valorAtual = valorAtual.replace(_Modelo.substr(i,1),'');
}}
 
// verifica se todos os caracteres são números
for (i=0;i<valorAtual.length;i++){
  if (!isNaN(parseFloat(valorAtual.substr(i,1)))){
    valorNumerico = valorNumerico + valorAtual.substr(i,1);
}}
 
// aplica a máscara ao campo informado usando
// o modelo de máscara informado no script
for (i=0;i<_Modelo.length;i++){
 
  if (_Modelo.substr(i,1) == '#'){
    if (valorNumerico.substr(nIndexModelo,1) != ''){
      valorFinal = valorFinal + valorNumerico.substr(nIndexModelo,1);
      nIndexModelo++;nIndexString++;
    }
      else {
        adicionarValor = false;
  }}
 
    else {
      if (adicionarValor && valorNumerico.substr(nIndexModelo,1) != ''){
      valorFinal = valorFinal + _Modelo.substr(nIndexString,1)
      nIndexString++;
    }}
}
 
_RefObjeto.value = valorFinal
 
}
