/*** Inicia o processo do ajax ***/

function runAjax(){
	if (window.ActiveXObject) { // verifica se é IE
		//estancia o objeto Active X
		ajax = new ActiveXObject("Microsoft.XMLHTTP");
	} else { //outros navegadores estancia o XMLHttpRequest
		ajax = new XMLHttpRequest();
	}
	return ajax;
}
/******************************************************************************/

/*** Loading and fading ***/ 

function showLoading(id){
	var loading = document.createElement('div');
	loading.setAttribute('id','loading');
	loading.innerHTML = "<img src=\"img/att/loading.gif\" />";
	
	var div = document.getElementById(id);
	div.appendChild(loading);
}

function hideLoading(){
	document.getElementById('loading').style.display = "none";
}
/******************************************************************************/

/*** Alterando o conteudo ***/

var divId;

//seleciona o conteudo que sera alterado na div
function loadContent(id, url) {
	divId = id;
	showLoading(divId);
	ajax = runAjax();
	ajax.onreadystatechange = changeContent;
	ajax.open("GET",url);
	ajax.send(null);
}

//altera o conteudo da div
function changeContent() {
	if (ajax.readyState == 4){
		hideLoading();
		if (ajax.status == 200) {
			var content = document.getElementById(divId);
			content.innerHTML = ajax.responseText;
		} else {
			alert ("Houve um problema ao carregar o texto:\n " + ajax.statusText);
		}
	}
}
/******************************************************************************/

/*** ToolTip ***/

/* Offset position of tooltip */
var x_offset_tooltip = 0;
var y_offset_tooltip = 5;

/* Don't change anything below here */
var ajax_tooltipObj = false;
var ajax_tooltipObj_iframe = false;

var ajax_tooltip_MSIE = false;
if(navigator.userAgent.indexOf('MSIE')>=0)ajax_tooltip_MSIE=true;

function ajax_showTooltip(externalFile,inputObj)
{
	if(!ajax_tooltipObj)	/* Tooltip div not created yet ? */
	{
		ajax_tooltipObj = document.createElement('DIV');
		ajax_tooltipObj.style.position = 'absolute';
		ajax_tooltipObj.id = 'ajax_tooltipObj';		
		document.body.appendChild(ajax_tooltipObj);
		
		// Create arrow div
		/*var leftDiv = document.createElement('DIV');	
		leftDiv.className='ajax_tooltip_arrow';
		leftDiv.id = 'ajax_tooltip_arrow';
		ajax_tooltipObj.appendChild(leftDiv);*/
		
		var contentDiv = document.createElement('DIV'); /* Create tooltip content div */
		contentDiv.className = 'ajax_tooltip_content';
		ajax_tooltipObj.appendChild(contentDiv);
		contentDiv.id = 'ajax_tooltip_content';
		
		if(ajax_tooltip_MSIE){	/* Create iframe object for MSIE in order to make the tooltip cover select boxes */
			ajax_tooltipObj_iframe = document.createElement('<IFRAME frameborder="0">');
			ajax_tooltipObj_iframe.style.position = 'absolute';
			ajax_tooltipObj_iframe.border='0';
			ajax_tooltipObj_iframe.frameborder=0;
			ajax_tooltipObj_iframe.style.backgroundColor='#FFF';
			ajax_tooltipObj_iframe.src = 'about:blank';
			contentDiv.appendChild(ajax_tooltipObj_iframe);
			ajax_tooltipObj_iframe.style.left = '0px';
			ajax_tooltipObj_iframe.style.top = '20px';
		}		
	}
	// Find position of tooltip
	ajax_tooltipObj.style.display='block'; 
	loadContent('ajax_tooltip_content',externalFile);
	
	if(ajax_tooltip_MSIE){
		ajax_tooltipObj_iframe.style.width = ajax_tooltipObj.clientWidth + 'px';
		ajax_tooltipObj_iframe.style.height = ajax_tooltipObj.clientHeight + 'px';
	}

	ajax_positionTooltip(inputObj);
}

function ajax_positionTooltip(inputObj)
{
	var leftPos = (ajaxTooltip_getLeftPos(inputObj) + inputObj.offsetWidth);
	var topPos = ajaxTooltip_getTopPos(inputObj);
	
	/*
	var rightedge=ajax_tooltip_MSIE? document.body.clientWidth-leftPos : window.innerWidth-leftPos
	var bottomedge=ajax_tooltip_MSIE? document.body.clientHeight-topPos : window.innerHeight-topPos
	*/
	
	var tooltipWidth = document.getElementById('ajax_tooltip_content').offsetWidth; 
	//var tooltipWidth = document.getElementById('ajax_tooltip_content').offsetWidth +  document.getElementById('ajax_tooltip_arrow').offsetWidth; 
	// Dropping this reposition for now because of flickering
	//var offset = tooltipWidth - rightedge; 
	//if(offset>0)leftPos = Math.max(0,leftPos - offset - 5);
	ajax_tooltipObj.style.left = leftPos + 'px';
	ajax_tooltipObj.style.top = topPos + 'px';	
}

function ajax_hideTooltip(){
	ajax_tooltipObj.style.display='none';
}

function ajaxTooltip_getTopPos(inputObj){		
	var returnValue = inputObj.offsetTop;
	while((inputObj = inputObj.offsetParent) != null){
		if(inputObj.tagName!='HTML')returnValue += inputObj.offsetTop;
	}
	if (window.ActiveXObject){
		returnValue = returnValue;
	} else {
		returnValue = returnValue - 62;  
	}	
	//alert(returnValue);
 	return returnValue;
}

function ajaxTooltip_getLeftPos(inputObj){
  var returnValue = inputObj.offsetLeft;
  while((inputObj = inputObj.offsetParent) != null){
  	if(inputObj.tagName!='HTML')returnValue += inputObj.offsetLeft;
  }
  //returnValue = returnValue - 21;
  //alert(returnValue);
  return returnValue;
}
/******************************************************************************/