﻿function CreateHttp()
{
    var xmlhttp;
    try
    {
	    xmlhttp = new XMLHttpRequest();
    }
    catch(e)
    {
	    try
	    {
		    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	    }
	    catch(ex)
	    {
		    try
		    {
			    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		    }
		    catch(exc)
		    {
			    alert('Este browser não suporta Ajax!');
			    return false;
		    }
	    }
    }
    xmlhttp.onreadystatechange = function()
    {
	    if (xmlhttp.readyState == 4)
	    {
		    document.myForm.time.value=xmlHttp.responseText;
	    }
    }
    return xmlhttp;

}
function BuscaCargos()
{
    var xmlHttp = CreateHttp();
    Pronto = false;
    xmlHttp.open("POST","ListaCargos.aspx",true);
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.onreadystatechange = function()
    {
        switch(xmlHttp.readyState)
        {
            case 0:
                document.getElementById("car").style.display = "block";
                break;
            case 1:
                document.getElementById("car").style.display = "block";
                break;
            case 2:
                document.getElementById("car").style.display = "block";
                break;
            case 3:
                document.getElementById("car").style.display = "block";
                break;
            case 4:
                document.getElementById("car").style.display = "none";
                document.getElementById("response").innerHTML = xmlHttp.responseText;
		        document.getElementById("lbxCargosRelacionados").style.visibility = "hidden";
		        document.getElementById("response").style.display = "block";
		        
		        if(document.getElementById("hdfTotalReg")!=null){
		            intTotal = Number(document.getElementById("hdfTotalReg").value);
		        }else{
		            intTotal = 0;
		        }
		        intItem = 0
		        Pronto = true;
                break;         
        }
//	    if(xmlHttp.readyState == 4)
//	    {
//		    document.getElementById("response").innerHTML = xmlHttp.responseText;
//		    document.getElementById("lbxCargosRelacionados").style.visibility = "hidden";
//		    document.getElementById("response").style.display = "block";
//		    intTotal = Number(document.getElementById("hdfTotalReg").value);
//		    intItem = 0
//		    Pronto = true;
//	    }
    }
    
    xmlHttp.send("prefixtest=" + document.getElementById("txtCargo").value);
}
function PopulaCargos(ev,obj)
{
	var key = ev.keyCode;
	var campo;
	if(ev.srcElement){
	    campo = ev.srcElement.name;
	}else{
	    campo = ev.target.name;
	}
	if((campo=='txtCargo')||(campo=='cboMoeda')){
	    switch(key)
	    {
		    case TAB:
		        if((Pronto == true)&&(document.getElementById("txtCargo").value!='')){
		            //DefineValor(obj);
		            Soma(obj);
		            Fecha(document.getElementById('response'));
		            BuscaCargosRelacionados(true);
		        }
		        break;
    		
		    case ENTER:
		        Submit = false;
		        if((Pronto == true)&&(document.getElementById("txtCargo").value!='')){
		            //DefineValor(obj); 
		            Soma(obj);
		            Fecha(document.getElementById('response'));
		            BuscaCargosRelacionados(true);	            
		            //document.getElementById("txtCargo").value='';
		            //document.getElementById("lbxCargosRelacionados").style.visibility = "visible";
		            //document.getElementById("lbxCargosRelacionados").innerHTML="";
		        }
		        break;
    		 
		    case ESC,DELETE:
		        if(Pronto == true){
		            Fecha(document.getElementById('response'));
		            document.getElementById("txtCargo").value='';
		            document.getElementById("lbxCargosRelacionados").style.visibility = "visible";
		            document.getElementById("lbxCargosRelacionados").innerHTML="";
		        }
		        break;
    		    
		    case KEYUP:
		        if((Pronto == true)&&(document.getElementById("txtCargo").value!='')){
		            //Subtrai(obj)
		            //document.getElementById('response').style.top = String(Number(String(document.getElementById('response').style.top).replace('px','')) - 10) + 'px';
		        }
		        break;

		    case KEYDN:
		        if((Pronto == true)&&(document.getElementById("txtCargo").value!='')){
		            //Soma(obj);
		            //document.getElementById('response').offsetHeight=Number(document.getElementById('response').offsetHeight)+10;
		            //document.getElementById('response').style.top = String(Number(String(document.getElementById('response').style.top).replace('px','')) + 10) + 'px';
		            
		        }
		        break;
		    default:
		        if ((key != 27) &&    // 'escape'     
                    (key != 9) &&     // 'tab'        
                    (key != 32) &&    // 'space'      
                    (key != 13) &&    // 'return'     
                    (key != 13) &&    // 'enter'      
    //                (key != 8) &&     // 'backspace'  
                    (key != 145) &&   // 'scrolllock' 
                    (key != 145) &&   // 'scroll_lock'
                    (key != 145) &&   // 'scroll'     
                    (key != 20) &&    // 'capslock'   
                    (key != 20) &&    // 'caps_lock'  
                    (key != 20) &&    // 'caps'       
                    (key != 144) &&   // 'numlock'    
                    (key != 144) &&   // 'num_lock'   
                    (key != 144) &&   // 'num'        
                    (key != 19) &&    // 'pause'      
                    (key != 19) &&    // 'break'      
                    (key != 45) &&    // 'insert'     
                    (key != 36) &&    // 'home'       
                    (key != 46) &&    // 'delete'     
                    (key != 35) &&    // 'end'        
                    (key != 33) &&    // 'pageup'     
                    (key != 33) &&    // 'page_up'    
                    (key != 33) &&    // 'pu'         
                    (key != 34) &&    // 'pagedown'   
                    (key != 34) &&    // 'page_down'  
                    (key != 34) &&    // 'pd'         
                    (key != 37) &&    // 'left'       
                    (key != 38) &&    // 'up'         
                    (key != 39) &&    // 'right'      
                    (key != 40) &&    // 'down'       
                    (key != 112) &&   // 'f1'         
                    (key != 113) &&   // 'f2'         
                    (key != 114) &&   // 'f3'         
                    (key != 115) &&   // 'f4'         
                    (key != 116) &&   // 'f5'         
                    (key != 117) &&   // 'f6'         
                    (key != 118) &&   // 'f7'         
                    (key != 119) &&   // 'f8'         
                    (key != 120) &&   // 'f9'         
                    (key != 121) &&   // 'f10'        
                    (key != 122) &&   // 'f11'        
                    (key != 123) ){   // 'f12'    
                    if(document.getElementById("txtCargo").value==''){
                        Fecha(document.getElementById('response'));
		                document.getElementById("txtCargo").value='';
		                document.getElementById("lbxCargosRelacionados").style.visibility = "visible";
		                document.getElementById("lbxCargosRelacionados").innerHTML="";
		            }else{
		                BuscaCargos();
		            }
		        }
		        break;
	    }
	}
}
function BuscaCargosRelacionados(AsyncState)
{
    var xmlHttp = CreateHttp();
    xmlHttp.open("POST","ListaCargosRelacionados.aspx",AsyncState);
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.onreadystatechange = function()
    {
	    if(xmlHttp.readyState == 4)
	    {
			var strConteudo = xmlHttp.responseText;
			//alert(strConteudo);
			if(strConteudo.indexOf("@@Cargo_Inexistente") > -1)
			{
				alert('Cargo não encontrado. Escolha um cargo da lista sugerida.');
				document.getElementById("txtCargo").focus();
				document.getElementById("txtCargo").value = "";
			}
			else
			{
				document.getElementById("cargos_relacionados").innerHTML = xmlHttp.responseText;
				for(var x = 0; x < document.getElementById("lbxCargosRelacionados").options.length; x++)
				{
					try{
						var lbxCargosRelacionadosArry = String(RecuperaCookie("lbxCargosRelacionados")).split(',');
						if(lbxCargosRelacionadosArry){
							for(var y = 0; y < lbxCargosRelacionadosArry.length; y++){
								if(document.getElementById("lbxCargosRelacionados").options[x].value == lbxCargosRelacionadosArry[y]){
									document.getElementById("lbxCargosRelacionados").options[x].selected = true;
								}
							}
						}
					}catch(Ex){
						document.getElementById("lbxCargosRelacionados").options[0].selected = true;
					}
				}
				document.getElementById("lbxCargosRelacionados").focus();
			}
	    }
    }
    xmlHttp.send("codcargo=" + document.getElementById("hdfCodCargo").value);
}
function BuscaRegiao(AsyncState)
{
    var xmlHttp = CreateHttp();
    xmlHttp.open("POST","ListaRegioes.aspx",AsyncState);
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.onreadystatechange = function()
    {
	    if(xmlHttp.readyState == 4)
	    {
		    document.getElementById("regioes").innerHTML = xmlHttp.responseText;
		    if((document.getElementById("hdfRegiao").value!='')&&(document.getElementById("hdfRegiao").value!=null)){
		        for(var x = 0; x < document.getElementById("cboRegiao").options.length; x++)
                {
                    if(document.getElementById("cboRegiao").options[x].value == document.getElementById("hdfRegiao").value)
                        document.getElementById("cboRegiao").options[x].selected = true;
                }
            }else{
		        document.getElementById("cboRegiao").options[0].selected = true;
		    }
		    if(AsyncState==true){ BuscaCidade(true); };
	    }
    }
    xmlHttp.send("cboEstado=" + document.getElementById("cboEstado")[document.getElementById("cboEstado").selectedIndex].value);
}
function BuscaCidade(AsyncState)
{
    var xmlHttp = CreateHttp();
    xmlHttp.open("POST","ListaCidades.aspx",AsyncState);
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.onreadystatechange = function()
    {
	    if(xmlHttp.readyState == 4)
	    {
	        document.getElementById("hdfRegiao").value = document.getElementById("cboRegiao").options[document.getElementById("cboRegiao").selectedIndex].value;
		    document.getElementById("cidades").innerHTML = xmlHttp.responseText;
		    
		    var cboCidade = String(RecuperaCookie("cboCidade")).split(',');
		    if(cboCidade.length>0){
		        for(var x = 0; x < document.getElementById("cboCidade").options.length; x++)
                {
                    for(var y = 0; y < cboCidade.length; y++)
                    {
                        if(document.getElementById("cboCidade").options[x].value == cboCidade[y])
                            document.getElementById("cboCidade").options[x].selected = true;
                    }
                }   
            }else{
		        document.getElementById("cboCidade").options[0].selected = true;
		    }
		    loadPage(2);
	    }
    }
    xmlHttp.send("cboRegiao=" + 
        document.getElementById("cboRegiao").options[document.getElementById("cboRegiao").selectedIndex].value 
        + "&cboEstado=" + 
        document.getElementById("cboEstado").options[document.getElementById("cboEstado").selectedIndex].value);
}
function GravaCidade()
{
    document.getElementById("hdfCidade").value = document.getElementById("cboCidade").options[document.getElementById("cboCidade").selectedIndex].value;
}
function MostraOpcoes()
{    
    if(document.getElementById("pnlOpcoesAvancadas").style.display == "none")
    {
        document.getElementById("pnlOpcoesAvancadas").style.display = "block";
        document.getElementById("lkbOpcoesAvancadas").innerHTML = "<img border='0' src='imagens/bt_menos.gif' />";
        GravaCookie("pnlOpcoesAvancadas", "true", 24);
    }
    else
    {
        document.getElementById("pnlOpcoesAvancadas").style.display = "none";
        document.getElementById("lkbOpcoesAvancadas").innerHTML = "<img border='0' src='imagens/bt_mais.gif' />";
        GravaCookie("pnlOpcoesAvancadas", "false", 24);
    }
}
function GravaCookie(name, value, time_exp){
	if(time_exp != "" ){
	   var exp = new Date();
	   var expira = exp.getTime() + (time_exp * 3600000);
	   exp.setTime(expira);
	   document.cookie = "" + name + "=" + value;// + "; expires=" + exp.toGMTString();			   
	}  
}
function RecuperaCookie(name){
  var cookieValue = "";
  var search = name + "=";
  if(document.cookie.length > 0){ 
    offset = document.cookie.indexOf(search);
    if (offset != -1){ 
      offset += search.length;
      end = document.cookie.indexOf(";", offset);
      if (end == -1) end = document.cookie.length;
      cookieValue = unescape(document.cookie.substring(offset, end))
    }
  }
  return cookieValue;
}
function RedefinirPesquisa(acao)
{
    //Gravar
    if(acao == 1)
    {
        var cargosRelacionados = new String('');
        for(var x = 0; x < document.getElementById("lbxCargosRelacionados").options.length; x++)
        {
            if(document.getElementById("lbxCargosRelacionados").options[x].selected == true)
                cargosRelacionados += document.getElementById("lbxCargosRelacionados").options[x].value + ",";            
        }    
        GravaCookie("lbxCargosRelacionados", cargosRelacionados, 24);
        GravaCookie("txtCargo", document.getElementById("txtCargo").value, 24);
        GravaCookie("hdfCodCargo", document.getElementById("hdfCodCargo").value, 24);        
        GravaCookie("hdfRegiao", document.getElementById("hdfRegiao").value, 24);
        var cidades = new String('');
        for(var x = 0; x < document.getElementById("cboCidade").options.length; x++)
        {
            if(document.getElementById("cboCidade").options[x].selected == true)
                cidades += document.getElementById("cboCidade").options[x].value + ",";            
        }    
        //alert(cidades);
        GravaCookie("cboCidade", cidades, 24);
    }
    //Recuperar
    else if(acao == 2)
    {
        var txtCargo = RecuperaCookie("txtCargo");
        var pnlOpcoesAvancadas = RecuperaCookie("pnlOpcoesAvancadas");
        var hdfCodCargo = RecuperaCookie("hdfCodCargo");
        var hdfRegiao = RecuperaCookie("hdfRegiao");
        
        document.getElementById("txtCargo").value = txtCargo;
        document.getElementById("hdfCodCargo").value = hdfCodCargo;
        if(hdfCodCargo != null && hdfCodCargo != "")
        {
            BuscaCargosRelacionados(true);  
        }
     
        document.getElementById("hdfRegiao").value = hdfRegiao;
        BuscaRegiao(true);
        
        //alert(pnlOpcoesAvancadas);
//        if(pnlOpcoesAvancadas != "")
//        {
//            if(pnlOpcoesAvancadas == "true")
//            {
//                document.getElementById("pnlOpcoesAvancadas").style.display = "block";
//                document.getElementById("lkbOpcoesAvancadas").innerHTML = "<img border='0' src='imagens/bt_menos.gif' />";
//            }
//            else if(pnlOpcoesAvancadas == "false")
//            {
//                document.getElementById("pnlOpcoesAvancadas").style.display = "none";
//                document.getElementById("lkbOpcoesAvancadas").innerHTML = "<img border='0' src='imagens/bt_mais.gif' />";
//            }
//        }
    }
    else if(acao == 3)
    {
        document.getElementById("opcoes2").style.display = "block";
        RedefinirPesquisa(2);
    }
}
var intItem = new Number(0);
var intTotal = new Number(0);
var TAB = 9;
var ESC = 27;
var KEYUP = 38;
var KEYDN = 40;
var ENTER = 13;
var DELETE = 46;
var Pronto = false;
var Submit = true;
    
function DefineValor(obj)
{
    obj.value = document.getElementById('a_'+String(intItem)).innerText;
}
function Selecionado(obj)
{
    document.getElementById('a_'+String(intItem)).style.cursor = 'pointer';
    document.getElementById('hdfCodCargo').value = document.getElementById('hdfCodCargo_'+String(intItem)).value;
    document.getElementById('a_'+String(intItem)).style.backgroundColor = '#FFE1A4';
    if (String(document.getElementById('a_'+String(intItem)).innerText) == 'undefined'){
        obj.value = String(String(document.getElementById('a_'+String(intItem)).innerHTML).replace('<td>','').replace('</td>','').substring(0,String(document.getElementById('a_'+String(intItem)).innerHTML).replace('<td>','').replace('</td>','').indexOf('<')));       
    }else{
        obj.value = document.getElementById('a_'+String(intItem)).innerText;
    }
    //if(document.getElementById('hdfCodCargo_'+String(intItem)).scrollIntoView){ 
    //    document.getElementById('hdfCodCargo_'+String(intItem)).scrollIntoView('top'); 
    //}

}
function NaoSelecionado(i)
{
    document.getElementById('a_'+String(i)).style.backgroundColor = '#fef9e7';
}

function Subtrai(obj){
    intItem--;
    intItem=(intItem<=0)?intTotal:intItem;
    for(i=1;i<=intTotal;i++){
        if ((intItem)==i)
            Selecionado(obj);
        else
            NaoSelecionado(i);
    }
}
function Soma(obj){
    intItem++;
    intItem=(intItem>=(intTotal+1))?1:intItem;
    for(i=1;i<=intTotal;i++){
        if ((intItem)==i)
            Selecionado(obj);
        else
            NaoSelecionado(i);
    }
}
function MudaSelecionado(obj,obj2){
    intItem = Number((obj.id.split('_'))[1]);
    for(i=1;i<=intTotal;i++){
        if ((intItem)==i)
            Selecionado(obj2)
        else
            NaoSelecionado(i);
    }
}
function MudaDesSelecionado(obj,obj2){
    intItem = Number((obj.id.split('_'))[1]);
    for(i=1;i<=intTotal;i++){
        if ((intItem)==i)
            Selecionado(obj2)
        else
            NaoSelecionado(i);
    }
}
function Abre(obj)
{
    obj.style.display='block';
}
function Fecha(obj)
{
    obj.style.display='none';
}
function ChecaLimite(campo, limite)
{
    //alert("campo : " + campo.name);
    var test=0;
    for(var i = 0;i < parseInt(campo.options.length); i++)
    {
        if(campo.options[i].selected)
        {
            test++;
            if(test>limite)
            {                      
              alert('Selecione no máximo '+ limite + ' opções');  
              campo.options[i].selected = false;
            }            
        }
    }    
}
function scrollUp()
{
    location.href="#top";
}
function loadPage(param)
{
    if(param == 1)
    {
        //document.getElementById("principal").style.visibility = "hidden";
        document.getElementById("showLoading").style.display = "block";
    }
    else
    {
        //document.getElementById("principal").style.visibility = "visible";
        document.getElementById("showLoading").style.display = "none";
    }
}
function setCookie(name, value, expires, path, domain, secure) {
  var curCookie = name + "=" + escape(value) +
      ((expires) ? "; expires=" + expires.toGMTString() : "") +
      ((path) ? "; path=" + path : "") +
      ((domain) ? "; domain=" + domain : "") +
      ((secure) ? "; secure" : "");
  document.cookie = curCookie;
}
function NovaBusca(){ 
 setCookie("lbxCargosRelacionados","","","","","");
 window.location='/empresa_projeto/procura/NovaBusca.asp';
}
function SairLogin(objs){
    if(confirm('Deseja encerrar a sessão?')){	
		window.location.href='logoff.aspx?cUsuarioSuporte=' + objs; 
    }
} 