// OPEN: scripts de image swap  
function MM_findObj(n, d) { //v3.0 
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
// CLOSE: scripts de image swap

//checar se usa em algum lugar
function S(id) {
    if(navigator.appName=='Microsoft Internet Explorer') {
        document.all[id].style.visibility = "visible";
    } else {
        document[id].visibility = "visible";
    }
}

//checar se usa em algum lugar
function H(id) {
    if(navigator.appName=='Microsoft Internet Explorer') {
        document.all[id].style.visibility = "hidden";
    } else {
        document[id].visibility = "hidden";
    }
}

//Valida se o formato da placa esta ok
function isPlaca(field) {

    var placa = field.value;
    var idx = placa.length - 1;
    var myChar = '';
    
    if (placa.length > 0) {
        myChar = placa.charAt(idx);
        if (placa.length <= 3) {
            if (isLetra(myChar) == false) {
                field.value = placa.substring(0,idx);
            }
        } else if (placa.length > 3 && placa.length <= 7) {
            if (isNumero(myChar) == false) {
                field.value = placa.substring(0,idx);
            }
        }
    }
}

function isLetra(pChar){
    if(pChar.length == 0)
        return false;
    
    return ("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".indexOf(pChar)>=0);
}

function isNumero(pNum){
    if(pNum.length == 0)
        return false;
    
    return ("0123456789".indexOf(pNum)>=0);
}

var imagens = new Array( "images/foto_home1.jpg", "images/foto_home2.jpg", "images/foto_home3.jpg", "images/foto_home4.jpg", "images/foto_home5.jpg");
    
    var ident = null;
    
    //ident=window.setTimeout(0);

    function OMO(m,n) {
        if(m==1) {
            ident=window.setTimeout("H('l" + n + "');", 500);
        } else {
            window.clearTimeout(ident);
        }
    }

//checar se usa em algum lugar
function POP(URL,W,H) {
    var NewPop = null;
    NewPop = window.open(URL,'nova','toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=no,left=0,top=0,width='+ W +',height='+ H + '');
    NewPop.focus();
}

//checar se usa em algum lugar
function gone() {
    var selectedurl=document.quick.url.value;
    document.location.href = selectedurl;
}

function goWhere(url) {
    var selectedURL = url;
    document.location.href = selectedURL;
}

function buscaEndereco( cep,        // codigo CEP a ser pesquisado
                        logradouro, // campo de logradouro a ser preenchido
                        bairro,     // campo de bairro a ser preenchido
                        cidade,     // campo de cidade a ser preenchido
                        uf,         // select da uf a ser selecionada
                        ddd ){       // campo de DDD a ser preenchido

    //if( cep.length > 0 && confirm("Deseja buscar dados mais atualizados de endere?o do proponente?")){
    if( cep.length > 0){

        // validando o CEP
        if(cep.length != 8){
            alert("C?digo de CEP inv?lido.");
            return;
        }

        var cep5 = cep.substring(0,5);
        var cep3 = cep.substring(5);

        if(cep5.length != 5 || isNaN(cep5) || cep3.length != 3 || isNaN(cep3)){
            alert("C?digo de CEP inv?lido.");
            return;
        }

        var endereco=
            window.showModalDialog( '../includes/s_aguarde.jsp?bean=corporativo.ConsultaCEPBean&parametro='+cep,'',
                                    'dialogWidth:190px;dialogHeight:50px;help:no;status:no');

        /** setando os valores nos seus determinados campos */        
        try {
            if(logradouro){
                logradouro.value = endereco[0].substring(0,25); // logradouro
            }
            if(bairro){
                bairro.value = endereco[1];     // bairro
            }
            if(cidade){
                cidade.value = endereco[2];     // cidade
            }
            if(uf){
                seleciona(uf,endereco[3]);      // uf
            }
            if(ddd){
                ddd.value = endereco[4];        // DDD
            }
        } catch(e){}
    }
}

function seleciona(combo,valor) { //seleciona o valor da combo.
    for (var i = 0; i<combo.length; i++){
        if(trim(combo[i].value) == trim(valor)){
            combo.selectedIndex = i;
            break;
        }
    }
}
function ltrim(ptexto) {
   var i = 0;

   while (i<ptexto.length && ptexto.charAt(i)== " ") {
      i++;
   }

   return (ptexto.substring(i,ptexto.length));
}

function rtrim(ptexto) {
   var i = ptexto.length-1;

   while (i>0 && ptexto.charAt(i) == " ") {
      i--;
   }

   return (ptexto.substring(0,i+1));
}

function trim(ptexto) {
   return ltrim(rtrim(ptexto));
}

function isNum()
{
    var validChar = "#48;#49;#50;#51;#52;#53;#54;#55;#56;#57;"
    if (validChar.indexOf("#" + String(event.keyCode+ ";")) == -1)
    {
        event.returnValue = false
    }
}

function isArroba() {
	var validChar = "#64;";
    if (validChar.indexOf("#" + String(event.keyCode+ ";")) > -1)
    {
        event.returnValue = false
    }
}

function isNumCpf()
{
    var validChar = "#48;#49;#50;#51;#52;#53;#54;#55;#56;#57;#46;#47;#45;"
    if (validChar.indexOf("#" + String(event.keyCode+ ";")) == -1)
    {
        event.returnValue = false
    }
}

function isNumFone()
{
    var validChar = "#48;#49;#50;#51;#52;#53;#54;#55;#56;#57;#45;"
    if (validChar.indexOf("#" + String(event.keyCode+ ";")) == -1)
    {
        event.returnValue = false
    }
}

function validaIdade(){
    form = document.forms[0];

    if(! isDate(form.diaNascimento.value,form.mesNascimento.value,form.anoNascimento.value)){//verifica se e data valida
        alert("Data Inv?lida.");
        form.diaNascimento.focus();
        return false;
    }

    var base = new Date((new Date().getFullYear())-18, new Date().getMonth(),new Date().getDate());
    //alert(base);
    var nascimento = new Date(form.anoNascimento.value,form.mesNascimento.value-1,form.diaNascimento.value);

    if(base < nascimento){
        alert("Idade m?nima exigida ? de 18 anos.");
        form.diaNascimento.focus();
        return false;
    }
    base = new Date((new Date().getFullYear())-70, new Date().getMonth(),new Date().getDate());

    if(base > nascimento){
        alert("Idade m?xima permitida ? de 70 anos.");
        form.diaNascimento.focus();
        return false;
    }
    return true;
}

function isDate(dia, mes, ano){
    d = new Date(ano,mes-1,dia)

    if(d.getDate() != dia || (d.getMonth()+1) != mes || d.getFullYear() != ano){
        return false;
    }

    return true;
}

//Valida o ano, passando o input como parametro
function validaAno(campo) {

    var hoje = new Date();
    var anoAtual = hoje.getFullYear();

    //transforma ano c/ 2 digitos para ano c/ 4 digitos
	if(campo.value.length == 1)  {
		alert("Data inv?lida.\nDigite novamente.");
        campo.focus();
        campo.value = "";
    }
	
    if(campo.value.length == 2)  {
        var ano2 = new Number(campo.value)      
        if(ano2 + 2000 > anoAtual) {
        campo.value = 1900+ano2;
        } else {
        campo.value = 2000+ano2;
        }
    }
    
    if (parseInt(campo.value) > parseInt(anoAtual)) {
        alert("Data inv?lida.\nDigite novamente.");
        campo.focus();
        campo.value = "";
    }
}

//Valida o ano, passando o input como parametro
function validaAnoModelo(campo) {

    var hoje = new Date();
    var anoAtual = hoje.getFullYear()+1;

    //transforma ano c/ 2 digitos para ano c/ 4 digitos
    if(campo.value.length == 2)  {
        var ano2 = new Number(campo.value)      
        if(ano2 + 2000 > anoAtual) {
        campo.value = 1900+ano2;
        } else {
        campo.value = 2000+ano2;
        }
    }
    
    if (parseInt(campo.value) > parseInt(anoAtual)) {
        alert("Data inv?lida.\nDigite novamente.");
        campo.focus();
        campo.value = "";
    }
}


function validaMes(campo) {
    var valor = campo.value;    
    if (valor.indexOf("0") == 0) {
        valor = valor.substr(1);
    }   
    if (parseInt(valor) < 1 ||  parseInt(valor) > 12) {
        alert("Data inv?lida.\nDigite novamente.");
        campo.focus();
        campo.value = "";
    }
    campo.value = preencheNum(campo.value);
}

function validaDia(campo) { 
    var valor = campo.value;    
    if (valor.indexOf("0") == 0) {
        valor = valor.substr(1);
    }   
    if (parseInt(valor) < 1 ||  parseInt(valor) > 31) {
        alert("Data inv?lida.\nDigite novamente.");
        campo.focus();
        campo.value = "";
    }
    campo.value = preencheNum(campo.value);
}

function preencheNum(texto){
    if(texto.length > 0 && texto.length < 2)
        return("0"+texto);
    else
        return(texto);
}

function isValor1(campo)
{
    var valor = campo;
    var valor1 = campo.value;
    var validChar ="#48;#49;#50;#51;#52;#53;#54;#55;#56;#57;#44;"
    if (validChar.indexOf("#" + String(event.keyCode+ ";")) == -1)
        event.returnValue = false
    else if(valor1.charAt(valor1.length-3) == ",")
        event.returnValue = false;
}

function isValor(campo) {
	var validChar = "#48;#49;#50;#51;#52;#53;#54;#55;#56;#57;#44;"
    if (validChar.indexOf("#" + String(event.keyCode+ ";")) == -1)
    {
        event.returnValue = false
    }
}

function formataValor(campo, decimal) {
	var RETURN = '8';
	var DEL = '46';
	var TAB = '9';
	var HOME = '36';
	var END = '35';
	var LEFT = '37';
	var UP = '38';
	var RIGHT = '39';
	var DOWN = '40';
	var VIRGULA = '188';
	if (event.shiftKey && (event.keyCode == HOME || event.keyCode == END)) {
		return;
	}
	if (event.keyCode == DEL || event.keyCode == HOME || event.keyCode == END || 
		event.keyCode == TAB ||
		event.keyCode == RETURN) {
		return;
	}
	if (event.keyCode == LEFT || event.keyCode == RIGHT ||
		event.keyCode == UP || event.keyCode == DOWN) {
		event.returnValue = false;
		return;
	}
	var validCharSV = "#8;#48;#49;#50;#51;#52;#53;#54;#55;#56;#57;#44;#96;#97;#98;#99;#100;#101;#102;#103;#104;#105;";
	var validCharCV = "#8;#48;#49;#50;#51;#52;#53;#54;#55;#56;#57;#44;#96;#97;#98;#99;#100;#101;#102;#103;#104;#105;#110;#188;";
	var validChar = "";
	if (campo.value.indexOf(',') > -1) {
		validChar = validCharSV;	
		if (decimal) {
			if (validChar.indexOf("#" + String(event.keyCode+ ";")) >= 0) {
				txt = campo.value.substring(campo.value.indexOf(',')+1);
				if (txt.length >= decimal) {
					//alert("É permitido colocar duas casas decimais.");
					event.returnValue = false;
					return;
				}
			}
		}
	} else {
		validChar = validCharCV;
	}
    if (validChar.indexOf("#" + String(event.keyCode+ ";")) == -1)
    {
        event.returnValue = false
    }
}

/* alterado 05/09/05 (cristine.tellier) >> ERROv09-01  */
// OBS: esta funcao estava duplicada no arquivo, a outra foi retirada deste .js
function validaValor(campo){
    var valor = campo;
    if(valor.value.length >0) {
        var i = 0;
        for (i=0; i < valor.value.length; i++) {
            var a = ",".indexOf(valor.value.charAt(i))
            if( a >= 0) {
                if((valor.value.length-1)-i == 0) {
                    valor.value = valor.value + "00";
                    return true;
                } else if((valor.value.length-1)-i == 1) {
                    valor.value = valor.value + "0";
                    return true;
                } else if((valor.value.length-1)-i == 2) {
                    return true;
                } else if((valor.value.length-1)-i > 2) {                
                	valor.value = valor.value.substring(0,i+3);
                    return true;
                } 
            }
        }
        valor.value = valor.value+",00"
        return true;
    }else return false;
}
/*function buscaModelo(i) //Carrega o combo Modelo. Chamada no onChange da combo fabricante.
    {
        var form = document.dadosForm;
        if (form.AaModelo[i].value.length != 4)
        {
            alert("Ano Modelo inv?lido.");
            form.AaModelo[i].focus();
        }else
        {
            var opcao = form.CdMarca[i].options[form.CdMarca[i].selectedIndex].value;
            if(opcao != -1)
            {
                combo = document.dadosForm.CdModelo[i];
                clearCombo(combo);
                option1(combo);

                var categoria = form.categoria[i].options[form.categoria[i].selectedIndex].text;
                var marca = form.CdMarca[i].options[form.CdMarca[i].selectedIndex].text;
                var ano = form.CdModelo[i].value;
                var modelos = window.showModalDialog('s_aguarde.jsp?cat='+categoria+'&mar='+marca+'&ano='+ano,'dialogHeight:50px,dialogWidth:350px,help:no');
                //alert("b");
                var modId = modelos[0];
                var modDescr = modelos[1];
                var x;
                for (x = 1; x < modId.length; x++)
                {
                    var oOption = document.createElement("option");
                    oOption.value = modId[x];
                    oOption.text = modDescr[x];
                    combo.add(oOption);
                }
                combo.focus();
            }
        }
    }
*/

function buscaMarcas(cbCategoria, cbMarca, cbModelo){

    /** nome da categoria */
    var categoria = cbCategoria.value;

    clearCombo(cbMarca);
    option1(cbMarca);
    clearCombo(cbModelo);
    option1(cbModelo);

    if(categoria != -1){

        var tipo = "MARCA";
        var marca =
            window.showModalDialog( '../includes/s_aguarde.jsp?bean=corporativo.molicar.ConsultaMolicarBean&categoria='+ categoria +'&parametro='+tipo,'',
                                    'dialogWidth:190px;dialogHeight:50px;help:no;status:no');

        for (x = 0; x < marca.length; x++){
            var itens = marca[x];
            var oOption = document.createElement("option");
            oOption.value = itens[0];
            oOption.text  = itens[1];
            cbMarca.add(oOption);
        }
        
   } else {
      
        clearCombo(cbMarca);
        option1(cbMarca);
        clearCombo(cbModelo);
        option1(cbModelo);

    }
}

function buscaMarca(categoria){ 

    var form = document.consulta;

    if(categoria != -1){

        marca_combo = form.marca;
        clearCombo(marca_combo);
        option1(marca_combo);
        var tipo = "MARCA";
        var marca = 
            window.showModalDialog( '../includes/s_aguarde.jsp?bean=corporativo.molicar.ConsultaMolicarBean&categoria='+ categoria +'&parametro='+tipo,'',
                                    'dialogWidth:190px;dialogHeight:50px;help:no;status:no');

        for (x = 0; x < marca.length; x++){
            var itens = marca[x];
            
            var oOption = document.createElement("option");
                 oOption.value = itens[0];
                 oOption.text  = itens[1];
                 marca_combo.add(oOption);
       }
   }else{
        marca_combo = form.marca;
        clearCombo(marca_combo);
        option1(marca_combo);
        
        modelo_combo = form.modelo;
        clearCombo(modelo_combo);
        option1(modelo_combo);
        
   }
}

function buscaModelos(cbCategoria, cbMarca, txtAno, ckcOkm, cbModelo, loja) {

	var form = getForm();
    var categoria = cbCategoria.value;
    var marca = cbMarca.value;
    var ano = txtAno.value;
	var ckc = ckcOkm.value;
	
	if (ckc == 'S'){ ano = '0 KM'; }
	
    if (ano.length < 1 && !ckcOkm.checked) {
        alert("Preencha o Ano do Ve?culo.");
        form.PGMAaModelo.focus();
        return false;
    }

    clearCombo(cbModelo);
    option1(cbModelo);

    if(marca != -1){
        var tipo = "MODELO_BO";
		if( loja != "undefined" && parseInt(loja) > 0){
			var modelo =
				window.showModalDialog( '../includes/s_aguarde.jsp?bean=corporativo.molicar.ConsultaMolicarBean&ano='+ ano +'&categoria=' + categoria + '&loja='+ loja +'&marca='+ marca +'&parametro='+tipo,'',
										'dialogWidth:190px;dialogHeight:50px;help:no;status:no');
		} else {
			var modelo =
				window.showModalDialog( '../includes/s_aguarde.jsp?bean=corporativo.molicar.ConsultaMolicarBean&ano='+ ano +'&categoria=' + categoria + '&marca='+ marca +'&parametro=MODELO','',
										'dialogWidth:190px;dialogHeight:50px;help:no;status:no');
		}
									    
        if (modelo.length == 0){
            alert("Nenhum Modelo foi Encontrado.");
        }

        for (x = 0; x < modelo.length; x++){        
            var itens = modelo[x];
            var oOption = document.createElement("option");
            oOption.value = itens[0];
            oOption.text  = itens[0];
            oOption.vrMercado = itens[1];
            cbModelo.add(oOption);
        }
        
    } else {
        clearCombo(cbModelo);
        option1(cbModelo);
    }
}

function buscaModelo(marca){ 

    var form = document.consulta;
    var ano = "";
    var categoria = form.categoria.value;
    
    if (form.km.checked){
        ano = "0 Km";
    }else if (form.anomodelo.value.length != 4){
           
            alert("Ano do Ve?culo inv?lido.");
            form.anomodelo.focus();
            form.marca.value = "-1";
            return;
            
    }else{
        ano = form.anomodelo.value;
    }
    
    if(marca != -1){

        modelo_combo = form.modelo;
        clearCombo(modelo_combo);
        option1(modelo_combo);
        var tipo = "MODELO";
        
        var modelo =    
            window.showModalDialog( '../includes/s_aguarde.jsp?bean=corporativo.molicar.ConsultaMolicarBean&ano='+ ano +'&categoria=' + categoria + '&marca='+ marca +'&parametro='+tipo,'',
                                    'dialogWidth:190px;dialogHeight:50px;help:no;status:no');
            if (modelo.length == 0){
                alert("Nenhum Modelo foi Encontrado.");
            }
            
            for (x = 0; x < modelo.length; x++){
                var itens = modelo[x];
                
                var oOption = document.createElement("option");
                     oOption.value = itens[0];
                     oOption.text  = itens[1];
                     modelo_combo.add(oOption);
           }
   }else{
        modelo_combo = form.modelo;
        clearCombo(modelo_combo);
        option1(modelo_combo);
   }
}


function preencheFormulario(){
    for(var i=0; i < document.forms.length; i++){
        var formulario = document.forms[i];

        for(var j=0; j < formulario.length; j++){
            campo = formulario[j];
            campo.value=1;
        }
    }
}

function showHide(action,div){

    if (action == 1) {
        if (document.all[div]) {
            document.all[div].style.visibility = "visible";
			document.all[div].style.display = "block";
        } 
    }
    
    if (action == 0) {
        if (document.all[div]) {
			document.all[div].style.display = "none";
            document.all[div].style.visibility = "hidden";
        } 
    }
    
}

function disableFields(){
    for(var i=0; i < document.forms.length; i++){
        var formulario = document.forms[i];

        for(var j=0; j < formulario.length; j++){
            campo = formulario[j];
            campo.disabled = true;
        }
    }
}

function enableFields(){
    for(var i=0; i < document.forms.length; i++){
        var formulario = document.forms[i];

        for(var j=0; j < formulario.length; j++){
            campo = formulario[j];
            campo.disabled = false;
        }
    }
}

function insRow(tb,nm) {
    var table = document.getElementById(tb);
    var rowItems = table.getElementsByTagName("tr");
    var rowCount = rowItems.length;
    var r=table.insertRow(rowCount);
    var x=r.insertCell(0);
    var y=r.insertCell(1);
    var z=r.insertCell(2);

    var newImg = document.createElement("img");
    newImg.src="../images/bt_4_on.gif";
    newImg.width = "14";
    newImg.height = "14";
    newImg.border = '0';

    var newAnchor = document.createElement("<A href='#' onclick='javascript:deleteMe(this.parentNode.parentNode.rowIndex);'></A>");
    newAnchor.appendChild(newImg);

    var newInput=document.createElement('input');
    newInput.setAttribute('type','hidden');
    newInput.setAttribute('name','oAnalista');
    newInput.setAttribute('value', document.frmDocs.analistaId.value);

    //f.appendChild(document.createElement('br'));

    x.innerText="Analista : ";
    y.innerText=nm;
    y.appendChild(newInput);
    z.appendChild(newAnchor);

    x.align = "right";
    y.align = "left";
    z.align = "center";

}

function deleteMe(rowIndex) {
    var table = document.getElementById('analistas');
    table.deleteRow(rowIndex);
}

function insertRow(tb,doc,compl) {
    //alert(doc);
    var table = document.getElementById(tb);
    var rowItems = table.getElementsByTagName("tr");
    var rowCount = rowItems.length;
    var r=table.insertRow(rowCount-1);
    var x=r.insertCell(0);
    var y=r.insertCell(1);
    var z=r.insertCell(2);

    var newImg = document.createElement("img");
    newImg.src="../images/bt_4_on.gif";
    newImg.width = "14";
    newImg.height = "14";
    newImg.border = '0';

    var newAnchor = document.createElement("<A href='#' onclick='javascript:deleteMeDoc(this.parentNode.parentNode.rowIndex);'></A>");
    newAnchor.appendChild(newImg);

    x.innerText=doc+" : ";
    if (compl == "selecione uma op??o") {
        compl = " ";
    }
    y.innerText=compl;
    z.appendChild(newAnchor);

    x.align = "right";
    y.align = "left";
    z.align = "center";
}

function deleteMeDoc(rowIndex) {
    var table = document.getElementById('allDocs');
    table.deleteRow(rowIndex);
}

function showDiv(div) {
    document.all[div].style.display="block";
    document.all[div].style.visibility="visible";
}

function hideDiv(div) {
    document.all[div].style.display="none";
    document.all[div].style.visibility="hidden";
}


function replaceSpan(){

    var newSpan = document.createElement("span");
    var newInput = document.createElement("<input type='text' name='docCompl' style='size:230' class='campoc'>");
    newSpan.appendChild(newInput);

    var table = document.getElementById("allDocs");
    var spanElm = document.getElementById("comboCompl");
    var replaced = para.replaceChild(newSpan,spanElm);
}

function getPos(obj) {

    var sLeft = findPosX(obj);
    var sTop = findPosY(obj);
    alert(sLeft);
    alert(sTop);

}

function findPosX(obj)
{
    var curleft = 0;
    if (obj.offsetParent)
    {
        while (obj.offsetParent)
        {
            curleft += obj.offsetLeft
            obj = obj.offsetParent;
        }
    }
    else if (obj.x)
        curleft += obj.x;
    return curleft;
}

function findPosY(obj)
{
    var curtop = 0;
    if (obj.offsetParent)
    {
        while (obj.offsetParent)
        {
            curtop += obj.offsetTop
            obj = obj.offsetParent;
        }
    }
    else if (obj.y)
        curtop += obj.y;
    return curtop;
}

function setAnalista(val, txt) {
    document.frmDocs.analista.value = txt;
    document.frmDocs.analistaId.value = val;
}

function setDoc() {
    document.frmDocs.docName.value = document.frmDocs.docsList.options[document.frmDocs.docsList.selectedIndex].text;
    document.frmDocs.docCompl.value = document.frmDocs.docsCompl.options[document.frmDocs.docsCompl.selectedIndex].text;
}

function setStatus() {
    document.forms[0].stat.value = document.forms[0].status.options[document.forms[0].status.selectedIndex].text;
    document.forms[0].statCompl.value = document.forms[0].statusCompl.options[document.forms[0].statusCompl.selectedIndex].text;
    if (document.all.pendente.style.visible == true) {
        document.forms[0].pendCompl.value = document.forms[0].complPend.options[document.forms[0].complPend.selectedIndex].text;
    }
}

function fillSelectFromArray(combo, selectCtrl, itemArray, goodPrompt, badPrompt, defaultItem) {

    if (combo.name == "docsList") {
        str = combo.options[combo.selectedIndex].text;

        if (str == "Outros") {
            var obj = document.getElementById('comboCompl');
            var objOver = document.getElementById('txtCompl');
            objOver.style.top = findPosY(obj);
            objOver.style.left = findPosX(obj);
            hideDiv('comboCompl');
            showDiv('txtCompl');
        } else {
            hideDiv('txtCompl');
            showDiv('comboCompl');
        }
    }

    var i, j;
    var prompt;
    // empty existing items
    for (i = selectCtrl.options.length; i >= 0; i--) {
        selectCtrl.options[i] = null;
    }
    prompt = (itemArray != null) ? goodPrompt : badPrompt;
    if (prompt == null) {
        j = 0;
    }
    else {
        selectCtrl.options[0] = new Option(prompt);
        j = 1;
    }
    if (itemArray != null) {
    // add new items
    for (i = 0; i < itemArray.length; i++) {
        selectCtrl.options[j] = new Option(itemArray[i][0]);
        if (itemArray[i][1] != null) {
            selectCtrl.options[j].value = itemArray[i][1];
        }
        j++;
    }
    // select first item (prompt) for sub list
    selectCtrl.options[0].selected = true;
   }
}

function loadCombo(combo1, combo2) {
    var form = combo1.form; 
    var opcao = combo1.value;
    var index = combo1.options.selectedIndex;
    var combo = combo2;

    clearCombo(combo);

    if (combo.name != 'complPend' ) {
        var oOption = document.createElement("option");
        oOption.value = -1;
        oOption.text = "selecione uma op??o";
        combo.add(oOption);
    }
    if(opcao != -1) {
        var i;
        var cmbArray = new Array();
        cmbArray = eval(combo1.name + index);
        for (i = 0; i < cmbArray.length; i++) {
            var oOption = document.createElement("option");
            oOption.text = cmbArray[i][0];
            oOption.value = cmbArray[i][1];
            combo.add(oOption);
        }
        combo.focus();
    }
}

function clearCombo(cb_alteravel) {

    var tam1 = cb_alteravel.length;
    for (i = tam1 ; i  >= 0 ; i--)    {
        cb_alteravel.options[i] = null;
    }
}

function option1(combo) {
    var oOption = document.createElement("option");
    oOption.value = -1;
    oOption.text = "selecione uma opção";
    combo.add(oOption);
}

function option0(combo) {
    var oOption = document.createElement("option");
    oOption.value = 0;
    oOption.text = "";
    combo.add(oOption);
}

function insRowPend(tb) {
    
    var form = document.forms[0];
    var table = document.getElementById(tb);
    var rowItems = table.getElementsByTagName("tr");
    var rowCount = rowItems.length;
    var r=table.insertRow(rowCount);
    r.setAttribute('height', 20);
    if (rowCount % 2 != 0) {
        r.style.backgroundColor = '#ededed';
    }
    
    var a=r.insertCell(0);
    var b=r.insertCell(1);  
    var c=r.insertCell(2);  
    var d=r.insertCell(3);  
    var e=r.insertCell(4);  

    var txt1 = form.status.value;
    var txt2 = form.statCompl.value;
    
    var txt3 = "";

    if (txt1 == "Pendente") {
        for(i = 0; i< parseInt(form.complPend.length);i++){
            if(form.complPend.options[i].selected){
                txt3 += form.complPend.options[i].text+"\n";
            }           
        }
    } else {
        txt3 = " ";
    }
    
    var txt4 = "";
    if (txt1 == "Pendente" && txt2 == "Redu??o Valor") {
        txt4 = document.forms[0].valorReducao.value;
    }
    
    var newImg = document.createElement("img");

    newImg.src="../images/bt_4_on.gif";
    newImg.width = "14";
    newImg.height = "14";
    newImg.border = '0';

    var newAnchor = document.createElement("<A href='#' onclick='javascript:deleteMePend(this.parentNode.parentNode.rowIndex);'></A>");
    newAnchor.appendChild(newImg);
    
    var newInput1=document.createElement('input');
    newInput1.setAttribute('type','hidden');
    if (txt1 == "Negada") {
        newInput1.setAttribute('name','cdRecusa');
    } else {
        newInput1.setAttribute('name','cdPendencia');
    }
    newInput1.setAttribute('value', document.frmDocs.statusCompl.value);
    
    var newInput2=document.createElement('input');
    newInput2.setAttribute('type','hidden');
    if (txt1 == "Negada") {
        newInput2.setAttribute('name','complRecusa');
    } else {
        newInput2.setAttribute('name','complPendencia');
    }
    newInput2.setAttribute('value', document.frmDocs.complPend.value);
    
    var newInput3=document.createElement('input');
    newInput3.setAttribute('type','hidden');
    newInput3.setAttribute('name','vrReducao');
    if(document.frmDocs.reducao) {
        newInput3.setAttribute('value', document.frmDocs.reducao.value);
    } else {
        newInput3.setAttribute('value', "");
    }
    

    a.innerText=txt1;
    b.innerText=txt2;
    c.innerText=txt3;
    c.appendChild(newInput1);
    c.appendChild(newInput2);
    d.innerText=txt4;
    d.appendChild(newInput3);
    e.appendChild(newAnchor);

    a.align = "left";
    b.align = "left";
    c.align = "left";
    d.align = "left";
    e.align = "left";
    
    //alert(newInput1.getAttribute('name')+" :: "+newInput1.getAttribute('value'));

}

function deleteMePend(rowIndex) {
    var table = document.getElementById('pendencias');
    table.deleteRow(rowIndex);
}


function listAll() {
    var temp = "";
    for(var i=0; i < document.forms.length; i++){
        var formulario = document.forms[i];
        for(var j=0; j < formulario.length; j++){
            campo = formulario[j];
            temp += campo.name + "\n";
        }
    }
    alert(temp);
}

function formatarValor(valor,tammax,teclapres) {
    var tecla = teclapres.keyCode;
    valorSemFormato = valor.value;
    valorSemFormato = valorSemFormato.replace( ",", "" );
    valorSemFormato = valorSemFormato.replace( ".", "" );
    valorSemFormato = valorSemFormato.replace( ".", "" );
    valorSemFormato = valorSemFormato.replace( ".", "" );
    valorSemFormato = valorSemFormato.replace( ".", "" );
    tamanho = valorSemFormato.length;

    //8  = tecla do back
    //46 = tecla de delete
    //48 ? 57  = tecla 0 ? 9 do teclado principal
    //96 ? 105 = tecla 0 ? 9 do teclado lateral

    if (tecla == 46) {
         valor.value = valor.value;

    }if (tamanho < tammax && tecla != 8) {
        tamanho = valorSemFormato.length + 1;

    }if (tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ) {
         if (tecla == 8) {
             tamanho = tamanho - 1;
         }

         if (tamanho <= 2) {
             valor.value = valorSemFormato;

         }else if ((tamanho > 2) && (tamanho <= 5)) {
             valor.value = valorSemFormato.substr(0, tamanho - 2) + ',' +
                           valorSemFormato.substr(tamanho - 2, tamanho);

         }else if ((tamanho >= 6) && (tamanho <= 8)) {
             valor.value = valorSemFormato.substr(0, tamanho - 5) + '.' +
                           valorSemFormato.substr(tamanho - 5, 3) + ',' +
                           valorSemFormato.substr(tamanho - 2, tamanho);

         }else if ((tamanho >= 9) && (tamanho <= 11)) {
             valor.value = valorSemFormato.substr(0, tamanho - 8) + '.' +
                           valorSemFormato.substr(tamanho - 8, 3) + '.' +
                           valorSemFormato.substr(tamanho - 5, 3) + ',' +
                           valorSemFormato.substr(tamanho - 2, tamanho);

         }else if ((tamanho >= 12) && (tamanho <= 14)) {
             valor.value = valorSemFormato.substr(0, tamanho - 11) + '.' +
                           valorSemFormato.substr(tamanho - 11, 3) + '.' +
                           valorSemFormato.substr(tamanho - 8, 3)  + '.' +
                           valorSemFormato.substr(tamanho - 5, 3)  + ',' +
                           valorSemFormato.substr(tamanho - 2, tamanho);

         }else if ((tamanho >= 15) && (tamanho <= 17)) {
             valor.value = valorSemFormato.substr(0, tamanho - 14) + '.' +
                           valorSemFormato.substr(tamanho - 14, 3) + '.' +
                           valorSemFormato.substr(tamanho - 11, 3) + '.' +
                           valorSemFormato.substr(tamanho - 8, 3)  + '.' +
                           valorSemFormato.substr(tamanho - 5, 3)  + ',' +
                           valorSemFormato.substr(tamanho - 2, tamanho);
        }
    }
}



function mostrar(tipo)
{ var x;
  for (x=1; x<=2; x++) 
   document.all["lay"+x].style.visibility="hidden";
  if(tipo!=0)
    document.all["lay"+tipo].style.visibility="visible";
}



function mostra1(obj,div)
{
    if(obj.checked) document.all[div].style.visibility="visible";
    else document.all[div].style.visibility="hidden";
}

function inserirVeiculo(){
    var form = getForm();
    form.acao.value = "inserirVeiculo";
    form.submit();
}

function continuar() {
    var form = getForm();
    if(__valida( form )) {
        form.acao.value = 'continuar';
        form.submit();
    }
}

function voltar() {
    var form = getForm();
    form.acao.value = 'voltar';    
    form.submit();
}

function cancelar() {

    if (confirm('Esta opera??o apagar? os dados digitados at? agora.')) {
        var form = getForm();        
        form.acao.value = 'cancelar';    
        form.submit();
    }
}

function salvarProposta() {
    var form = getForm();
     if(__valida( form )) {
        form.acao.value = 'salvarProposta'  ;
        form.submit();
    }
}

function salvarAverbacao() {
    var form = getForm();
     if(__valida( form )) {
        form.acao.value = 'setStatusAverbacao'  ;
        form.submit();
    }
}

function consultaClienteParceiro(campo) {
    var form = getForm();
	if (_validaCPF(__limpa(campo.value))) {
	    form.acao.value = 'consultaClienteParceiro';    
    	form.submit();
	}
}

/** seta a data a ser salva (mes c/ 1 unidade a menos) */
function setDataToSave(dia, mes, ano, data) {
		var temp = (mes.value.length > 0) ? parseFloat(mes.value) -1 : 1;
		var mesCerto = temp.toString();
		if (mesCerto.length == 1) {
			mesCerto = "0" + mesCerto.toString();
		} 
	    data.value = dia.value + "/" + mesCerto + "/" + ano.value;
}

/** retorna o formulario dos dados */
function getForm(){
    for ( var i=0; i< document.forms.length; i++){
        try{
            var teste = document.forms[i].acao.value;
            return(document.forms[i]);
        } catch(e){}
    }
}

/** pesquisa de profissoes */
function pesquisaProfissao() {	
	var url = '../proposta/s_profissoes.jsp';
	var name = 'PROFISSOES';
	var params = 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=300,height=300';
	window.open(url,name,params);
}

/** pesquisa de profissoes */
function pesquisaProfissao(tpProposta) {	
	var url = (tpProposta == 'convenio') ? '../propostaconvenio/s_profissoes.jsp' :  '../proposta/s_profissoes.jsp';
	var name = 'PROFISSOES';
	var params = 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=300,height=300';
	window.open(url,name,params);
}

function formaProfissao() {
    document.forms[0].acao.value='profissao';
    document.forms[0].submit();
}

/** busca agencias de um determinado banco*/
function buscaAgencia(comboBanco, comboAgencia){

	var nuBanco = comboBanco.value;
	
	// soh executa a consulta se for um codigo de banco v?lido
    if(nuBanco.length == 3){
		
		clearCombo(comboAgencia);
        option0(comboAgencia);
		
		var agencias = 
			 window.showModalDialog( '../includes/s_aguarde.jsp?bean=corporativo.ConsultaAgenciaBean&parametro='+nuBanco,'',
                                    'dialogWidth:190px;dialogHeight:50px;help:no;status:no');
        
		if (agencias.length == 0){
            alert("Nenhum agencia foi encontrada.");
        }
        
        for (x = 0; x < agencias.length; x++){
            var itens = agencias[x];            
            var oOption = document.createElement("option");
            oOption.value = itens[0];
            oOption.text  = itens[0];
            comboAgencia.add(oOption);
       }
		
    }
}

/** busca prazos de financiamento */
function buscaPrazo(fieldMeses, comboParcela) {

	if (fieldMeses.value == 0 || fieldMeses.value.length < 1) {
		return;
	}
	
	var qtMeses = fieldMeses.value;
	clearCombo(comboParcela);
	option0(comboParcela);

	var prazos = 
		window.showModalDialog( '../includes/s_aguarde.jsp?bean=credito.convenio.PropostaConvenioBean&acao=buscaPrazo&parametro='+qtMeses,'',
                                    'dialogWidth:190px;dialogHeight:50px;help:no;status:no');
									
	if (prazos.length == 0){
		alert("Nenhum prazo dispon?vel.");
	}
	
	for (x = 0; x < prazos.length; x++){
         var itens = prazos[x];            
         var oOption = document.createElement("option");
         oOption.value = itens[0];
         oOption.text  = itens[0];
         comboParcela.add(oOption);
    }
}

/** busca prazos de financiamento consignado*/
function buscaPrazoConsignado(fieldMeses, comboParcela) {

	if (fieldMeses.value == 0 || fieldMeses.value.length < 1) {
		return;
	}
	
	var qtMeses = fieldMeses.value;
	clearCombo(comboParcela);
	option0(comboParcela);

	var prazos = 
		window.showModalDialog( '../includes/s_aguarde.jsp?bean=cp.consignado.PropostaCPConsignadoBean&acao=buscaPrazo&parametro='+qtMeses,'',
                                    'dialogWidth:190px;dialogHeight:50px;help:no;status:no');
									
	if (prazos.length == 0){
		alert("Nenhum prazo dispon?vel.");
	}
	
	for (x = 0; x < prazos.length; x++){
         var itens = prazos[x];            
         var oOption = document.createElement("option");
         oOption.value = itens[0];
         oOption.text  = itens[0];
         comboParcela.add(oOption);
    }
}

// mostra mensagem de alerta //
function alertMsg(cod) {

	var codigo = cod;
	
	switch (codigo) {
	
		case 1:
			alert("Transa??o n?o permitida.");
			break;
			
		case 2:
			alert("N?o ? poss?vel salvar a PROPOSTA no modo de Visualiza??o.");
			break;
			
		case 3:
			alert("N?o ? poss?vel inserir um AVALISTA no modo de Visualiza??o.");
			break;
			
		case 4:
			alert("N?o ? poss?vel excluir um C?NJUGE no modo de Visualiza??o");
			break;
		
		case 5:
			alert("N?o ? poss?vel recalcular o SCORE no modo de Visualiza??o");
			break;

		case 6:
			alert("N?o ? poss?vel executar est? OPERA??O no modo de Visualiza??o.");
			break;

			
		default:
			alert("Ocorreu um erro ao processar a informa??o.");
			
	}

}

/** abre um pop */
function openPop(url) {
	params = 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=515,height=400';
	window.open(url,'',params);
}

// formata valor monet?rio
function formatCurrency(num) {
	num = num.toString().replace(/\$|\,/g,'');
	if(isNaN(num))
	num = "0";
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001);
	cents = num%100;
	num = Math.floor(num/100).toString();
	if(cents<10)
	cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
	num = num.substring(0,num.length-(4*i+3))+''+
	num.substring(num.length-(4*i+3));
	return (((sign)?'':'-') + num + ',' + cents);
}

function buscaMarcaIndividual (cbCategoria, cbMarca, cbModelo, idx){
    
    /** quantidade de veiculos */
     var qtVeiculos = parseInt(cbCategoria.form.qtVeiculosFinanciamento.value);
    
    /** nome da categoria */
    var categoria = cbCategoria.value;

    /** limpa os combos correspondentes */
    if(qtVeiculos > 1){
        clearCombo(cbMarca[idx]);
        option1(cbMarca[idx]);
        clearCombo(cbModelo[idx]);
        option1(cbModelo[idx]);        
    } else {
        clearCombo(cbMarca);
        option1(cbMarca);
        clearCombo(cbModelo);
        option1(cbModelo);
    }

    if(categoria != -1){

        var tipo = "MARCA";
        var marca =
            window.showModalDialog( '../includes/s_aguarde.jsp?bean=corporativo.molicar.ConsultaMolicarBean&categoria='+ categoria +'&parametro='+tipo,'',
                                    'dialogWidth:190px;dialogHeight:50px;help:no;status:no');

        if(qtVeiculos > 1){
            for (x = 0; x < marca.length; x++){
                var itens = marca[x];
                var oOption = document.createElement("option");
                oOption.value = itens[0];
                oOption.text  = itens[1];
                cbMarca[idx].add(oOption);
            }
        } else {
            for (x = 0; x < marca.length; x++){
                var itens = marca[x];
                var oOption = document.createElement("option");
                oOption.value = itens[0];
                oOption.text  = itens[1];
                cbMarca.add(oOption);
            }
        }
   } else {
         if(qtVeiculos > 1){
            clearCombo(cbMarca[idx]);
            option1(cbMarca[idx]);
            clearCombo(cbModelo[idx]);
            option1(cbModelo[idx]);        
        } else {
            clearCombo(cbMarca);
            option1(cbMarca);
            clearCombo(cbModelo);
            option1(cbModelo);
        }
    }
}

/* mesma funcionalidade do buscaModelo, usada para tratar a existencia de mais de um veiculo */
function buscaMolicar(cbCategoria, cbMarca, txtAno, ckcOkm, cbModelo, loja, idx) {

	var form = getForm();
	var qtVeiculos = form.qtVeiculosFinanciamento.value;
    var categoria = (qtVeiculos == 1) ? cbCategoria.value : cbCategoria[idx].value;
    var marca = cbMarca.value;
    var ano = (qtVeiculos == 1) ? txtAno.value : txtAno[idx].value;
	var ckc = (qtVeiculos == 1) ? ckcOkm.value : ckcOkm[idx].value;

	if (ckc == 'S'){ ano = '0 KM'; }
	
    if (ano.length < 1 && !ckcOkm.checked) {
        alert("Preencha o Ano do Ve?culo.");
        (qtVeiculos == 1) ? txtAno.focus() : txtAno[idx].focus();
        return false;
    }
	
	clearCombo((qtVeiculos > 1) ? cbModelo[idx] : cbModelo);
    option1((qtVeiculos > 1) ? cbModelo[idx]: cbModelo);

    if(marca != -1){
        var tipo = "MODELO_BO";
		if( loja != "undefined" && parseInt(loja) > 0){
			var modelo =
				window.showModalDialog( '../includes/s_aguarde.jsp?bean=corporativo.molicar.ConsultaMolicarBean&ano='+ ano +'&categoria=' + categoria + '&loja='+ loja +'&marca='+ marca +'&parametro='+tipo,'',
										'dialogWidth:190px;dialogHeight:50px;help:no;status:no');
		} else {
			var modelo =
				window.showModalDialog( '../includes/s_aguarde.jsp?bean=corporativo.molicar.ConsultaMolicarBean&ano='+ ano +'&categoria=' + categoria + '&marca='+ marca +'&parametro=MODELO','',
										'dialogWidth:190px;dialogHeight:50px;help:no;status:no');
		}
									    
        if (modelo.length == 0){
            alert("Nenhum Modelo foi Encontrado.");
        }

        for (x = 0; x < modelo.length; x++){
		
			var itens = modelo[x];

            var oOption = document.createElement("option");
            oOption.value = itens[0];
            oOption.text  = itens[0];
            oOption.setAttribute('vrMercado', itens[1]);
			oOption.setAttribute('CdMolicar', itens[2]);
			
            if(qtVeiculos > 1){
                cbModelo[idx].add(oOption);
            } else {
                cbModelo.add(oOption);
            }

        }
        
    } else {
       clearCombo((qtVeiculos > 1)?cbModelo[idx]: cbModelo);
        option1((qtVeiculos > 1)?cbModelo[idx]: cbModelo);
    }
}

function validaDataHoje(data) {// formato dd-mm-aaaa
	var dia = data.substring(0,2);
    var mes = data.substring(3,5);
    var ano = data.substring(6,10);
	
	var hoje = new Date();
	var dtTeste = new Date(ano, mes-1, dia, 23, 59, 59);
	
	if (dtTeste < hoje) {
		alert('Data inv?lida!\nN?o deve ser anterior a Hoje.');
		return false;
	}
	return true;	
}
function testSize(textarea) {
    if (textarea.value.length > 254) {
        event.returnValue = false;
    }
}
<!-- Verifica limite de caracteres -->
function textCounter(field, maxlimit) 
{
    if (field.value.length > maxlimit) // if too long...trim it!
    {
        field.value = field.value.substring(0, maxlimit);
        alert("Voc? estourou o limite de " + maxlimit + " carateres !!!");
        // otherwise, update 'characters left' counter
    }      
}

<!-- Preenche o 'campo' com o 'char' at? o 'size' -->
function preencheCampo(campo,char,size){
	tam = size - campo.value.length
	for (i=0;i < tam;i++){
	    campo.value=char+ campo.value;
	}
}

/* Adiciona a quatidade de dia na data */
function relativeDate(myDate,days) {
    return new Date(myDate.getTime() + days*24*60*60*1000);
}

/* incluido 31/08/05 (cristine.tellier) >> MATCv08-01  */
function validarIntervalo(di, df, delta) {
	dif = df.getTime() - di.getTime();
	dif = dif / (24*60*60*1000);	
	if(dif<0){
		return false;
	}else{
		if(delta >= dif){
			return true;
		}else{
			return false;
		}
	}
}

/* incluido 31/08/05 (cristine.tellier) >> MATCv08-01  */
function resizeWindow(w, h) {   
    xMax=screen.width; 
    yMax=screen.height;
    if (w == 0 && h == 0) {
        window.resizeTo(xMax,yMax); 
    } else {
        window.resizeTo(w,h);
    }
    //topo=(xMax-w)/2; 
    //esq=(yMax-h)/2; 
    window.moveTo(0,0); 
    window.focus(); 
}

// Marcio Homor - MATCv12-04 - 02/01/2006
function setDadosObrigatorio(campo1, campo2){   
    if (trim(campo1.value) != ""){      
        campo2.obrigatorio = "1";
    }else{
        campo2.obrigatorio = "0";
    }
}

/* incluido 16/05/2006 (cristine.tellier) >> ERROv0605-02 */
function disableButton(idButton) {
	var img_bt = document.getElementById(idButton);
	img_bt.src = "../images/dot.gif";	
}
/*Branch SITEv0609-01*/
function desabilitar(){
   if(event.keyCode == 18 || event.altKey){
	  return false
   }  
  
   var forbiddenKeys = new Array("a","n","j");
   
   if(window.event)
   {
           key = window.event.keyCode;     //IE
           if(window.event.ctrlKey)
                   isCtrl = true;
           else
                   isCtrl = false;
   }
   if(isCtrl)
   {   
	   for(i=0; i<forbiddenKeys.length; i++)
	   {	  
	           //case-insensitive comparation
	           if(forbiddenKeys[i].toLowerCase() == String.fromCharCode(key).toLowerCase())
	           {
	                   return false;
	           }
	   }
   }
   
} 

document.onkeydown=desabilitar;

function disablectrl(){
  var forbiddenKeys = new Array("a","n","j");
  
   if(window.event)
   {
           key = window.event.keyCode;     //IE
           if(window.event.ctrlKey)
                   isCtrl = true;
           else
                   isCtrl = false;
   }
   
   if(isCtrl)
   {   
	   for(i=0; i<forbiddenKeys.length; i++)
	   {	  
	           //case-insensitive comparation
	           if(forbiddenKeys[i].toLowerCase() == String.fromCharCode(key).toLowerCase())
	           {
	                   return false;
	           }
	   }
   }

}

if (typeof window.event == 'undefined'){
   
   document.onkeypress = 
   
   function(e){
        
        var test_var=e.target.nodeName.toUpperCase();
	 	if (e.target.type) var test_type=e.target.type.toUpperCase();
	 	if ((test_var == 'INPUT' && test_type == 'TEXT') || test_var == 'TEXTAREA'){
	 	  return e.keyCode;
	 	}else if (e.keyCode == 8){
	 	  e.preventDefault();
	 	  return disablectrl();
	 	}
	 	return disablectrl();
   }
 }else{
   
   document.onkeydown = 
   
   function(){
      
 	  var test_var=event.srcElement.tagName.toUpperCase();
 	  if (event.srcElement.type) var test_type=event.srcElement.type.toUpperCase();
 	  if ((test_var == 'INPUT' && test_type == 'TEXT') || test_var == 'TEXTAREA'){
 	    return event.keyCode;
 	  }else if (event.keyCode == 8){
 	    event.returnValue=false;
 	    return disablectrl();
 	  }
 	  return disablectrl();
   }
    
 }	
 	

if (window.Event) 
document.captureEvents (Event.MOUSEUP); 
function nocontextmenu() { 
	event.cancelBubble = true 
	event.returnValue = false; 
	
    return false; 
} 
function norightclick(e) { 
if (window.Event) { 
	if (e.which == 2 || e.which == 3) 
		return false; 
	} else if (event.button == 2 || event.button == 3) { 
		event.cancelBubble = true 
		event.returnValue = false; 
		return false; 
	} 
} 
if (document.layers) { 
	document.captureEvents(Event.MOUSEDOWN); 
} 
document.oncontextmenu=nocontextmenu;
document.onmousedown = norightclick; 
document.onmouseup = norightclick; 

function disableselect (e) { 
	return false 
} 
function reEnable(){ 
	return true 
} 


// inicio - Branch CARTv0711-02 - alterado Leo Goulart 29/11/2007
  /**
   * script para permitir O usuario digitar somente caracters pre definidos ou seja exceto caracteres especiais
   *  onkeypress="return vetaKeysEspeciais(event)"
   */

     function vetaKeysEspeciais(e){


	     /**
	     * var global correctos >> matriz que contem os caracteres permitidos pelo usuario
	     */
	     var correctos = new Array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","x","z","y","w",
	     "A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","X","Z","Y","W","1","2","3","4","5","6","7","8","9","0"," ");
	
	     /***
	     * var global estado     >> variable booleana, true si el caracter introducido es correcto y false en caso contrario
	     * var global codigoTecla   >>  valor ASCII de la tacla pulsada para cada navegador (son diferentes)
	     * var global cadenaTecla  >>  cadena que representa a la tecla pulsada (igual para todos los navegadores)
	     */
	     var estado=false;
	     var codigoTecla, cadenaTecla;   
	     
         estado=false;

         if(document.all)
         {
             codigoTecla = event.keyCode
             cadenaTecla = (String.fromCharCode(event.keyCode));
         }
         else if(document.layers)
         {
             codigoTecla = e.which
             cadenaTecla = String.fromCharCode(e.which);
         }
         else if(document.getElementById)
         {
             codigoTecla = (window.Event) ? e.which : e.keyCode;
             cadenaTecla=(String.fromCharCode(codigoTecla));
         }

         for(i=0;i<correctos.length;i++)
         {
             if(cadenaTecla==correctos[i])
                 estado=true;
         }

         if(estado==false)
         {
             if(document.all)
                 event.returnValue = false;
             else
                 return false;
         }
     }
           
// inicio - Branch CARTv0711-02 - alterado Leo Goulart 29/11/2007


//Pedro - 18/02/2008
//::start
//Subtistitui os caracteres acentuados pelo equivalentes sem acento  
function vetaKeysEspeciais2(e){


 /**
 * var global correctos >> matriz que contem os caracteres permitidos pelo usuario
 */
 var correctos = new Array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","x","z","y","w",
 "A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","X","Z","Y","W","1","2","3","4","5","6","7","8","9","0"," ");

 var acentos = new Array(new Array("ã", "a"), new Array("á", "a"), new Array("à", "a"), new Array("â", "a"), new Array("ä", "a"),
                         new Array("Ã", "A"), new Array("Á", "A"), new Array("À", "A"), new Array("Â", "A"), new Array("Ä", "A"),
                         new Array("é", "e"), new Array("è", "e"), new Array("ê", "e"), new Array("ë", "e"), 
                         new Array("É", "E"), new Array("È", "E"), new Array("Ê", "E"), new Array("Ë", "E"),
                         new Array("í", "i"), new Array("ì", "i"), new Array("î", "i"), new Array("ï", "i"),
                         new Array("Í", "I"), new Array("Ì", "I"), new Array("Î", "I"), new Array("Ï", "I"),
                         new Array("õ", "o"), new Array("ó", "o"), new Array("ò", "o"), new Array("ô", "o"), new Array("ö", "o"),
                         new Array("Õ", "O"), new Array("Ó", "O"), new Array("Ò", "O"), new Array("Ô", "O"), new Array("Ö", "O"),
                         new Array("ú", "u"), new Array("ù", "u"), new Array("û", "u"), new Array("ü", "u"),
                         new Array("Ú", "U"), new Array("Ù", "U"), new Array("Û", "U"), new Array("Ü", "U"),
                         new Array("ñ", "n"), new Array("Ñ", "N"),
                         new Array("ç", "c"), new Array("Ç", "C")
                         );

 /***
 * var global estado     >> variable booleana, true si el caracter introducido es correcto y false en caso contrario
 * var global codigoTecla   >>  valor ASCII de la tacla pulsada para cada navegador (son diferentes)
 * var global cadenaTecla  >>  cadena que representa a la tecla pulsada (igual para todos los navegadores)
 */
 var estado=false;
 var codigoTecla, cadenaTecla;   
 
    estado=false;

    if(document.all)
    {
        codigoTecla = event.keyCode
        cadenaTecla = (String.fromCharCode(event.keyCode));
    }
    else if(document.layers)
    {
        codigoTecla = e.which
        cadenaTecla = String.fromCharCode(e.which);
    }
    else if(document.getElementById)
    {
        codigoTecla = (window.Event) ? e.which : e.keyCode;
        cadenaTecla=(String.fromCharCode(codigoTecla));
    }

    for(i=0;i<correctos.length;i++)
    {
        if(cadenaTecla==correctos[i])
            estado=true;
    }

    for(i=0;i<acentos.length;i++)
    {
        if(cadenaTecla==acentos[i][0]) {

            estado=true;

		    if(document.all)
		    {
		        event.keyCode = acentos[i][1].charCodeAt(0);
		    }
		    else if(document.layers)
		    {
		        e.which = acentos[i][1].charCodeAt(0);
		    }
		    else if(document.getElementById)
		    {
		        if (window.Event) { 
		        	e.which = acentos[i][1].charCodeAt(0);
		        } else {
		        	e.keyCode = acentos[i][1].charCodeAt(0); 
		        }
		    }
        }    
    }

    if(estado==false)
    {
        if(document.all)
            event.returnValue = false;
        else
            return false;
    }
}
//::end
