﻿var bustcachevar=1;
var loadedobjects="";
var rootdomain = "http://"+window.location.hostname;

function ajaxPage(url, containerid){
	if(containerid==undefined) containerid="default";
document.getElementById(containerid).innerHTML = "<div class='text333333; margin:0 auto' align='center' style='padding:0px 0px 0 0; color:#003366; font-weight: bold;background-color:#fff;height:100px; text-aling:center'> <img  aling='center' style=' margin-left:150px' src='img/loading.gif'/> <p style='float:left;clear:left; display:block; width:400px'>Carregando... </p></div>";
var page_request = false
if (window.XMLHttpRequest) // if Mozilla, Safari etc
page_request = new XMLHttpRequest()
else if (window.ActiveXObject){ // if IE
try {
page_request = new ActiveXObject("Msxml2.XMLHTTP")
}
catch (e){
try{
page_request = new ActiveXObject("Microsoft.XMLHTTP")
}
catch (e){}
}
}
else
return false
page_request.onreadystatechange=function(){
	if (page_request.readyState == 4) loadpage(page_request, containerid)
}
if (bustcachevar) //if bust caching of external page
var bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
page_request.open('GET', url+bustcacheparameter, true)
page_request.send(null)
}

function loadpage(page_request, containerid){
texto = "";
if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
var texto = ""+page_request.responseText;
texto = texto.replace(/\+/g," ");
texto = unescape(texto);
document.getElementById(containerid).innerHTML = texto;
}

function carregar(fromInputId, toInputId){
	var tInput = document.getElementById(toInputId);
	var fInput = document.getElementById(fromInputId);
	if(fInput.options[fInput.selectedIndex].value!=""){
		var ajax = GetXmlHttpObject();
		if(ajax){
			var metodo = "POST";
			var url = "scr.cadanuselect.php";
			var nami = tInput.name;
			var vali = fInput.options[fInput.selectedIndex].value;
			ajax.open(metodo,url,true);
			ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
			var params = "nome="+nami+"&val="+vali;
			ajax.send(params);
			ajax.onreadystatechange = function(){
				if(ajax.readyState == 1){
					tInput.innerHTML = "Carregando...";
				}else if(ajax.readyState == 4){
					if(ajax.responseXML){
						processaRegsSubs(ajax.responseXML,tInput);
					}else{
						tInput.options[0].text = ""; 
						tInput.options.length = 1; 
					}
				}
			}
		}
	}else{
		tInput.options[0].text = ""; 
		tInput.options[0].value = "";
		tInput.options.length = 1; 
	}
}

function processaRegsSubs(obj,tInput){
	dataArray = obj.getElementsByTagName(tInput.name);
	if(dataArray.length>0){
		tInput.options[0].text = "Escolha abaixo";
		tInput.options[0].value = "";
		tInput.options.length = 1;
		for(i=0;i<dataArray.length;i++){
			var row = dataArray[i];
			var codigo = row.getElementsByTagName("id")[0].firstChild.nodeValue;
			var rotulo = row.getElementsByTagName("rotulo")[0].firstChild.nodeValue;
			var novo = document.createElement("option");
			novo.value = codigo;
			novo.text = rotulo;
			tInput.options.add(novo);
		}
	}else{
		tInput.options[0].text = "Nada retornado";
		tInput.options[0].value = "";
		tInput.options.length = 1;
	}	 
}

function banners(divIdTop,divIdLat){
	var divTop = document.getElementById(divIdTop);
	var divLat = document.getElementById(divIdLat);
	var ajax = GetXmlHttpObject();
	if(ajax){
		var metodo = "POST";
		var url = "scr.banners.php";
		ajax.open(metodo,url,true);
		ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
		ajax.send();
		ajax.onreadystatechange = function(){
			if(ajax.readyState == 4){
				if(ajax.responseXML){
					aplicaBanners(ajax.responseXML,divTop,divLat);
				}
			}
		}
	}else{
		var topo = 
			"<img src=\"image/noajax.png\" usemap=\"#noajaxmap\" />"+
			"<map name=\"noajaxmap\">"+
			"<area shape=\"rect\" coords=\"240,55,333,90\" href=\"http://www.mozilla.com/firefox\" />"+
			"<area shape=\"rect\" coords=\"355,55,513,90\" href=\"http://www.microsoft.com/windows/internet-explorer\" />"+
			"<area shape=\"rect\" coords=\"525,55,625,90\" href=\"http://www.google.com/chrome\" />"+
			"</map>";
		divTop.innerHTML = topo;
	}
}

function aplicaBanners(obj,divTop,divLat){
	var dataArray = obj.getElementsByTagName("banners");
	var topoB = dataArray[0].getElementsByTagName("topo");
	var lateralB = dataArray[0].getElementsByTagName("lateral");
	if(topoB && topoB.length>0){
		var bannerT = topoB[0];
		var tituloT = bannerT.getElementsByTagName("titulo")[0].firstChild.nodeValue;
		var linkT = bannerT.getElementsByTagName("link")[0].firstChild.nodeValue;
		var arqoucod = bannerT.getElementsByTagName("arqoucod")[0].firstChild.nodeValue;
		var htmlT = "";
		if(arqoucod=="arq"){
			var imagemT = bannerT.getElementsByTagName("arquivo")[0].firstChild.nodeValue;
			var imgextT = imagemT.substring(imagemT.lastIndexOf('.')+1);
			if(imgextT=="swf" || imgextT=="SWF") 
				htmlT = "<a href=\"http://"+linkT+"/\" target=\"_blank\" ><embed src=\"admin/"+imagemT+"\" title=\""+tituloT+"\" /></a>";
			else 
				htmlT = "<a href=\"http://"+linkT+"/\" target=\"_blank\"><img src=\"admin/"+imagemT+"\" title=\""+tituloT+"\" /></a>";
			divTop.innerHTML = htmlT;
		}else if(arqoucod=="cod"){
		  //var bannerCod = "\""+bannerT.getElementsByTagName("codigo")[0].firstChild.nodeValue+"\"";
		  //alert(bannerCod);
		  //divTop.innerHTML = bannerCod;
		  
		  var bannerCod = bannerT.getElementsByTagName("codigo")[0].firstChild.nodeValue;
		  var toBeEvaluated = "divTop.innerHTML = \""+bannerCod+"\";";
		  //alert(toBeEvaluated); 
		  eval(toBeEvaluated);
      
		  //eval(bannerT.getElementsByTagName("codigo")[0].firstChild.nodeValue);
			//htmlT = html_entity_decode(bannerT.getElementsByTagName("codigo")[0].firstChild.nodeValue);
			/*var bannerCod = bannerT.getElementsByTagName("codigo")[0].firstChild.nodeValue;
			//alert(bannerCod.indexOf("/script")+4);
			var iosc = bannerCod.indexOf("script")+3;
			var ious = bannerCod.indexOf("/script")+4;
			var bit1 = bannerCod.substr(0,iosc);
			var bit2 = bannerCod.substr(iosc,(ious)-(iosc));
			var bit3 = bannerCod.substr(ious);
			//alert("bit1: "+bit1+"\n\nbit2: "+bit2+"\n\nbit3: "+bit3);
			divTop.innerHTML = bit1 + bit2 + bit3;*/
			
			/*try{
  			var div = document.createElement('div');
        div.innerHTML = bannerT.getElementsByTagName("codigo")[0].firstChild.nodeValue;
        var children = div.childNodes;
        divTop.innerHTML = "";
        for(var i=0;i<children.length;i++)
          divTop.appendChild(children[i]);
    }catch(err){
      try{
        htmlT = bannerT.getElementsByTagName("codigo")[0].firstChild.nodeValue;
        divTop.innerHTML = htmlT;
      }catch(erro){
        txt="There was an error on this page.\n\n";
        txt+="Error description: " + err.description + "\n\n";
        txt+="Click OK to continue.\n\n";
        alert(txt);
      }
      }*/
      
		}
	}
	if(lateralB && lateralB.length>0){
		var htmlL = "";
		for(i=0;i<lateralB.length;i++){
			var bannerL = lateralB[i];
			var tituloL = bannerL.getElementsByTagName("titulo")[0].firstChild.nodeValue;
			var linkL = bannerL.getElementsByTagName("link")[0].firstChild.nodeValue;
			var imagemL = bannerL.getElementsByTagName("arquivo")[0].firstChild.nodeValue;
			htmlL += "<div><a href=\"http://"+linkL+"/\" target=\"_blank\"><img src=\"admin/"+imagemL+"\" title=\""+tituloL+"\" /></a></div>";
		}
		divLat.innerHTML = htmlL;
	}
}


function buscaCEP(input,enderecoArr){
	var cep = input.value;
	var cepRegEx = /^(\d{5}\-\d{3})$/;
	var regExp = new RegExp(cepRegEx);
	if(regExp.test(cep)){
		var ajax = GetXmlHttpObject();
		if(ajax){
			if(ajax.overrideMimeType)
				ajax.overrideMimeType("text/xml");
			ajax.onreadystatechange = function(){
				if(ajax.readyState == 4){
					if(ajax.status == 200){
						setaEndereco(ajax.responseXML,enderecoArr);
					}else{
						alert(ajax.status);
					}
				}
			}
			cep = encodeURIComponent(cep);
			var metodo = "GET";
			var url = "scr.endereco.php?cep="+cep;
			ajax.open(metodo,url,true);
			ajax.send(null);
		}
	}
}

function setaEndereco(obj,enderecoArr){
	var webservicecep = obj.getElementsByTagName("webservicecep");
	var retorno = webservicecep[0].getElementsByTagName("retorno");
	if(retorno[0].getElementsByTagName("resultado").firstChild.nodeValue==1){
		document.getElementById(enderecoArr["uf"]).value = retorno[0].getElementsByTagName("uf").firstChild.nodeValue;
		document.getElementById(enderecoArr["cidade"]).value = retorno[0].getElementsByTagName("cidade").firstChild.nodeValue;
		document.getElementById(enderecoArr["bairro"]).value = retorno[0].getElementsByTagName("bairro").firstChild.nodeValue;
		document.getElementById(enderecoArr["logradouro"]).value = retorno[0].getElementsByTagName("tipo_logradouro").firstChild.nodeValue+" "+retorno[0].getElementsByTagName("logradouro").firstChild.nodeValue;
	}
}

function GetXmlHttpObject(){
	if(window.XMLHttpRequest){
		return new XMLHttpRequest();
	}else if(window.ActiveXObject){
		return new ActiveXObject("Microsoft.XMLHTTP");
	}
	return null;
}

function html_entity_decode (string, quote_style) {
    var hash_map = {}, symbol = '', tmp_str = '', entity = '';
    tmp_str = string.toString();
    if (false === (hash_map = this.get_html_translation_table('HTML_ENTITIES', quote_style))) {        return false;
    }
    hash_map['&'] = '&amp;';
    for (symbol in hash_map) {
        entity = hash_map[symbol];        tmp_str = tmp_str.split(entity).join(symbol);
    }
    tmp_str = tmp_str.split('&#039;').join("'");
    return tmp_str;
}

function get_html_translation_table (table, quote_style) {
    // Returns the internal translation table used by htmlspecialchars and htmlentities  
    // 
    // version: 1101.3117
    // discuss at: http://phpjs.org/functions/get_html_translation_table    // +   original by: Philip Peterson
    // +    revised by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   bugfixed by: noname
    // +   bugfixed by: Alex
    // +   bugfixed by: Marco    // +   bugfixed by: madipta
    // +   improved by: KELAN
    // +   improved by: Brett Zamir (http://brett-zamir.me)
    // +   bugfixed by: Brett Zamir (http://brett-zamir.me)
    // +      input by: Frank Forte    // +   bugfixed by: T.Wild
    // +      input by: Ratheous
    // %          note: It has been decided that we're not going to add global
    // %          note: dependencies to php.js, meaning the constants are not
    // %          note: real constants, but strings instead. Integers are also supported if someone    // %          note: chooses to create the constants themselves.
    // *     example 1: get_html_translation_table('HTML_SPECIALCHARS');
    // *     returns 1: {'"': '&quot;', '&': '&amp;', '<': '&lt;', '>': '&gt;'}
    
    var entities = {}, hash_map = {}, decimal = 0, symbol = '';    var constMappingTable = {}, constMappingQuoteStyle = {};
    var useTable = {}, useQuoteStyle = {};
    
    // Translate arguments
    constMappingTable[0]      = 'HTML_SPECIALCHARS';    constMappingTable[1]      = 'HTML_ENTITIES';
    constMappingQuoteStyle[0] = 'ENT_NOQUOTES';
    constMappingQuoteStyle[2] = 'ENT_COMPAT';
    constMappingQuoteStyle[3] = 'ENT_QUOTES';
     useTable       = !isNaN(table) ? constMappingTable[table] : table ? table.toUpperCase() : 'HTML_SPECIALCHARS';
    useQuoteStyle = !isNaN(quote_style) ? constMappingQuoteStyle[quote_style] : quote_style ? quote_style.toUpperCase() : 'ENT_COMPAT';
 
    if (useTable !== 'HTML_SPECIALCHARS' && useTable !== 'HTML_ENTITIES') {
        throw new Error("Table: "+useTable+' not supported');        // return false;
    }
 
    entities['38'] = '&amp;';
    if (useTable === 'HTML_ENTITIES') {        entities['160'] = '&nbsp;';
        entities['161'] = '&iexcl;';
        entities['162'] = '&cent;';
        entities['163'] = '&pound;';
        entities['164'] = '&curren;';        entities['165'] = '&yen;';
        entities['166'] = '&brvbar;';
        entities['167'] = '&sect;';
        entities['168'] = '&uml;';
        entities['169'] = '&copy;';        entities['170'] = '&ordf;';
        entities['171'] = '&laquo;';
        entities['172'] = '&not;';
        entities['173'] = '&shy;';
        entities['174'] = '&reg;';        entities['175'] = '&macr;';
        entities['176'] = '&deg;';
        entities['177'] = '&plusmn;';
        entities['178'] = '&sup2;';
        entities['179'] = '&sup3;';        entities['180'] = '&acute;';
        entities['181'] = '&micro;';
        entities['182'] = '&para;';
        entities['183'] = '&middot;';
        entities['184'] = '&cedil;';        entities['185'] = '&sup1;';
        entities['186'] = '&ordm;';
        entities['187'] = '&raquo;';
        entities['188'] = '&frac14;';
        entities['189'] = '&frac12;';        entities['190'] = '&frac34;';
        entities['191'] = '&iquest;';
        entities['192'] = '&Agrave;';
        entities['193'] = '&Aacute;';
        entities['194'] = '&Acirc;';        entities['195'] = '&Atilde;';
        entities['196'] = '&Auml;';
        entities['197'] = '&Aring;';
        entities['198'] = '&AElig;';
        entities['199'] = '&Ccedil;';        entities['200'] = '&Egrave;';
        entities['201'] = '&Eacute;';
        entities['202'] = '&Ecirc;';
        entities['203'] = '&Euml;';
        entities['204'] = '&Igrave;';        entities['205'] = '&Iacute;';
        entities['206'] = '&Icirc;';
        entities['207'] = '&Iuml;';
        entities['208'] = '&ETH;';
        entities['209'] = '&Ntilde;';        entities['210'] = '&Ograve;';
        entities['211'] = '&Oacute;';
        entities['212'] = '&Ocirc;';
        entities['213'] = '&Otilde;';
        entities['214'] = '&Ouml;';        entities['215'] = '&times;';
        entities['216'] = '&Oslash;';
        entities['217'] = '&Ugrave;';
        entities['218'] = '&Uacute;';
        entities['219'] = '&Ucirc;';        entities['220'] = '&Uuml;';
        entities['221'] = '&Yacute;';
        entities['222'] = '&THORN;';
        entities['223'] = '&szlig;';
        entities['224'] = '&agrave;';        entities['225'] = '&aacute;';
        entities['226'] = '&acirc;';
        entities['227'] = '&atilde;';
        entities['228'] = '&auml;';
        entities['229'] = '&aring;';        entities['230'] = '&aelig;';
        entities['231'] = '&ccedil;';
        entities['232'] = '&egrave;';
        entities['233'] = '&eacute;';
        entities['234'] = '&ecirc;';        entities['235'] = '&euml;';
        entities['236'] = '&igrave;';
        entities['237'] = '&iacute;';
        entities['238'] = '&icirc;';
        entities['239'] = '&iuml;';        entities['240'] = '&eth;';
        entities['241'] = '&ntilde;';
        entities['242'] = '&ograve;';
        entities['243'] = '&oacute;';
        entities['244'] = '&ocirc;';        entities['245'] = '&otilde;';
        entities['246'] = '&ouml;';
        entities['247'] = '&divide;';
        entities['248'] = '&oslash;';
        entities['249'] = '&ugrave;';        entities['250'] = '&uacute;';
        entities['251'] = '&ucirc;';
        entities['252'] = '&uuml;';
        entities['253'] = '&yacute;';
        entities['254'] = '&thorn;';        entities['255'] = '&yuml;';
    }
 
    if (useQuoteStyle !== 'ENT_NOQUOTES') {
        entities['34'] = '&quot;';    }
    if (useQuoteStyle === 'ENT_QUOTES') {
        entities['39'] = '&#39;';
    }
    entities['60'] = '&lt;';    entities['62'] = '&gt;';
 
 
    // ascii decimals to real symbols
    for (decimal in entities) {        symbol = String.fromCharCode(decimal);
        hash_map[symbol] = entities[decimal];
    }
    
    return hash_map;
}
