var tipoListagem = "";

function ajaxGet(url,elemento_retorno,exibe_carregando){
/******
* ajaxGet - Coloca o retorno de uma url em um elemento qualquer
* Use a vontade mas coloque meu nome nos créditos. Dúvidas, me mande um email.
* A função é grande, coloque-a em um arquivo .js separado.
* Versão: 1.2 - 20/04/2006
* Autor: Micox - Náiron J.C.G - micoxjcg@yahoo.com.br - elmicox.blogspot.com
* Parametros:
* url: string; elemento_retorno: object||string; exibe_carregando:boolean
*  - Se elemento_retorno for um elemento html (inclusive inputs e selects),
*    exibe o retorno no innerHTML / value / options do elemento
*  - Se elemento_retorno for o nome de uma variavel
*    (o nome da variável deve ser declarado por string, pois será feito um eval)
*    a função irá atribuir o retorno à variável ao receber a url.
*******/
    var ajax1 = pegaAjax();
    if(ajax1){
        url = antiCacheRand(url)
        ajax1.onreadystatechange = ajaxOnReady
        ajax1.open("GET", url ,true);
        //ajax1.setRequestHeader("Content-Type", "text/html; charset=iso-8859-1");//"application/x-www-form-urlencoded");
        ajax1.setRequestHeader("Cache-Control", "no-cache");
        ajax1.setRequestHeader("Pragma", "no-cache");
        if(exibe_carregando){ put('<img src="classes/TListView/images/progress.gif" > Carregando ...')    }
        ajax1.send(null)
        return true;
    }else{
        return false;
    }
    function ajaxOnReady(){
        if (ajax1.readyState==4){
            if(ajax1.status == 200){
                var texto=ajax1.responseText;
                if(texto.indexOf(" ")<0) texto=texto.replace(/\+/g," ");
                //texto=unescape(texto); //descomente esta linha se tiver usado o urlencode no php ou asp
                put(texto);
                extraiScript(texto);
            }else{
                if(exibe_carregando){put("Falha no carregamento. " + httpStatus(ajax1.status));}
            }
            ajax1 = null
        }else if(exibe_carregando){//para mudar o status de cada carregando
                put('<img src="classes/TListView/images/progress.gif" >Carregando ....' )
        }
    }
    function put(valor){ //coloca o valor na variavel/elemento de retorno
        if((typeof(elemento_retorno)).toLowerCase()=="string"){ //se for o nome da string
            if(valor!="Falha no carregamento"){
                eval(elemento_retorno + '= unescape("' + escape(valor) + '")')
            }
        }else if(elemento_retorno.tagName.toLowerCase()=="input"){
            valor = escape(valor).replace(/\%0D\%0A/g,"")
            elemento_retorno.value = unescape(valor);
        }else if(elemento_retorno.tagName.toLowerCase()=="select"){        
            select_innerHTML(elemento_retorno,valor)
        }else if(elemento_retorno.tagName){
     elemento_retorno.innerHTML = valor;
            //alert(elemento_retorno.innerHTML)
        }    
    }
    function pegaAjax(){ //instancia um novo xmlhttprequest
        //baseado na getXMLHttpObj que possui muitas cópias na net e eu nao sei quem é o autor original
        if(typeof(XMLHttpRequest)!='undefined'){return new XMLHttpRequest();}
        var axO=['Microsoft.XMLHTTP','Msxml2.XMLHTTP','Msxml2.XMLHTTP.6.0','Msxml2.XMLHTTP.4.0','Msxml2.XMLHTTP.3.0'];
        for(var i=0;i<axO.length;i++){ try{ return new ActiveXObject(axO[i]);}catch(e){} }
        return null;
    }
    function httpStatus(stat){ //retorna o texto do erro http
        switch(stat){
            case 0: return "Erro desconhecido de javascript";
            case 400: return "400: Solicitação incompreensível"; break;
            case 403: case 404: return "404: Não foi encontrada a URL solicitada"; break;
            case 405: return "405: O servidor não suporta o método solicitado"; break;
            case 500: return "500: Erro desconhecido de natureza do servidor"; break;
            case 503: return "503: Capacidade máxima do servidor alcançada"; break;
            default: return "Erro " + stat + ". Mais informações em http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"; break;
        }
    }
    function antiCacheRand(aurl){
        var dt = new Date();
        if(aurl.indexOf("?")>=0){// já tem parametros
            return aurl + "&" + encodeURI(Math.random() + "_" + dt.getTime());
        }else{ return aurl + "?" + encodeURI(Math.random() + "_" + dt.getTime());}
    }
}
function select_innerHTML(objeto,innerHTML){
/******
* select_innerHTML - altera o innerHTML de um select independente se é FF ou IE
* Corrige o problema de não ser possível usar o innerHTML no IE corretamente
* Veja o problema em: http://support.microsoft.com/default.aspx?scid=kb;en-us;276228
* Use a vontade mas coloque meu nome nos créditos. Dúvidas, me mande um email.
* Versão: 1.0 - 06/04/2006
* Autor: Micox - Náiron J.C.G - micoxjcg@yahoo.com.br - elmicox.blogspot.com
* Parametros:
* objeto(tipo object): o select a ser alterado
* innerHTML(tipo string): o novo valor do innerHTML
*******/
    objeto.innerHTML = ""
    var selTemp = document.createElement("micoxselect")
    var opt;
    selTemp.id="micoxselect1"
    document.body.appendChild(selTemp)
    selTemp = document.getElementById("micoxselect1")
    selTemp.style.display="none"
    if(innerHTML.toLowerCase().indexOf("<option")<0){//se não é option eu converto
        innerHTML = "<option>" + innerHTML + "</option>"
    }
    innerHTML = innerHTML.replace(/<option/g,"<span").replace(/<\/option/g,"</span")
    selTemp.innerHTML = innerHTML
    for(var i=0;i<selTemp.childNodes.length;i++){
        if(selTemp.childNodes[i].tagName){
            opt = document.createElement("OPTION")
            for(var j=0;j<selTemp.childNodes[i].attributes.length;j++){
                opt.setAttributeNode(selTemp.childNodes[i].attributes[j].cloneNode(true))
            }
            opt.value = selTemp.childNodes[i].getAttribute("value")
            opt.text = selTemp.childNodes[i].innerHTML
            if(document.all){ //IEca
                objeto.add(opt)
            }else{
                objeto.appendChild(opt)
            }                    
        }    
    }
    document.body.removeChild(selTemp)
    selTemp = null
}

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 pausecomp(millis)
{
var date = new Date();
var curDate = null;

do { curDate = new Date(); }
while(curDate-date < millis);
} 
/*
*  Funcoes especificas da agencia clipping
*
*  Autor: Nataniel Fiuza contato@laxus.com.br
*  Since: 03/07/2009
*/
function twittar(uuid,v,c,s)
{
	
var xmlhttp;
if (window.XMLHttpRequest)  {
      xmlhttp=new XMLHttpRequest();
  }
else if (window.ActiveXObject)  { 
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

  }
else
  {
  alert("Seu browser nao suporte ajax.!");
  }
 
  xmlhttp.onreadystatechange=function() {
   if(xmlhttp.readyState==4)  {
    if (xmlhttp.status == 200) { 
         document.getElementById('twt'+uuid).innerHTML='<img src="http://www.aclipping.com/images/ico-twittar_red.gif" alt="" border="0" >';
		 document.getElementById('tw'+uuid).innerHTML='Enviado';
    }
   }
  }
  document.getElementById('tw'+uuid).innerHTML="<img src='http://www.aclipping.com/theme/aclogov2/img/ldgm.gif' >";
  xmlhttp.open("GET",'sendresourcetwitter/'+uuid+'/'+v+'/'+c+'/'+s+'/0/direct.html',true);
  xmlhttp.send(null);
}
/*
* Funcao principal para carregar os dados
*
*
*
*/
function carregaDados(idpalavra,palavra,iddate) {
tipoListagem = "padrao";
document.getElementById('titleword').innerHTML = palavra;
$('#tabs_ops').html('<ul class="opcoes"><li><a href="#" class="ativada" id="tabTipo" onclick="" title="Notícias">Notícias</a></li><li><a href="#" class="desativada" id="tabTipo1" onclick="javascript:selecionadas();" title="Notícias Selecionadas">Selecionadas</a></li><li><a href="#" class="desativada" id="tabTipo2" onclick="javascript:graficos();" title="Gráficos">Gráficos</a></li></ul>');
//document.getElementById('tabs_ops').innerHTML='<ul class="opcoes"><li><a href="#" class="ativada" id="tabTipo" onclick="" title="Notícias">Notícias</a></li><li><a href="#" class="desativada" id="tabTipo1" onclick="javascript:selecionadas();" title="Notícias Selecionadas">Selecionadas</a></li><li><a href="#" class="desativada" id="tabTipo2" onclick="javascript:graficos();" title="Gráficos">Gráficos</a></li></ul>';
var xmlhttp;
if (navigator.appName == 'Microsoft Internet Explorer')
{
  	  
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      xmlhttp.onreadystatechange=function() {
          if(xmlhttp.readyState==4)  {
             if (xmlhttp.status == 200) { 
				 $('#listagem').html('Carregado.');
				 var html = '';
				 html = xmlhttp.responseText;
				 //alert(html);
                 try
				 {
					 $('#listagem').html('<link rel="stylesheet" href="http://www.aclipping.com/css/base.css" type="text/css" /><script type="text/javascript" src="http://www.aclipping.com/js/jsapi"></script><script type="text/javascript">google.load("jquery", "1.3");</script><script type="text/javascript" src="http://www.aclipping.com/js/jquery.prettyPhoto.js"></script>'); 
                  // document.getElementById('listagem').innerHTML =;	
				   
                 } 
                 catch(ex)
                 {
                  alert('Error #1: '+ex.message); // never displayed
                 }

				 try
				 {	
					 $('#listagem').html(html);

                  // document.getElementById('listagem').innerHTML += html;	
				   
                 } 
                 catch(ex)
                 {
                  alert('Error #2: '+ex.message); // never displayed
                 }
				

             }
          }
      }
	  document.getElementById('listagem').innerHTML="<img src='http://www.aclipping.com/theme/aclogov2/img/ldgm.gif' > Carregando...";
      xmlhttp.open("GET",'http://www.aclipping.com/panel_main.php?msie=false&acao=palavra&idPalavra='+idpalavra+'&idDate='+iddate,true);
      xmlhttp.send(null);
	  
//	  document.getElementById('listagem').innerHTML='<iframe id="iframeInfoLogin" name="iframeInfoLogin" allowtransparency="true" style="background-color: Transparent; width: 100%; height: 789; overflow: visible;" frameborder="0" src="http://www.aclipping.com/panel_main.php?msie=false&acao=palavra&idPalavra='+idpalavra+'&idDate='+iddate+'"></iframe>';
}
else {

if (window.XMLHttpRequest)  {
      ajaxGet('http://www.aclipping.com/panel_main.php?acao=palavra&idPalavra='+idpalavra+'&idDate='+iddate,document.getElementById('listagem'),true);
  }
else if (window.ActiveXObject)  { 
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      xmlhttp.onreadystatechange=function() {
          if(xmlhttp.readyState==4)  {
             if (xmlhttp.status == 200) { 
				document.getElementById('listagem').innerHTML=xmlhttp.responseText;
             }
          }
      }
	  document.getElementById('listagem').innerHTML="<img src='http://www.aclipping.com/theme/aclogov2/img/ldgm.gif' >";
      xmlhttp.open("GET",'http://www.aclipping.com/panel_main.php?acao=palavra&idPalavra='+idpalavra+'&idDate='+iddate,true);
      xmlhttp.send(null);
  }
else
  {
  alert("Seu browser nao suporte ajax.!");
  }
}
 


}


function graficos()
{
document.getElementById('titleword').innerHTML = 'Gráficos';
document.getElementById('tabs_ops').innerHTML='<ul class="opcoes"><li><a href="#" class="desativada" id="tabTipo" onclick="" title="Notícias">Notícias</a></li><li><a href="#" class="desativada" id="tabTipo1" onclick="javascript:selecionadas();" title="Notícias Selecionadas">Selecionadas</a></li><li><a href="#" class="ativada" id="tabTipo2" onclick="javascript:graficos();" title="Gráficos">Gráficos</a></li></ul>';

ajaxGet('http://www.aclipping.com/panel_main.php?acao=statistica&',document.getElementById('listagem'),true);

}

function selecionaResource(uuid,v,c,s,p)
{
document.getElementById('se'+uuid).innerHTML="<img src='http://www.aclipping.com/theme/aclogov2/img/ldgm.gif' >";
if (tipoListagem == "select") { 	
	//document.getElementById('pri'+uuid+p).innerHTML="<center><img src='http://www.aclipping.com/images/001_loading.gif' ></center>";
	//document.getElementById('pri'+uuid+p).style.background=" #c0c0c0 url(http://www.aclipping.com/images/bg-opcao-desativada.gif) repeat-x";
	//pausecomp(2000);
	document.getElementById('pri'+uuid+p).style.display = "none"; 
	document.getElementById('pri'+uuid+p).innerHTML="";
	}
ajaxGet('http://www.aclipping.com/selectresource/'+uuid+'/'+v+'/'+c+'/'+s+'/'+p+'/select.html',document.getElementById('se'+uuid),false);
if (tipoListagem == "select") { 	
ajaxGet('http://www.aclipping.com/panel_main.php?acao=totalsel',document.getElementById('totalsel'),false);
}
}


function selecionaResource1(uuid,v,c,s,p)
{
document.getElementById('lista').innerHTML="<img src='http://www.aclipping.com/theme/aclogov2/img/ldgm.gif' >";
if (tipoListagem == "select") { 	
  	 //  document.getElementById('lista').style.display = "none"; 
	 //  document.getElementById('pri'+uuid+p).innerHTML="";
	}
ajaxGet('http://www.aclipping.com/selectresource/'+uuid+'/'+v+'/'+c+'/'+s+'/'+p+'/select.html', document.getElementById('lista'),false);
if (tipoListagem == "select") { 	
ajaxGet('http://www.aclipping.com/panel_main.php?acao=totalsel', document.getElementById('lista'),false);
}
}


function selecionaVeiculo(idempresa,idveiculo)
{
ajaxGet('http://www.aclipping.com/selectveiculo/'+idempresa+'/'+idveiculo+'/select.html',document.getElementById('resultado'),false);
}
function VeiculoBanido(idempresa,idveiculo)
{
ajaxGet('http://www.aclipping.com/selectveiculo/'+idempresa+'/'+idveiculo+'/banido.html',document.getElementById('resultado'),false);
}
function selecionadas()
{
	tipoListagem = "select";
document.getElementById('titleword').innerHTML = 'Notícias Selecionadas';
document.getElementById('tabs_ops').innerHTML='<ul class="opcoes"><li><a href="#" class="desativada" id="tabTipo" onclick="" title="Notícias">Notícias</a></li><li><a href="#" class="ativada" id="tabTipo1" onclick="javascript:selecionadas();" title="Notícias Selecionadas">Selecionadas</a></li><li><a href="#" class="desativada" id="tabTipo2" onclick="javascript:graficos();" title="Gráficos">Gráficos</a></li></ul>';

ajaxGet('http://www.aclipping.com/panel_main.php?acao=selecionadas&',document.getElementById('listagem'),true);

}
function sendSelecionadas(idempresa,idacao,acao)
{
	tipoListagem = "select";
document.getElementById('titleword').innerHTML = 'Notícias Selecionadas';
document.getElementById('tabs_ops').innerHTML='<ul class="opcoes"><li><a href="#" class="desativada" id="tabTipo" onclick="" title="Notícias">Notícias</a></li><li><a href="#" class="ativada" id="tabTipo1" onclick="javascript:selecionadas();" title="Notícias Selecionadas">Selecionadas</a></li><li><a href="#" class="desativada" id="tabTipo2" onclick="javascript:graficos();" title="Gráficos">Gráficos</a></li></ul>';

ajaxGet('http://www.aclipping.com/sendnewsletter/'+idempresa+'/'+idacao+'/'+acao+'.html',document.getElementById('listagem'),true);

}
function resendNewsletter(idnewsletter,acao)
{
	tipoListagem = "select";
document.getElementById('titleword').innerHTML = 'Notícias Selecionadas';
document.getElementById('tabs_ops').innerHTML='<ul class="opcoes"><li><a href="#" class="desativada" id="tabTipo" onclick="" title="Notícias">Notícias</a></li><li><a href="#" class="ativada" id="tabTipo1" onclick="javascript:selecionadas();" title="Notícias Selecionadas">Selecionadas</a></li><li><a href="#" class="desativada" id="tabTipo2" onclick="javascript:graficos();" title="Gráficos">Gráficos</a></li></ul>';

ajaxGet('http://www.aclipping.com/sendNewsletter.php?idNewsletter='+idnewsletter+'&acao='+acao,document.getElementById('listagem'),true);

}
function padrao() {
	tipoListagem = "padrao";
document.getElementById('titleword').innerHTML = 'Selecione&nbsp;';
document.getElementById('tabs_ops').innerHTML='<ul class="opcoes"><li><a href="#" class="ativada" id="tabTipo" onclick="" title="Notícias">Notícias</a></li><li><a href="#" class="desativada" id="tabTipo1" onclick="javascript:selecionadas();" title="Notícias Selecionadas">Selecionadas</a></li><li><a href="#" class="desativada" id="tabTipo2" onclick="javascript:graficos();" title="Gráficos">Gráficos</a></li></ul>';
document.getElementById('listagem').innerHTML = '';

}

/*
* Exibe o calendario da pagina principal do clipping 
*
*
*/
function calendario(iddate)
{	
ajaxGet('http://www.aclipping.com/panel_main.php?acao=calendar&idDate='+iddate,document.getElementById('calendar'),true);
ajaxGet('http://www.aclipping.com/panel_main.php?acao=painelpalavras&idDate='+iddate,document.getElementById('palavraschaves'),true);
}
/*
* Seleciona todos os campos checkbox de um formulario
* Executa o evento onclick
*
* @since 27/11/2009
*/
function checkUncheckAll(theElement) {
     var theForm = theElement.form, z = 0;
	 for(z=0; z<theForm.length;z++){
      if(theForm[z].type == 'checkbox' && theForm[z].name != 'checkall') {
 	     theForm[z].checked = theElement.checked;
		 theForm[z].onclick();		
	  }
     }
}
