function MascaraMoeda(objTextBox, SeparadorMilesimo, SeparadorDecimal, e){
    var sep = 0;
    var key = '';
    var i = j = 0;
    var len = len2 = 0;
    var strCheck = '0123456789';
    var aux = aux2 = '';
    var whichCode = (window.Event) ? e.which : e.keyCode;
    if (whichCode == 13) return true; 
    if (whichCode == 0 || whichCode == 8) return true; //Alteracao para funcionar no firefox - Cassiano (16/01/07)
    key = String.fromCharCode(whichCode); // Valor para o código da Chave
    if (strCheck.indexOf(key) == -1) return false; // Chave inválida
    len = objTextBox.value.length;
    for(i = 0; i < len; i++)
        if ((objTextBox.value.charAt(i) != '0') && (objTextBox.value.charAt(i) != SeparadorDecimal)) break;
    aux = '';
    for(; i < len; i++)
        if (strCheck.indexOf(objTextBox.value.charAt(i))!=-1) aux += objTextBox.value.charAt(i);
    aux += key;
    len = aux.length;
    if (len == 0) objTextBox.value = '';
    if (len == 1) objTextBox.value = '0'+ SeparadorDecimal + '0' + aux;
    if (len == 2) objTextBox.value = '0'+ SeparadorDecimal + aux;
    if (len > 2) {
        aux2 = '';
        for (j = 0, i = len - 3; i >= 0; i--) {
            if (j == 3) {
                aux2 += SeparadorMilesimo;
                j = 0;
            }
            aux2 += aux.charAt(i);
            j++;
        }
        objTextBox.value = '';
        len2 = aux2.length;
        for (i = len2 - 1; i >= 0; i--)
        objTextBox.value += aux2.charAt(i);
        objTextBox.value += SeparadorDecimal + aux.substr(len - 2, len);
    }
    return false;
}    

function openSmallWindow(url) {
    window.open(url,"smallWindow","statusbar=on,width=317,height=200,top=250,left=400");
    return false;
}

function openWindow(url,w,h) {
    window.open(url,"smallWindow","statusbar=on,scrollbars=yes,width="+w+",height="+h+",top=250,left=250");
    return false;
}


function addOpt(cidade,codigo){
  var opts = document.frm.cid_codigo.options;
  opts[opts.length] = new Option(cidade,codigo,true,true);
  Atualiza(codigo,0);
}

function addOptBairro(bairro,codigo){
  var opts = document.frm.bai_codigo.options;
  opts[opts.length] = new Option(bairro,codigo,true,true);
}

function addOptProfissao(profissao,codigo){
  var opts = document.frm.pro_codigo.options;
  opts[opts.length] = new Option(profissao,codigo,true,true);
}
function addOptEdificio(nome,codigo){
  var opts = document.frm.edi_codigo.options;
  opts[opts.length] = new Option(nome,codigo,true,true);
}
function addOptFonte(nome,codigo){
  var opts = document.frm.con_fonte.options;
  opts[opts.length] = new Option(nome,codigo,true,true);
}


function trocaOpcao(valor) {
	var objSel = document.frm.cid_codigo
    for (i=0; i < objSel.length; i++){
    qtd = valor.length;
        if (objSel.options[i].text.substring(0, qtd).toUpperCase() == valor.toUpperCase()) {
        objSel.selectedIndex = i;
            break;
        }
    }
}

function validaEmail(valor)
{
	er=/[A-Za-z0-9\._-]+@[A-Za-z-]+\.[A-Za-z-]+/;
	if(!er.test(valor))
	{
		alert("E-mail Invalido!");
		return false;
	}
	else 
		return true;
}


function mascara(obj, mask)
{
	var i,x,max=0;
	var val=obj.value.replace(/[^0-9]/g,''); // tira fora tudo que nao seja numero
	var aux='';

	//Conta  o numero de numeros que a mascara pede 
	for(i=0;i<mask.length;i++)
	{
		if(mask.charAt(i)=='#')
			max++;
	}

	//Quebra o valor se possuir  tamanho maior a mascara 	
	if(val.length>max)
		val=val.substring(0,max);
		
	x=0;
	for(i=0;i<val.length;i++) // Percorre o  valor aplicando a mascara 
	{
		if(x<mask.length)
		{
			//Tudo que nao for # na mascara concatena 
			while(mask.charAt(x)!='#')
			{
				aux+=mask.charAt(x);
				x++;
			}
			x++;
		}
		aux+=val.charAt(i);
	}
	obj.value=aux; //Devolve o valor
}

function validaData(valor, ret)
	{
		mascara(valor,'##/##/####');
		if(valor.value.length==10)
		{
			dt=new Date();
			aux=valor.value.split('/');
			dt.setFullYear(aux[2]*1);
			dt.setMonth((aux[1]*1)-1);
			dt.setDate(aux[0]*1);
			dia=''+dt.getDate();
			if(dia<10)
			{
				dia='0'+dia;
			}
			mes=dt.getMonth()+1;
			if(mes<10)
			{
				mes='0'+mes;
			}
			ano=dt.getFullYear();
			if(valor.value!=dia+'/'+mes+'/'+ano)
			{
				alert('data invalida');
				valor.value=valor.value.substr(0,valor.value.length-1);
				valor.focus();
				if(ret)
					return false;
			}
			else
				return true;
		}
		else if(ret)
		{
			alert('data invalida');
			return false;
		
		}

	}

	
function validaDataSemAno(valor, ret)
	{
		mascara(valor,'##/##');
		if(valor.value.length==5)
		{
			dt=new Date();
			aux=valor.value.split('/');
			dt.setMonth((aux[1]*1)-1);
			dt.setDate(aux[0]*1);
			dia=''+dt.getDate();
			if(dia<10)
			{
				dia='0'+dia;
			}
			mes=dt.getMonth()+1;
			if(mes<10)
			{
				mes='0'+mes;
			}
			if(valor.value!=dia+'/'+mes)
			{
				alert('data invalida');
				valor.value=valor.value.substr(0,valor.value.length-1);
				valor.focus();
				if(ret)
					return false;
			}
			else
				return true;
		}
		else if(ret)
		{
			alert('data invalida');
			return false;
		
		}

	}

