function openAjax() {
	var ajax;
	try {
		ajax = new XMLHttpRequest();
	} catch(ee) {
		try {
			ajax = new ActiveXObject("Msxml2.XMLHTTP");
		} catch(e) {
			try {
				ajax = new ActiveXObject("Microsoft.XMLHTTP");
			} catch(E) {
				ajax = false;
			}
		}
	}
	return ajax;
}

// cria a fila
fila=[];
ifila=0;

// funcao que carrega uma pagina dentro de um objeto qualquer
function carrega(url, destino){
    // coloca o texto "carregando" no objeto de carregamento
    document.getElementById(destino).innerHTML="Carregando";

    // adiciona o item na fila
    fila[fila.length]=[url,destino];
    
    // se a fila estiver vazia, inicia a execução
    if((ifila+1)==fila.length)ajaxRun();
}
function openEdit(tpo, div){
	carrega('editar/'+tpo+'?id='+id()+'', div);	
}
//Executa a próxima conexão da fila
function ajaxRun(){
    // carrega os dados da pagina da fila
    url        = fila[ifila][0];
    destino    = fila[ifila][1];
    var ajax = openAjax();    
    // carrega a pagina
    ajax.open("POST", url, true);
    
    // headers
    ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=iso-8859-1");
    ajax.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate");
    ajax.setRequestHeader("Cache-Control", "post-check=0, pre-check=0");
    ajax.setRequestHeader("Pragma", "no-cache");

    // ao completar o carregamento
    ajax.onreadystatechange=function() {
        if (ajax.readyState==4){
            // coloca o valor no objeto requisitado
            texto=unescape(ajax.responseText.replace(/\+/g," "));
            document.getElementById(destino).innerHTML=texto;

            // executa a proxima requisição da lista (se existir)
            ifila++;
            if(ifila<fila.length)setTimeout("ajaxRun()",20);
        }
    }
    
    // executa
    ajax.send(url);
}
function vList(PAGE){
	setTimeout("loc('listar','"+PAGE+"')", 2000);
}

function loc(OP, PAGE){
	location.href="?tipo="+PAGE+"&op="+OP+"";
}
function locPrinc(){	
	setTimeout('location.href="?tipo=lstvagas";',3000)
}
function locPrincOp(){	
	setTimeout('location.href="?tipo=lstcur";',3000)
}
function locID(OP, TPO){
	try{
		location.href="admin.php?tipo="+TPO+"&op="+OP+"&id="+id()+"";
	}catch(e) {    		
		alert("Por Favor! Selecione algum registro.");
	}
}
function enviaForm(frmNome, url, destino){	
f = document.getElementById(frmNome);	
var query=url;	
for (i=0;i<f.elements.length;i++){		
query += i==0 ? '?' : '&';	
query += f.elements[i].name + '=' + f.elements[i].value;	
}	
carrega(query, destino);
}

function extraiScript(texto){
//Maravilhosa fun��o feita pelo SkyWalker.TO do imasters/forum
//http://forum.imasters.com.br/index.php?showtopic=165277
    // inicializa o inicio ><
    var ini = 0;
    // loop enquanto achar um script
    while (ini!=-1){
        // procura uma tag de script
        ini = texto.indexOf('<script', ini);
        // se encontrar
        if (ini >=0){
            // define o inicio para depois do fechamento dessa tag
            ini = texto.indexOf('>', ini) + 1;
            // procura o final do script
            var fim = texto.indexOf('</script>', ini);
            // extrai apenas o script
            codigo = texto.substring(ini,fim);
            // executa o script
            //eval(codigo);
            /**********************
            * Alterado por Micox - micoxjcg@yahoo.com.br
            * Alterei pois com o eval n�o executava fun��es.
            ***********************/
            novo = document.createElement("script")
            novo.text = codigo;
            document.body.appendChild(novo);
        }
    }
}

function id(){ 
    var i;
	if (!document.forms[0].radio){
		return false;
	}else{
		if (!document.forms[0].radio.length==1){
			return document.forms[0].radio.value;
		}else{
			for (i=0;i<document.forms[0].radio.length;i++){ 
			   if (document.forms[0].radio[i].checked){
				  break;
				}
			} 
			return document.forms[0].radio[i].value;
		}
	}
} 
function checkradio(tipo, acao, page){
		try{   
			if (id() == false){
				alert("n�o h� regitros!");
			}else{
				if(acao == "deletar"){
					var resposta=confirm('Tem certeza que deseja deletar o registro '+id()+'?');
					if (resposta==true) {					
						carrega('deletar/del.php?tipo='+tipo+'&id='+id()+'', '1');						
					} else {
						alert("opera��o cancelada!");
					}
					renew();
				}else if(acao == "atualizar"){					
					if (resposta==true) {					
						carrega('gerencia/'+page+'?tipo='+tipo+'&id='+id()+'', 'administracao');					
					} 					
				}
				else if(acao == "visualizar"){					
					if (resposta==true) {					
						carrega('gerencia/'+page+'?tipo='+tipo+'&id='+id()+'', 'administracao');					
					} 					
				}else if(acao == "liberar"){					
					if (resposta==true) {					
						carrega('cadastros/recebimentos/'+page+'?id='+id()+'', 'ok');					
					} 					
				}
			}
		}catch(e) {    		
			alert("Por Favor! Selecione algum registro.");
		}
	}	
	function alertaId(){ 
    var i;
	if (!document.forms[0].radio){
		return false;
	}else{
		if (!document.forms[0].radio.length==1){
			return document.forms[0].radio.value;
		}else{
			for (i=0;i<document.forms[0].radio.length;i++){ 
			   if (document.forms[0].radio[i].checked){
				  break;
				}
			} 
			return document.forms[0].radio[i].value;
		}
	}
	} 
	function mostra(){
	var um = document.getElementById("1");
	var dois = document.getElementById("2");
	var tres = document.getElementById("3");
	document.getElementById("edit").className='TabbedPanelsTab TabbedPanelsTabSelected';	
	document.getElementById("list").className='TabbedPanelsTab';
	document.getElementById("cad").className='TabbedPanelsTab';
	tres.className='TabbedPanelsContent TabbedPanelsContentVisible';
	um.className='TabbedPanelsContent';
	um.style.display='none';
	dois.style.display='none';
	tres.style.display ='block';
}
function renew(){ 
 setTimeout('window.history.go(0);',2000);
}


function action(lib){
	var newid = id();
	var liberado = document.getElementById('ok').src;
	var ok = liberado.substr(liberado.length - 6,2);
	var msg = document.getElementById('msg');

	if((ok == "ok") && (lib == "liberar")){
		msg.innerHTML = "Este curriculo já está liberado!";
		setTimeout('renew()', 3000);
	}else if((ok == "no") && (lib == "bloquear")){
		msg.innerHTML = "Este curriculo já está bloqueado!";
		setTimeout('renew()', 3000);
	}else{
	if(lib == "liberar"){
		var resposta=confirm('Tem certeza que deseja Liberar este curriculo?');
	}else if(lib == "bloquear"){
		var resposta=confirm('Tem certeza que deseja Bloquear este curriculo?');
	}
	
	if (resposta==true) {
		carrega('cadastros/recebimentos/RecebeCurriculo.php?id='+newid+'&lb='+lib+'', 'lib_'+newid+'');
	} else {
	// se não confirmar, não faz nada.
	}

		
	}
	
}
function gE(ID) {
	return document.getElementById(ID);
}

// Utilizado para evitar de digitar: document.getElementsByTagName toda hora, tornando o processo mais pr�tico
function gEs(tag) {
	return document.getElementsByTagName(tag);
}
function atualizaRelatorio(PAGE, DIV) {
	var ajax = openAjax();
	ajax.open('GET', PAGE, true);
	ajax.onreadystatechange = function() {
		var conteudo = gE(DIV);
		
		if (ajax.readyState == 4) {
			if (ajax.status == 200) {
				conteudo.innerHTML = ajax.responseText;
			} 
		}
	}
	ajax.send(null);
}

function liberar(lib, nome){
	geb = 'ok'+id();
	
	var liberado = document.getElementById(geb).src;
	var ok = liberado.substr(liberado.length - 6,6);	
	var msg = document.getElementById('msg');
	
	if((ok == "ok") && (lib == "liberar")){
		msg.innerHTML = 'Este '+nome+' já está destacado!';
		setTimeout('renew()', 3000);
	}else if((ok == "no") && (lib == "bloquear")){
		msg.innerHTML = 'Este '+nome+' já está năo destacado!';
		setTimeout('renew()', 3000);
	}else{
	if(lib == "liberar"){
		var resposta=confirm('Tem certeza que deseja liberar esse '+nome+'?');
	}else if(lib == "bloquear"){
		var resposta=confirm('Tem certeza que deseja bloquar esse '+nome+'?');
	}
	
	if (resposta==true) {
		if(nome == 'Superinforme'){
			carrega('cadastros/recebimentos/RecebeLib'+nome+'.php?id='+id()+'&lb='+lib+'', 'lib_'+id()+'');
		}else{
		carrega('cadastros/recebimentos/Recebe'+nome+'.php?id='+id()+'&lb='+lib+'', 'lib_'+id()+'');
		}
	} 
		
	}
	
}





var tam = 12;

function mudaFonte( tipo )
{
  if( tipo == 'mais' )
  {
    if( tam < 16 ) tam += 2 ;    			 
  }
  else
  {
    if( tam > 9 ) tam -= 2 ;
  }
  if( document.getElementById( 'noticia' ) )
    mudaFonteRecursiva( tipo , document.getElementById( 'noticia' ) ) ;
}

function mudaFonteRecursiva( tipo , domElement )
{		
  for( var i = 0 ; i < domElement.childNodes.length ; i++ )
  {
    mudaFonteRecursiva( tipo , domElement.childNodes.item( i )  ) ;
  }
  if( domElement.style )
    domElement.style.fontSize = tam+'px';
}
function m_CNPJ(campo,tammax) {
	var vr = campo.value;
		vr = vr.replace( "-", "" );
		vr = vr.replace( "/", "" );
		vr = vr.replace( ".", "" );
		vr = vr.replace( ".", "" );
	var tam = vr.length;
		if (tam < tammax) {
			tam = vr.length + 1 ; 
		}
			tam = tam - 1;
		if ( (tam > 2) && (tam <= 5) ) {
			vr = vr.substr( 0, tam - 1 ) + '-' + vr.substr( tam - 1, tam ) ; 
		}
		if ( (tam >= 6) && (tam <= 8) ) {
			vr = vr.substr( 0, tam - 5 ) + '/' + vr.substr( tam - 5, 4 ) + '-' + vr.substr( tam - 1, tam ) ; 
		}
		if ( (tam >= 9) && (tam <= 11) ) {
			vr = vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '/' + vr.substr( tam - 5, 4 ) + '-' + vr.substr( tam - 1, tam ) ; 
		}
		if ( (tam >= 12) && (tam < 14) ) {
			vr = vr.substr( 0, tam - 11 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '/' + vr.substr( tam - 5, 4 ) + '-' + vr.substr( tam - 1, tam ) ; 
		}
		campo.value = vr;
}
//-----> Fim Validaçăo do CNPJ

//-----------> MÁSCARA CPF: <-------------\\
function m_CPF(campo,tammax) {
	var vr = campo.value;
		vr = vr.replace( "-", "" );
		vr = vr.replace( ".", "" );
		vr = vr.replace( ".", "" );
	var tam = vr.length;
	if (tam < tammax) { 
		tam = vr.length + 1; 
	}
		tam = tam - 1;
	if ( (tam > 2) && (tam <= 11) ) {
		vr = vr.substr( 0, tam - 1 ) + '-' + vr.substr( tam - 1, tam ); 
	}
	if ( (tam == 10) ) {
		vr = vr.substr( 0, tam - 7 ) + '.' + vr.substr( tam - 7, 3 ) + '.' + vr.substr( tam - 4, tam ); 
	}
		campo.value = vr;
}
//--------> FIM MÁSCARA CPF <---------\\ 

//----------------> MÁSCARRA CEP <--------------\\
function m_CEP(campo,tammax) {
	var vr = campo.value;
		vr = vr.replace( "-", "" );
		vr = vr.replace( ".", "" );
	var tam = vr.length;
	if (tam < tammax) {
		tam = vr.length + 1; 
	}
		tam = tam - 1;
	if ( (tam > 2) && (tam <= 8) ) {
		vr = vr.substr( 0, tam - 2 ) + '-' + vr.substr( tam - 2, tam ); 
	}
	if ( (tam == 7) ) {
		vr = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, tam ); 
	}
		campo.value = vr;
}
//-------------> FIM MÁSCARA CEP <--------------\\

//-------------> MÁSCARA DATA: <----------------\\
// APLICAÇĂO DA FUNÇĂO = onKeyPress="m_DATA(this,8,event); \\
function m_DATA(campo,tammax,tecla) {
	if(typeof(tecla) == 'undefined')
		var tecla = window.event;
		var codigo = (tecla.which ? tecla.which : tecla.keyCode ? tecla.keyCode : tecla.charCode);
		var vr = campo.value;
			vr = vr.replace( "/", "" );
			vr = vr.replace( "/", "" );
		var tam = vr.length;
	if (tam < tammax) { 
		tam = vr.length + 1; 
	}
	if (codigo == 8) { 
		tam = tam - 1; 
	}
		tam = tam - 1;
	if ( (tam >= 2) && (tam < 3) ) {
		vr = vr.substr( 0, tam - 0 ) + '/' + vr.substr( tam - 0, 2 ); 
	}
	if ( (tam >= 3) && (tam < 4) ) {
		vr = vr.substr( 0, tam - 1 ) + '/' + vr.substr( tam - 1, 2 );
	}
	if (tam == 4) {
		vr = vr.substr( 0, tam - 2 ) + '/' + vr.substr( tam - 2, 2 ) + '/' + vr.substr( tam - 0, 5 ); 		
	}
	if (tam == 5) {
		vr = vr.substr( 0, tam - 3 ) + '/' + vr.substr( tam - 3, 2 ) + '/' + vr.substr( tam - 1, 6 ); 
	}
	if (tam == 6) {
		vr = vr.substr( 0, tam - 4 ) + '/' + vr.substr( tam - 4, 2 ) + '/' + vr.substr( tam - 2, 7 ); 
	}
	if (tam == 7) {
		vr = vr.substr( 0, tam - 5 ) + '/' + vr.substr( tam - 5, 2 ) + '/' + vr.substr( tam - 3, 8 ); 
	}
		campo.value = vr;
}
//-------------> FIM MÁSCARA DATA <----------------\\

//-------------> VALIDAÇĂO DO TELEFONE <------------\\
function formata(objForm, strField, sMask, evtKeyPress){
	var i, nCount, sValue, fldLen, mskLen,bolMask, sCod, nTecla;
	if(window.event) { // Internet Explorer
		nTecla = evtKeyPress.keyCode; 
	} else 
	if(evtKeyPress.which) { // Nestcape
		nTecla = evtKeyPress.which;
	}
	
	sValue = objForm[strField].value;
      sValue = sValue.toString().replace( "-", "" );
      sValue = sValue.toString().replace( "-", "" );
      sValue = sValue.toString().replace( ".", "" );
      sValue = sValue.toString().replace( ".", "" );
      sValue = sValue.toString().replace( "/", "" );
      sValue = sValue.toString().replace( "/", "" );
      sValue = sValue.toString().replace( "(", "" );
      sValue = sValue.toString().replace( "(", "" );
      sValue = sValue.toString().replace( ")", "" );
      sValue = sValue.toString().replace( ")", "" );
      sValue = sValue.toString().replace( " ", "" );
      sValue = sValue.toString().replace( " ", "" );
	  sValue = sValue.toString().replace( ":", "" );
      fldLen = sValue.length;
      mskLen = sMask.length;
      	i = 0;
      	nCount = 0;
      	sCod = "";
      	mskLen = fldLen;
     if (nTecla != 8) { // backspace
	 // números de 0 a 9 / APENAS NÚMEROS
      	if (sMask.charAt(i-1) == "9") { // apenas números...
      		return ((nTecla > 47) && (nTecla < 58)); 
		} else { // qualquer caracter...
      		while (i <= mskLen) {
      			bolMask = ((sMask.charAt(i) == "-") || (sMask.charAt(i) == ":") || (sMask.charAt(i) == ".") || (sMask.charAt(i) == "/"))
	  			bolMask = bolMask || ((sMask.charAt(i) == "(") || (sMask.charAt(i) == ")") || (sMask.charAt(i) == " "))
      			if (bolMask) {
      				sCod += sMask.charAt(i);
      				mskLen++; 
				} else {
      				sCod += sValue.charAt(nCount);
      				nCount++;
      			}
     				i++;
      		}
      		objForm[strField].value = sCod;
      		return true;
      } 
	} else {
   		return true;
	}
} 
//---------> FIM DA VALIDAÇĂO DO TELEFONE <------------//

//--------------> SOMENTE NUMEROS <-------------------\\
function v_NR(tecla){
if(typeof(tecla) == 'undefined')
	var tecla = window.event;
	var codigo = (tecla.which ? tecla.which : tecla.keyCode ? tecla.keyCode : tecla.charCode);
// permite números, 8=backspace, 46=del e 9=tab
	if ( (codigo >= 48 && codigo <= 57) || (codigo >= 96 && codigo <= 105) || codigo == 8 || codigo == 46 || codigo == 9){ 
		return true; 
	} else { 
		alert("Apenas números săo permitidos!"); 
		return false;
	}
}
//------------> FIM SOMENTE NÚMEROS <---------------\\

// ----------- VALIDADÇĂO DO RELATORIO -------------------//
function valida_relatorionegociacao(){
		if (document.frmpesquisa.cliente.value == ""){
			alert("Para emitir o Relatório é Preciso selecionar um cliente!");
			document.frmpesquisa.cliente.focus();
			return false;
		} else {
			document.frmpesquisa.submit();
		}
	}
// -------------- FIM VALIDAÇĂO ---------------------//

// validaçăo cfop //
function m_CFOP(campo,tammax) {
	var vr = campo.value;
		 vr = vr.replace(".", "");
	var tam = vr.length
	if (tam < tammax) { 
		tam = vr.length + 1; 
	}
		tam = tam;
	if ( (tam == 4) ) {
		vr = vr.substr( 0, tam - 3 ) + '.' + vr.substr( tam - 3, tam ); 
	}
	campo.value = vr;
}

function validaFormulario(form, pag, ret){
  for (i=0;i<form.length;i++){
  if (form[i].value == ""){
    if (form[i].title.length > 0){
        alert("O campo "+ form[i].title +" é de preenchemento obrigatório!");
        form[i].focus();
		  form[i].style.border='solid 1px #ff0000';
        return false;
    } 
   }else {
		form[i].style.border='solid 1px #5c8c17';
	}
  } 
		return true;
		
}

// FUNÇĂO EXCLUIR
function validaExcluir(campo){
	var pergunta = window.confirm("Tem certeza que Deseja Excluir!");
	if(pergunta){
		campo.submit();
	} else {
		return false;	
	}
}
function validaEmail(mail){
    var er = new RegExp(/^([0-9,a-z,A-Z]+)([.,_]([0-9,a-z,A-Z]+))*[@]([0-9,a-z,A-Z]+)([.,_,-]([0-9,a-z,A-Z]+))*[.]([0-9,a-z,A-Z]){2}([0-9,a-z,A-Z])?$/);
    if(typeof(mail) == "string"){
        if(er.test(mail)){
				return true;
		  }
    }else if(typeof(mail) == "object"){
        if(!er.test(mail.value)){
			  alert("E-mail Inválido!");
			  mail.focus(mail);
			  mail.style.border='solid 1px #ff0000';
			  mail.value = "";
           return true;
        } else {
			  mail.style.border='solid 1px #5c8c17';
		  }
    }else{
        return false;
    }
}

function validaCNPJ(cnpj) {
Cx = document.getElementById(cnpj);
CNPJ = document.getElementById(cnpj).value;
erro = new String;
if (CNPJ.length < 18) erro += "E' necessarios preencher corretamente o numero do CNPJ! \n\n";
Cx.focus();
if ((CNPJ.charAt(2) != ".") || (CNPJ.charAt(6) != ".") || (CNPJ.charAt(10) != "/") || (CNPJ.charAt(15) != "-")){
if (erro.length == 0) erro += "E' necessarios preencher corretamente o numero do CNPJ! \n\n";
Cx.focus();
}
//substituir os caracteres que nao sao numeros
if(document.layers && parseInt(navigator.appVersion) == 4){
x = CNPJ.substring(0,2);
x += CNPJ.substring(3,6);
x += CNPJ.substring(7,10);
x += CNPJ.substring(11,15);
x += CNPJ.substring(16,18);
CNPJ = x; 
} else {
CNPJ = CNPJ.replace(".","");
CNPJ = CNPJ.replace(".","");
CNPJ = CNPJ.replace("-","");
CNPJ = CNPJ.replace("/","");
}
var nonNumbers = /\D/;
if (nonNumbers.test(CNPJ)) erro += "A verificacao de CNPJ suporta apenas numeros! \n\n"; 
var a = [];
var b = new Number;
var c = [6,5,4,3,2,9,8,7,6,5,4,3,2];
for (i=0; i<12; i++){
a[i] = CNPJ.charAt(i);
b += a[i] * c[i+1];
}
if ((x = b % 11) < 2) { a[12] = 0 } else { a[12] = 11-x }
b = 0;
for (y=0; y<13; y++) {
b += (a[y] * c[y]); 
}
if ((x = b % 11) < 2) { a[13] = 0; } else { a[13] = 11-x; }
if ((CNPJ.charAt(12) != a[12]) || (CNPJ.charAt(13) != a[13])){
erro +="Digito verificador com problema!";
Cx.focus();
}
if (erro.length > 0){
alert(erro);
Cx.focus();
return false;
} 
return true;
}
