

/*javascript for Bubble Tooltips by Alessandro Fulciniti
- http://pro.html.it - http://web-graphics.com */

var isMouseDown = false;

function enableTooltips(id){

	var links,i,h;

	if(!document.getElementById || !document.getElementsByTagName) return;
	
	AddCss();
	
	h=document.createElement("span");

	h.id="btc";
	
	h.setAttribute("id","btc");
	
	h.style.position="absolute";
	
	if (document.getElementsByTagName("body")) document.getElementsByTagName("body")[0].appendChild(h);
	
	if (document.getElementsByTagName("a")) {
	
		if(id==null) links=document.getElementsByTagName("a");
		else links=document.getElementById(id).getElementsByTagName("a");
	
		for(i=0;i<links.length;i++){
			Prepare(links[i]);
		}
	
	}
	
}

function Prepare(el){

	var tooltip,t,b,s,l;

	t=el.getAttribute("tt");

	if(t!=null && t.length>0) {

		el.removeAttribute("tt");

		tooltip=CreateEl("span","tooltip");

		s=CreateEl("span","top");
		s.appendChild(document.createTextNode(t));
		s.id="btctop";
		s.setAttribute("id","btctop")
		tooltip.appendChild(s);
		
		p=CreateEl("span","middle");
		p.innerHTML = '<center><img src=images/loader1.gif>';
		p.id="btccontent";
		p.setAttribute("id","btccontent")
		tooltip.appendChild(p);
		
		b=CreateEl("span","bottom");
		b.id="btcbottom";
		b.setAttribute("id","btcbottom")
		tooltip.appendChild(b);

		setOpacity(tooltip);
		
		el.mid = el.getAttribute("ttmid");

		el.tooltip=tooltip;
		
		el.onmousedown=TTMouseDown;
		el.onmouseup=TTMouseUp;

		el.onmouseover=showTooltip;

		el.onmouseout=hideTooltip;
		
		el.onmousemove=Locate;
		

	}

}

function TTMouseDown(e){

	isMouseDown=true;

}

function TTMouseUp(e){

	isMouseDown=false;
	
}

function showTooltip(e){
	
	if (isMouseDown == false) {
	
		if (document.getElementById("btc")) {
		
			LoadTT(this.mid);
			document.getElementById("btc").appendChild(this.tooltip);
			Locate(e);
		}
	
	}
	
}

function hideTooltip(e){

	if (document.getElementById("btc")) {
	
		var d=document.getElementById("btc");
		if(d.childNodes.length>0) d.removeChild(d.firstChild);
		
	}
	
}

function setOpacity(el){

	el.style.filter="alpha(opacity:95)";

	el.style.KHTMLOpacity="0.95";

	el.style.MozOpacity="0.95";

	el.style.opacity="0.95";

}

function CreateEl(t,c){
	
	var x=document.createElement(t);

	x.className=c;

	x.style.display="block";

	return(x);

}

function AddCss(){
	
	var l=CreateEl("link");

	l.setAttribute("type","text/css");

	l.setAttribute("rel","stylesheet");

	l.setAttribute("href","bt.css");

	l.setAttribute("media","screen");

	if (document.getElementsByTagName("head")) document.getElementsByTagName("head")[0].appendChild(l);

}

function Locate(e){

	var posx=0,posy=0,boxbottom=0,winbottom=0,winright=0;
	var scrollleft=0,scrolltop=0,scrollheight=0,scrollwidth=0;

	if (e==null) e=window.event;

	if (e!=null) {

		if(e.pageX || e.pageY){

		    posx=e.pageX; posy=e.pageY;

		} else if(e.clientX || e.clientY) {

			if(document.documentElement.scrollTop){

		        	posx=e.clientX+document.documentElement.scrollLeft;
		        	posy=e.clientY+document.documentElement.scrollTop;
	        	
		        	scrollleft = document.documentElement.scrollLeft;
		        	scrolltop = document.documentElement.scrollTop;

		        } else {

		        	posx=e.clientX+document.body.scrollLeft;
		        	posy=e.clientY+document.body.scrollTop;

		        	scrollleft = document.body.scrollLeft;
		        	scrolltop = document.body.scrollTop;

		        }

		}
	
		if (document.getElementById("btc")) {
	
	
			scrollheight = document.getElementById("btc").scrollHeight;
			scrollwidth = document.getElementById("btc").scrollWidth;

			boxbottom = posy + scrollheight;
			winbottom = window.document.body.clientHeight + scrolltop;
			winright = (window.document.body.clientWidth)/2 + scrollleft;

			if (boxbottom >= winbottom) {
	
				if (posx <= winright) {
	
					document.getElementById("btc").style.top = (posy-scrollheight-10)+"px";
					document.getElementById("btc").style.left=(posx-20)+"px";
					
					if (document.getElementById("btctop")) {

						document.getElementById("btctop").style.background = "url(bt3.gif) no-repeat top";
						document.getElementById("btctop").style.padding = "8px 8px 0px";
						
					}
					if (document.getElementById("btcbottom")) {
					
						document.getElementById("btcbottom").style.background = "url(bt3.gif) no-repeat bottom";
						document.getElementById("btcbottom").style.padding = "3px 8px 30px";
					
					}
			
				} else {
		
					document.getElementById("btc").style.top = (posy-scrollheight-10)+"px";
					document.getElementById("btc").style.left=(posx-scrollwidth+20)+"px";

					if (document.getElementById("btctop")) {

						document.getElementById("btctop").style.background = "url(bt4.gif) no-repeat top";
						document.getElementById("btctop").style.padding = "8px 8px 0px";
						
					}
					if (document.getElementById("btcbottom")) {
					
						document.getElementById("btcbottom").style.background = "url(bt4.gif) no-repeat bottom";
						document.getElementById("btcbottom").style.padding = "3px 8px 30px";
						
					}
					
				}
		
			} else {
	
				if (posx <= winright) {
		
					document.getElementById("btc").style.top=(posy+10)+"px";
					document.getElementById("btc").style.left=(posx-20)+"px";
			
					if (document.getElementById("btctop")) {

						document.getElementById("btctop").style.background = "url(bt.gif) no-repeat top";
						document.getElementById("btctop").style.padding = "30px 8px 3px";
						
					}
					if (document.getElementById("btcbottom")) {
					
						document.getElementById("btcbottom").style.background = "url(bt.gif) no-repeat bottom";
						document.getElementById("btcbottom").style.padding = "3px 8px 15px";
						
					}
					
				} else {
		
					document.getElementById("btc").style.top=(posy+10)+"px";
					document.getElementById("btc").style.left=(posx-scrollwidth+20)+"px";			
			
					if (document.getElementById("btctop")) {

						document.getElementById("btctop").style.background = "url(bt5.gif) no-repeat top";
						document.getElementById("btctop").style.padding = "30px 8px 3px";
						
					}
					if (document.getElementById("btcbottom")) {
					
						document.getElementById("btcbottom").style.background = "url(bt5.gif) no-repeat bottom";
						document.getElementById("btcbottom").style.padding = "3px 8px 15px";
					
					}
					
				}
	
			}

		}

	}

}