try{
	xmlhttp = new XMLHttpRequest();
}catch(ee){
	try{
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	}catch(e){
		try{
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		}catch(E){
			xmlhttp = false;
		}
	}
}

fila=[];
ifila=0;
err=0;
errBoxPre = '<table align="center" border="0" cellspacing="0" cellpadding="10"><tr><td>';
errBoxPos = '</td></tr></table>';

function ajaxLoad(url, destino){
	fila[fila.length]=[url,destino];
	if((ifila+1)==fila.length)ajaxRun();
}

function ajaxRun(){
	url = fila[ifila][0];
	destino = fila[ifila][1];

	if(destino!=Object){
		destino = document.getElementById(destino);
	}
	
	if(destino.nodeName=="SELECT"){
		while(destino.options.length>0) destino.options[0]=null;
		destino.options[0]=new Option("Carregando ...","Carregando ...");
	} else {
		destino.innerHTML="<table width=\"100%\" height=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td align=\"center\" valign=\"middle\"><span style=\"font-size: 10px; font-family: Tahoma; font-weight: bold; color: #FFFFFF;\"><img src=../"images/loading.gif/" width=\"16\" height=\"16\" align=\"absmiddle\" /> Carregando...</span></td></tr></table>";
	}

	var curDateTime = new Date();
	if (url.indexOf("?")>0){
		url = url+"&t="+curDateTime;
	}else{
		url = url+"?t="+curDateTime;
	}

	xmlhttp.open("GET", url, true);
	xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=ISO-8859-1");
	xmlhttp.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate");
	xmlhttp.setRequestHeader("Cache-Control", "post-check=0, pre-check=0");
	xmlhttp.setRequestHeader("Pragma", "no-cache");
	xmlhttp.onreadystatechange=function() {
		if (xmlhttp.readyState==4){
			switch(xmlhttp.status){
				case 200: {
					err=0;
					destino.innerHTML = unescape(xmlhttp.responseText.replace(/\+/g," "));
					break
				}
				case 204: {
					err+=1;
					if(err<=3){
						destino.innerHTML="<table width=\"100%\" height=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td align=\"center\" valign=\"middle\"><span style=\"font-size: 10px; font-family: Tahoma; font-weight: bold; color: #FFFFFF;\"><img src=../"images/loading.gif/" width=\"16\" height=\"16\" align=\"absmiddle\" /> Carregando...</span></td></tr></table>";
						setTimeout(ajaxLoad,3000,fila[ifila][0],fila[ifila][1]);
					} else {
						escondeFoto();
						alert("O servidor não respondeu ao chamado.");
					}
					break
				}
				case 400: {
					err+=1;
					if(err<=3){
						destino.innerHTML="<table width=\"100%\" height=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td align=\"center\" valign=\"middle\"><span style=\"font-size: 10px; font-family: Tahoma; font-weight: bold; color: #FFFFFF;\"><img src=../"images/loading.gif/" width=\"16\" height=\"16\" align=\"absmiddle\" /> Carregando...</span></td></tr></table>";
						setTimeout(ajaxLoad,3000,fila[ifila][0],fila[ifila][1]);
					} else {
						escondeFoto();
						alert("Endereço inválido.");
					}
					break
				}
				case 403: {
					err+=1;
					if(err<=3){
						destino.innerHTML="<table width=\"100%\" height=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td align=\"center\" valign=\"middle\"><span style=\"font-size: 10px; font-family: Tahoma; font-weight: bold; color: #FFFFFF;\"><img src=../"images/loading.gif/" width=\"16\" height=\"16\" align=\"absmiddle\" /> Carregando...</span></td></tr></table>";
						setTimeout(ajaxLoad,3000,fila[ifila][0],fila[ifila][1]);
					} else {
						escondeFoto();
						alert("Você não possui permissão para acessar esse arquivo.");
					}
					break
				}
				case 404: {
					err+=1;
					if(err<=3){
						destino.innerHTML="<table width=\"100%\" height=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td align=\"center\" valign=\"middle\"><span style=\"font-size: 10px; font-family: Tahoma; font-weight: bold; color: #FFFFFF;\"><img src=../"images/loading.gif/" width=\"16\" height=\"16\" align=\"absmiddle\" /> Carregando...</span></td></tr></table>";
						setTimeout(ajaxLoad,3000,fila[ifila][0],fila[ifila][1]);
					} else {
						escondeFoto();
						alert("Arquivo não encontrado.");
					}
					break
				}
				case 500: {
					err+=1;
					if(err<=3){
						destino.innerHTML="<table width=\"100%\" height=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td align=\"center\" valign=\"middle\"><span style=\"font-size: 10px; font-family: Tahoma; font-weight: bold; color: #FFFFFF;\"><img src=../"images/loading.gif/" width=\"16\" height=\"16\" align=\"absmiddle\" /> Carregando...</span></td></tr></table>";
						setTimeout(ajaxLoad,3000,fila[ifila][0],fila[ifila][1]);
					} else {
						escondeFoto();
						alert("Erro interno do servidor.");
					}
					break
				}
				case 502: {
					err+=1;
					if(err<=3){
						destino.innerHTML="<table width=\"100%\" height=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td align=\"center\" valign=\"middle\"><span style=\"font-size: 10px; font-family: Tahoma; font-weight: bold; color: #FFFFFF;\"><img src=../"images/loading.gif/" width=\"16\" height=\"16\" align=\"absmiddle\" /> Carregando...</span></td></tr></table>";
						setTimeout(ajaxLoad,3000,fila[ifila][0],fila[ifila][1]);
					} else {
						escondeFoto();
						alert("Servidor ocupado.");
					}
					break
				}
				case 503: {
					err+=1;
					if(err<=3){
						destino.innerHTML="<table width=\"100%\" height=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td align=\"center\" valign=\"middle\"><span style=\"font-size: 10px; font-family: Tahoma; font-weight: bold; color: #FFFFFF;\"><img src=../"images/loading.gif/" width=\"16\" height=\"16\" align=\"absmiddle\" /> Carregando...</span></td></tr></table>";
						setTimeout(ajaxLoad,3000,fila[ifila][0],fila[ifila][1]);
					} else {
						escondeFoto();
						alert("O servidor não respondeu no tempo limite.");
					}
					break
				}
				default: {
					err+=1;
					if(err<=3){
						destino.innerHTML="<table width=\"100%\" height=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\"><tr><td align=\"center\" valign=\"middle\"><span style=\"font-size: 10px; font-family: Tahoma; font-weight: bold; color: #FFFFFF;\"><img src=../"images/loading.gif/" width=\"16\" height=\"16\" align=\"absmiddle\" /> Carregando...</span></td></tr></table>";
						setTimeout(ajaxLoad,3000,fila[ifila][0],fila[ifila][1]);
					} else {
						escondeFoto();
						alert("Algum erro ocorreu ao carregar este conteúdo.");
					}
					break
				}
			}
			ifila++;
			if(ifila<fila.length)
				setTimeout("ajaxRun()",20);
		}
	}
	xmlhttp.send(url);
}

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;
	}
	ajaxLoad(query, destino);
	return false;
}

//Color fade
var nlbFade_hextable=['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'];
var nlbFade_elemTable=new Array();
var nlbFade_t=new Array();
function NLBfadeBg(elementId,startBgColor,endBgColor,fadeTime){
	var timeBetweenSteps=Math.round(Math.max(fadeTime/300,30));
	var nlbFade_elemTableId=nlbFade_elemTable.indexOf(elementId);
	if(nlbFade_elemTableId>-1){
		for(var i=0;i<nlbFade_t[nlbFade_elemTableId].length;i++)
			clearTimeout(nlbFade_t[nlbFade_elemTableId][i])
	}else{
		nlbFade_elemTable.push(elementId);
		nlbFade_elemTableId=nlbFade_elemTable.indexOf(elementId)
	}
	var startBgColorRGB=hexToRGB(startBgColor);
	var endBgColorRGB=hexToRGB(endBgColor);
	var diffRGB=new Array();
	for(var i=0;i<3;i++)
		diffRGB[i]=endBgColorRGB[i]-startBgColorRGB[i];
	var steps=Math.ceil(fadeTime/timeBetweenSteps);
	var nlbFade_s=new Array();
	for(var i=1;i<=steps;i++){
		var changes=new Array();
		for(var j=0;j<diffRGB.length;j++)
			changes[j]=startBgColorRGB[j]+Math.round((diffRGB[j]/steps)*i);
		if(i==steps)
			nlbFade_s[i-1]=setTimeout('document.getElementById("'+elementId+'").style.backgroundColor = "'+endBgColor+'";',timeBetweenSteps*(i-1));
		else 
			nlbFade_s[i-1]=setTimeout('document.getElementById("'+elementId+'").style.backgroundColor = "'+RGBToHex(changes)+'";',timeBetweenSteps*(i-1));
	}
	nlbFade_t[nlbFade_elemTableId]=nlbFade_s
}
function hexToRGB(hexVal){
	hexVal=hexVal.toUpperCase();
	if(hexVal.substring(0,1)=='#')
		hexVal=hexVal.substring(1);
	var hexArray=new Array();
	var rgbArray=new Array();
	hexArray[0]=hexVal.substring(0,2);
	hexArray[1]=hexVal.substring(2,4);
	hexArray[2]=hexVal.substring(4,6);
	for(var k=0;k<hexArray.length;k++){
		var num=hexArray[k];
		var res=0;
		var j=0;
		for(var i=num.length-1;i>=0;i--)
			res+=parseInt(nlbFade_hextable.indexOf(num.charAt(i)))*Math.pow(16,j++);
		rgbArray[k]=res
	}
	return rgbArray
}
function RGBToHex(rgbArray){
	var retval=new Array();
	for(var j=0;j<rgbArray.length;j++){
		var result=new Array();
		var val=rgbArray[j];
		var i=0;
		while(val>16){
			result[i++]=val%16;
			val=Math.floor(val/16)
		}
		result[i++]=val%16;
		var out='';
		for(var k=result.length-1;k>=0;k--)
			out+=nlbFade_hextable[result[k]];
		retval[j]=padLeft(out,'0',2)
	}
	out='#';
	for(var i=0;i<retval.length;i++)
		out+=retval[i];
	return out
}
if(!Array.prototype.indexOf){
	Array.prototype.indexOf=function(val,fromIndex){
		if(typeof(fromIndex)!='number')
			fromIndex=0;
		for(var index=fromIndex,len=this.length;index<len;index++)
			if(this[index]==val)
				return index;
		return-1
	}
}
function padLeft(string,character,paddedWidth){
	if(string.length>=paddedWidth)
		return string;
	else{
		while(string.length<paddedWidth)
			string=character+string
	}
	return string
}

//Filter fade
//javascript:opacity(\''.$ROW['id'].'\',0,100,500);
function opacity(id,opacStart,opacEnd,millisec){var speed=Math.round(millisec/100);var timer=0;if(opacStart>opacEnd){for(i=opacStart;i>=opacEnd;i--){setTimeout("changeOpac("+i+",'"+id+"')",(timer*speed));timer++}}else if(opacStart<opacEnd){for(i=opacStart;i<=opacEnd;i++){setTimeout("changeOpac("+i+",'"+id+"')",(timer*speed));timer++}}}function changeOpac(opacity,id){var object=document.getElementById(id).style;object.opacity=(opacity/100);object.MozOpacity=(opacity/100);object.KhtmlOpacity=(opacity/100);object.filter="alpha(opacity="+opacity+")"}function shiftOpacity(id,millisec){if(document.getElementById(id).style.opacity==0){opacity(id,0,100,millisec)}else{opacity(id,100,0,millisec)}}function blendimage(divid,imageid,imagefile,millisec){var speed=Math.round(millisec/100);var timer=0;document.getElementById(divid).style.backgroundImage="url("+document.getElementById(imageid).src+")";changeOpac(0,imageid);document.getElementById(imageid).src=imagefile;for(i=0;i<=100;i++){setTimeout("changeOpac("+i+",'"+imageid+"')",(timer*speed));timer++}}function currentOpac(id,opacEnd,millisec){var currentOpac=100;if(document.getElementById(id).style.opacity<100){currentOpac=document.getElementById(id).style.opacity*100}opacity(id,currentOpac,opacEnd,millisec)}

function mostraCombo(i){
	obj = document.getElementById(i);
	if(obj.style.display == "block"){
		obj.style.display = "none";
	} else {
		obj.style.display = "block";
	}
	if(i!='recitais'){ document.getElementById('recitais').style.display = "none"; };
	if(i!='freesession'){ document.getElementById('freesession').style.display = "none"; };
//	if(i!='responsabilidadesocial'){ document.getElementById('responsabilidadesocial').style.display = "none"; };
	if(i!='workshop'){ document.getElementById('workshop').style.display = "none"; };
//	if(i!='workshow'){ document.getElementById('workshow').style.display = "none"; };
}

function mostraPhoto(i){
	obj = document.getElementById('imagePlace');
	obj.style.background = 'url('+i+')';
	obj.style.backgroundRepeat = 'no-repeat';
	obj.style.backgroundPosition = 'center center';
}