	
	// Esta funcion da el tamanio de la ventana del explorador en el cliente, tanto para explorer como para firefox
	function getSize (dimension) 
	{
		var myWidth = 0, myHeight = 0;
		if( typeof ( window.innerWidth )  ==  'number' ) 
		{
			//Non-IE
			myWidth = window.innerWidth;
			myHeight = window.innerHeight;
		} 
		else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) 
		{
			//IE 6+ in 'standards compliant mode'
			myWidth = document.documentElement.clientWidth;
			myHeight = document.documentElement.clientHeight;
		} 
		else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) 
		{
			//IE 4 compatible
			myWidth = document.body.clientWidth;
			myHeight = document.body.clientHeight;
		}
		
		//retornamos el tama�o pedido, que puede ser el horizontal o el vertical
		if (dimension == 'x')
			return myWidth;
		else
			return myHeight;
	}


	//Nos da la posicion del mouse
	function hovertipMouseUpdate (e) 
	{
		var mouse = hovertipMouseXY(e);
		hovertipMouseY = mouse[1];
		hovertipMouseX = mouse[0];
	}


	function hovertipMouseXY(e) {
		if (!e)	{
			if (window.event) {
				e = window.event;
			} else {
				return;
			}
		}

		var xcoord;
		var ycoord;

		if (typeof e.pageX  ==  "number") {
			xcoord = e.pageX;
			ycoord = e.clientY;
		} else if (typeof e.clientX  ==  "number") {
			xcoord = e.clientX;
			ycoord = e.clientY;
			var badOldBrowser = window.navigator.userAgent.indexOf("Opera") + 1 ||
								window.ScriptEngine && ScriptEngine ().indexOf("InScript") + 1 ||
								navigator.vendor  ==  "KDE";

			if (!badOldBrowser) {
				if (document.body && (document.body.scrollLeft || document.body.scrollTop)) {
					xcoord += document.body.scrollLeft;
				} else if (document.documentElement && (document.documentElement.scrollLeft ||  document.documentElement.scrollTop)) {
					xcoord += document.documentElement.scrollLeft;
				}
			}
		} else {
			return;
		}
		return [xcoord, ycoord];
	}

	
	function colocaAyuda (event, opcion) {
		var corX;
		var corY;

		if(navigator.userAgent.indexOf ("MSIE") >= 0) {
			//navegacion para la basura del explorer
			corX = event.clientX + document.documentElement.scrollLeft;
			corY = event.clientY + document.documentElement.scrollTop;
		} else {
			//navegacion para firefox y otros navegadores normales
			corX = event.clientX + window.scrollX;
			corY = event.clientY + window.scrollY;
		}

		//cogemos la altura vertical del area del navegador
		tamano = getSize ('y');
		tamanoHorizontal = getSize ('x');

		//cogemos las coordenadas del objeto
		hovertipMouseUpdate (event);

		if (opcion != 'compartir')
		{
			//comprobamos si estamos por encima o por debajo de la mitad del area del navegador
			if (hovertipMouseY > (tamano / 2))
			{
				//si estamos por debajo de la mitad de la pagina, calculamos unas coordenadas para que la capa salga hacia arriba
				cArriba.style.top = corY - 220 + "px";
			}
			else
			{
				//si estamos por encima de la mitad de la pagina, calculamos unas coordenadas para que la capa salga hacia abajo
				cArriba.style.top = corY - 19 + "px";
			}

			//calculamos donde poner el cuadro, si a la derecha o a la izquierda
			if (hovertipMouseX > (tamanoHorizontal / 2))
			{
				cArriba.style.left = corX - 405 + "px";
			}
			else
			{
				cArriba.style.left = corX + 12 + "px";
			}

			//datos comunes que no dependen de la posicion de la capa flotante
			cArriba.style.width = 380 + "px";
			curl.style.width = 380 + "px";
		}
		else
		{
			//Posicion Vertical
			cArriba.style.top = corY + 11 + "px";
			//Posicion horizontal
			cArriba.style.left = corX - 30 + "px";

			//datos comunes que no dependen de la posicion de la capa flotante
			cArriba.style.width = 150 + "px";
			curl.style.width = 150 + "px";
		}
		curl.style.borderTop = "1px solid #999";
		curl.style.borderBottom = "1px solid #999";

		estado = 1;

	}



	function ocultaAyuda()
	{
		cArriba.style.display = "none";
		estado = 0;
	}


	function bloquear()
	{
		cArriba.style.display = "block";	
	}


	function compruebaSalir ()
	{
		if (estado  ==  0) 
		{
			cArriba.style.display = "none";
		}
	}
	
	function muestraAyuda (evt, isin, id, ruta, nombre, opcion, plaza, templateFicha, mostrar) {
		var evtCopy = {};
		if(navigator.userAgent.indexOf ("MSIE") >= 0) {
			evt = window.event;
		}
		for (var i in evt) {
			evtCopy[i] = evt[i];
		}
		
		nombre = escape (nombre);
	
		myTimer=setTimeout(
			function() {
				colocaAyuda(evtCopy,opcion);
				curl.className = "capaFlotante2 capaFlotante";
				//calculamos la ruta del objeto que se va a representar
				var url =  ruta + "/funcionalidades/floatingLayer/floatingLayer.php?isin=" + isin + "&indice=" + id +  "&opcion=" + opcion + "&plaza=" + plaza + "&nombre=" + nombre + "&templateFicha=" + templateFicha;
				cargar (url,ruta);
				cArriba.style.display = "block";
			} ,500);

		netscopeWFG();
		return myTimer;
	}

	function muestraMenuCompartir (event, ruta)
	{
		//return;
		//nombre = escape (nombre); 
		curl.className = "capaFlotanteCompartir capaFlotante";
		colocaAyuda (event,'compartir');
		var url =  ruta + "/funcionalidades/floatingLayer/menuCompartir.php";
		cargar (url,ruta);
		cArriba.style.display = "block";
	}

	function cargar (url,ruta)
	{
		ajax = nuevoAjax ();
		ajax.open ("GET", url, true);
		ajax.onreadystatechange = function()
		{
			if(ajax.readyState == 1)
			{
				curl.innerHTML = "<div style='height:100px; width:95%;display:table;'><div style='display:table-cell; vertical-align:middle; text-align:center'><img src='"+ ruta +"/images/loader.gif' width='32' height='32' /></div></div>";
			}
			else 
			if(ajax.readyState == 4)
			{
				if(ajax.status == 200)
				{
					//mostramos los datos dentro de la div
					curl.innerHTML = "";
					curl.innerHTML = ajax.responseText;
				}
				else
				{
					if(ajax.status == 404)
					{
						curl.innerHTML = "No se pueden cargar los datos";
					}
					else
					{
						//mostramos el posible error
						curl.innerHTML = "Error:" + ajax.status; 
					}
				}
			}
		}
		ajax.send(null);
	}
