var combo="";
var params="";
var id_site="";
var id_site1="";
var id_combo=0;
var xmlhttp;
var xmlhttp1;

function carregaCombo(combo,params){
	var now = new Date();
	params+='&ts='+now.getTime();
    this.combo=combo;
    this.params=params;

    try{
        xmlhttp = new XMLHttpRequest();
    }
    catch(ee){
        try{
            xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch(e){
            try{
                 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch(E){
                xmlhttp = false;
            }
        }
    }
    xmlhttp.open("GET", "../CarregaCombo.do?id_combo="+combo+params,true);

    xmlhttp.onreadystatechange=trataResultado;
    
    xmlhttp.send(null)
}
function carregaCombo1(){
    var now = new Date();
	var params='&ts='+now.getTime();
    try{
        xmlhttp1 = new XMLHttpRequest();
    }
    catch(ee){
        try{
            xmlhttp1 = new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch(e){
            try{
                 xmlhttp1 = new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch(E){
                xmlhttp1 = false;
            }
        }
    }
    xmlhttp1.open("GET", "../CarregaCombo.do?id_combo=site1"+params,true);

    xmlhttp1.onreadystatechange=trataResultado1;
    
    xmlhttp1.send(null)
}
function trataResultado(){
    if(combo=="site"){
          if (xmlhttp.readyState==4){
            var num="";
            //limpa o select
            if(id_combo>0){
                num=1;
            }
            //alert(combo+''+num);
            var c=document.getElementById(combo+''+num);
            
            while(c.options.length>0)c.options[0]=null
            var aOptions=eval((xmlhttp.responseText));
		    for(var i=0;i<aOptions.length-1;i++){
                aOptions[i]=unescape(aOptions[i]);
                aOptions[i+1]=unescape(aOptions[i+1]);
                                
                if(aOptions[1+i]==id_site){
                	var option =  new Option(aOptions[i],aOptions[++i]);
                	option.selected = true;
                	                	
                   c.options[c.options.length]=option;                   
                }else{
                    c.options[c.options.length]=new Option(aOptions[i],aOptions[++i]);
                }
            }
            //c.innerHTML=aOptions;
        }      
    }else if(combo=="campanhas"){
        if (xmlhttp.readyState==4){
            //limpa o select
            var aOptions=eval((xmlhttp.responseText));
            //alert(aOptions);
            if(aOptions.length>4){
                var c=document.getElementById('campanhas');
                while(c.options.length>0)c.options[0]=null
                
		        for(var i=0;i<aOptions.length;i++){
                    aOptions[i]=unescape(aOptions[i]);
                    aOptions[i+1]=unescape(aOptions[i+1]);
                    c.options[c.options.length]=new Option(aOptions[i],aOptions[++i]);
                }
                document.getElementById('td_tCampanha').style.display='';
                document.getElementById('td_campanha').style.display='';
            }else if(aOptions.length==4){ 
                document.getElementById('campanhaId').value=aOptions[3];
                //alert(id_site);
                if(id_site>0){
                    //alert("oi");
                    carregaCombo("canal","&id_campanha="+aOptions[3]);
                }
            }else{ 
                document.getElementById('campanhaId').value="-2";
                //alert(id_site);
                if(id_site>0){
                    //alert("oi");
                    carregaCombo("canal","&id_campanha=-2");
                }
            } 
            //c.innerHTML=aOptions;
            //alert(aOptions[3]);
        }      
    }else if(combo=="canal"){
        if (xmlhttp.readyState==4){
            //limpa o select
            var aOptions=eval((xmlhttp.responseText));
           // alert("fui");
            //if(aOptions.length>4){
                var c=document.getElementById('canal');
                while(c.options.length>0)c.options[0]=null
		        for(var i=0;i<aOptions.length;i++){
                    aOptions[i]=unescape(aOptions[i]);
                    aOptions[i+1]=unescape(aOptions[i+1]);
                    c.options[c.options.length]=new Option(aOptions[i],aOptions[++i]);
                }
                document.getElementById('msg_wait_canal').style.display='none';
            //}else document.getElementById('campanhaId').value=aOptions[3];
            //c.innerHTML=aOptions;
            //alert(aOptions[3]);
        }      
    }
}
function trataResultado1(){
              if (xmlhttp1.readyState==4){
            //limpa o select
            //alert('site1');
            var c=document.getElementById('site1');
            
            while(c.options.length>0)c.options[0]=null
            var aOptions=eval((xmlhttp1.responseText));
            
		    for(var i=0;i<aOptions.length;i++){
                aOptions[i]=unescape(aOptions[i]);
                aOptions[i+1]=unescape(aOptions[i+1]);
                
                if(aOptions[1+i]==id_site1){
                   c.options[c.options.length]=new Option(aOptions[i],aOptions[++i],true)
                }else{
                    c.options[c.options.length]=new Option(aOptions[i],aOptions[++i])
                }
            }
            }
}
function carregaCanal(id_site){
    this.id_site=id_site;
    //alert(this.id_site);
    //alert(id_site);
    carregaCombo("campanhas","&id_site="+id_site);
    //carregaCampanhaCanal();
}
function carregaCampanhaCanal(id_campanha){
    //var count=0;
    //while(document.getElementById('campanhas').options.length<2 && document.getElementById('campanhaId').value=='' && count<10000){count++;}
    //var campanhas=document.getElementById('campanhas');
    //var id_campanha=document.getElementById('campanhaId').value;
   // alert(document.getElementById('campanhaId').value);
    //alert('passou '+xmlhttp.readyState+' opt='+campanhas.options.length+' cp='+id_campanha+' count='+count);
    if(id_campanha>0){
        carregaCombo("canal","&campanhaId="+id_campanha);
        //alert('já postei');
    }
}
function carregaSite(id_site){
    this.id_site=id_site;
    carregaCombo('site','');
}
function carregaSite1(id_site1){
    this.id_site1=id_site1;
    carregaCombo1();
}
function statusPagamentoSite(id_site,tipo,params){
    var now = new Date();
	params+='&ts='+now.getTime();
	
    if(tipo == 'porSite' && id_site<=0){
        alert(msg);
    }else{
        var c=document.getElementById('tabelaStatusSite');
        c.innerHTML='';

        var f=document.getElementById('fundo');
                
        f.style.display='inline';
    
        //alert("../StatusPagamentoSite.do?id_site="+id_site+params);

        try{
            xmlhttp = new XMLHttpRequest();
        }
        catch(ee){
            try{
                xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
            }
            catch(e){
                try{
                     xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
                }
                catch(E){
                    xmlhttp = false;
                }
            }
        }
    
        xmlhttp.open("GET", "../StatusPagamentoSite.do?id_site="+id_site+"&tipo="+tipo+params,true);

        xmlhttp.onreadystatechange=pagamentoSite;
    
        xmlhttp.send(null)
    }
}
function pagamentoSite(){
            if (xmlhttp.readyState==4){
                var c=document.getElementById('tabelaStatusSite');
                var f=document.getElementById('fundo');
                
                f.style.display='none';
                c.innerHTML=xmlhttp.responseText;
            }
}

var httpMethod = {
	GET: 'GET',
	POST: 'POST'
}

/**

*/
function requestObject(){	 
	var method;
	var	page;
	var	params;
	var	callbackFunction;	
}

/**
	
*/
function ajaxLoadingOption(){	
	var	text;
	var	gifLoading;
	var	divId;
}

function makeAjaxRequest(requestObject, ajaxLoadingOption){
	//setando valores defaults
	if(typeof(requestObject.method) == 'undefined'){
		requestObject.method = httpMethod.GET;	
	}
	if(typeof(requestObject.page) == 'undefined'){
		requestObject.page = '';
	}
	if(typeof(requestObject.params) == 'undefined'){
		requestObject.params = '';
	}
	if(typeof(requestObject.callbackFunction) == 'undefined'){
		requestObject.callbackFunction = function(){};
	}
	
	if(typeof(ajaxLoadingOption) != 'undefined'){	
		if(typeof(ajaxLoadingOption.text) == 'undefined'){
			ajaxLoadingOption.text = 'Loading...';
		}
		if(typeof(ajaxLoadingOption.gifLoading) == 'undefined'){
			ajaxLoadingOption.gifLoading = 'http://ivitrine.buscape.com.br/site/lomadee/loading.gif';
		}
		if(typeof(ajaxLoadingOption.divId) == 'undefined'){
			ajaxLoadingOption.divId = '';
		}
	}
	
	
	if(typeof(ajaxLoadingOption) != 'undefined' && (ajaxLoadingOption.divId != '' || ajaxLoadingOption.divId != null)){
		// mostrar o loading
	    $j("#" + ajaxLoadingOption.divId).html("<div align='center' style='text-align:center;'><img src='" + ajaxLoadingOption.gifLoading + "' border='0' alt='" + ajaxLoadingOption.text  + "'/>&nbsp;&nbsp;&nbsp;" + ajaxLoadingOption.text + "</div>");
	    $j("#" + ajaxLoadingOption.divId).show();
	}
	if(requestObject.method.toUpperCase() == httpMethod.GET){
		$j.get(
			  requestObject.page, 
			  requestObject.params,
			  function(data){
			  		checkResponseData(data, requestObject.callbackFunction);
			  }			  
		);
	}else if(requestObject.method.toUpperCase() == httpMethod.POST){
		$j.post(
			  requestObject.page, 
			  requestObject.params,
			  function(data){
			  		checkResponseData(data, requestObject.callbackFunction);
			  }
		);
	}else{
		alert('Houve um erro ao realizar a requisição');
	}
}

function checkResponseData(data, callbackFunction){
	if(data.indexOf('hiddenErro') != -1){
		alert('Infelizmente ocorreu um erro, por favor tente novamente!')
	}else if(data.indexOf('hiddenSessaoExpirada') != -1){
		 var topDocument = window.top.document;
		 var newDocument = topDocument.open("text/html","replace");
		 newDocument.write(data);
	}else{
		callbackFunction(data);
	}
}