﻿// JavaScript Document

var toolTipManager = {};
toolTipManager.items = new Array();
toolTipManager.activeTooltip;
toolTipManager.IE = /MSIE (\d+\.\d+);/.test(navigator.userAgent);
toolTipManager.IEversion = new Number(RegExp.$1);
toolTipManager.fade;

toolTipManager.offsety = -70;

toolTipManager.addItem = function(idBox,idTooltip,txtInfo){
	toolTipManager.items.push({id:idBox,tooltip:idTooltip,info:txtInfo});
}

toolTipManager.getItemFromId = function(idBox){
	var exists = false;
	for(var a = 0; a < toolTipManager.items.length; a++){
		if(toolTipManager.items[a].id == idBox){
			exists = true;
			break;	
		}
	}
	if(exists == true)
		return toolTipManager.items[a];
	else
		return null;
}

toolTipManager.build = function(){
	for(var a = 0; a < toolTipManager.items.length; a++){
		$(toolTipManager.items[a].id).addEvent('mouseover', toolTipManager.show);
		$(toolTipManager.items[a].id).addEvent('mouseout', toolTipManager.hide);
	}
}

toolTipManager.show = function(obj){
	var id = obj.target.get('id');
	if(id == null)
		id = obj.target.getParent().id;
	if(id == null)
		return;
	
	var item = toolTipManager.getItemFromId(id);
		
	var tooltip = $(item.tooltip);
	tooltip.set("html","<div class='left'></div>","<div class='center'>"+item.info+"</div>","<div class='right'></div>","<div class='spacer'></div>","<div id='tooltipCorner' class='corner'></div>");

	if(toolTipManager.IE){
		tooltip.setStyle("opacity","1");	
		
		if(toolTipManager.IEversion == 6){
			$("tooltipCorner").setStyle("width","31");
			var ancho = tooltip.getStyle("width").split("px")[0];
			$("tooltipCorner").setStyle("marginLeft",Math.round((ancho-31)/2));
		}
	}else{
		tooltip.setStyle("opacity","0");
		
		toolTipManager.fade = new Fx.Tween(tooltip, {duration:300});
		toolTipManager.fade.start('opacity', '1');
	}
	
	tooltip.setStyle("visibility","visible");
	
	toolTipManager.beginInterval(tooltip);	
}

toolTipManager.hide = function(obj){
	var id = obj.target.get('id');
	if(id == null)
		id = obj.target.getParent().id;
	if(id == null)
		return;
		
	var item = toolTipManager.getItemFromId(id);
	
	if(toolTipManager.IE){
		
	}else{	
		toolTipManager.fade.cancel();
	}
	
	var tooltip = $(item.tooltip);
	tooltip.set('opacity', '0');
	
	toolTipManager.endInterval();
}

toolTipManager.beginInterval = function(tooltipElement){
	document.onmousemove = toolTipManager.doPosition;
	toolTipManager.activeTooltip = tooltipElement;
}

toolTipManager.endInterval = function(){
	document.onmousemove = null;
	toolTipManager.activeTooltip = null;
}

toolTipManager.doPosition = function(e){
	if (toolTipManager.IE) {
    	var tempX = event.clientX + document.body.scrollLeft
    	var tempY = event.clientY + document.body.scrollTop
  	} else { 
    	var tempX = e.pageX
    	var tempY = e.pageY
  	} 
	var anchoTip = toolTipManager.activeTooltip.getStyle("width").split("px")[0];
	toolTipManager.activeTooltip.setStyle("left", (tempX - Math.round(anchoTip / 2)) + "px");
	toolTipManager.activeTooltip.setStyle("top",(tempY + toolTipManager.offsety) + "px");
}

window.addEvent('domready', toolTipManager.build);





