/*
	Javascript for Bubble Tooltips by Alessandro Fulciniti
	http://pro.html.it - http://web-graphics.com 
*/

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";
	document.getElementsByTagName( "body" )[0].appendChild( h );
	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( "title" );
	if ( t == null || t.length == 0) 
		t = "link:";
	el.removeAttribute( "title" );
	tooltip = CreateEl( "span", "tooltip" );
	s = CreateEl( "span", "top" );
	//s.appendChild( document.createTextNode( t ) );
	s.innerHTML = t; // L?nea a?adida
	tooltip.appendChild( s );
	if ( false ) // L?nea a?adida
	{
		b = CreateEl( "b", "bottom" );
		l = el.getAttribute( "href" );
		if ( l != '#' ) // L?nea a?adida
		{
			if ( l.length > 28 ) 
				l = l.substr( 0, 25 ) + "...";
			b.appendChild( document.createTextNode( l ) );
		}
		tooltip.appendChild( b );
	}
	setOpacity( tooltip );
	el.tooltip = tooltip;
	el.onmouseover = showTooltip;
	el.onmouseout = hideTooltip;
	el.onmousemove = Locate;
}

function showTooltip( e )
{
	document.getElementById( "btc" ).appendChild( this.tooltip );
	Locate( e );
	document.getElementById( "btc" ).style.display = 'block';
}

function hideTooltip( e )
{
	var d = document.getElementById( "btc" );
	if ( d.childNodes.length > 0 ) 
		d.removeChild( d.firstChild );
	d.style.display = 'none';
}

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", "../css/bt.css");
	l.setAttribute( "media", "screen");
	document.getElementsByTagName( "head" )[0].appendChild( l );
}

function Locate( e )
{
	var posx = 0, posy = 0;
	var incrementoX = 300, incrementoY = -200;
	if ( e == null ) 
		e = window.event;
	if ( e.pageX || e.pageY ) // Mozilla y Opera
	{
		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;
        }
		else // IE6
		{
			posx = e.clientX + document.body.scrollLeft;
			posy = e.clientY + document.body.scrollTop;
        }
    }	
	document.getElementById( "btc" ).style.top = ( posy + incrementoY ) + "px";
	document.getElementById( "btc" ).style.left = ( posx - incrementoX ) + "px";
}