/************************************************
*				Floating.asp
*
* Este programa contiene las funciones necesarias
* de javascript para mostrar un objeto "flotante"
* que se mueva con el mouse.
*
*
* EJEMPLO DE USO
*===============
*
*  En el objeto que deseo que active el floating le pongo:
*		o	OnMouseOver = "floatingOn('id_objeto') 				<--- esto inicializa el modulo
*		o	OnMouseOut  = "floatingOff('id_objeto')				<--- esto termina el modulo
*		o	OnMouseMove = "showFLoating('id_objeto',5,5)	<--- Esto mueve el objeto 'id_objeto'
*
*  El objeto que deseo mover deberia estar inicialmente con la propiedad display = 'none', z-index > 0 y position: absolute
*
*Ejemplo:
*-------
*	<span bgcolor=red onMouseMove="showFLoating('table',5,5)" onMouseOver="floatingOn('table')" onMouseOut="floatingOff('table')" >sssssssssssssssssssssssssssssssssssssssss</span>
*
*	<table width=100 bgcolor=lightBlue class="floating" id=table style="border-width=1; border-color: #006699; border-style: solid">
*		<tr>
*			<td>Ejemplo</td>
*		</tr>
*	</table>
************************************************/

/*
 *******************************
 *		showFloating()
 ********************************
**
**	Descripción
**		Muestra el elemento con id = 'id' en la posicion actual del mouse, con un offset en x e y
**
**	Entrada
**		id		Id del elemento a mostrar.
**		offX	Offset en X en relacion a la posicion del mouse
**		offY	Offset en Y en relacion a la posicion del mouse
**
**  Proceso
**		Setea la propiedad style.left y style.top del objeto a las coordenadas del mouse, mas o menos
**		el offset especificado
**
**	Salida
**	Nada
*********************************/
function showFLoating(id, offX, offY, id2){

	tol = 1; //Tolerancia (distancia minima a los bordes permitida)

	t = document.all[id];
	arriba = window.top;
	//alert(top);	
	x = window.event.x + offX;
	y = window.event.y + offY;


	if( t && t.style.display != 'none'){
	
		// Chequeo que la tabla no se vaya fuera de los limites
		maxX = document.body.clientWidth - tol;
		maxY = document.body.clientHeight - tol;
		if( (y + t.clientHeight ) >= maxY )		
			y = maxY - t.clientHeight - tol;
		else if( y <= tol)
			y = tol;
		
		if( (y + t.clientWidth) >= maxX)
			x = maxX - t.clientWidth - tol;
		else if( x <= tol)
			x = tol;
		
		if (id == "tblFloatRestrictions")
		{			
		span = document.getElementById('SpanRestrictions');
		span.innerText = id2;
		}	
		
		if (id == "tblFloatNotes_About_Ranking")
		{			
		span = document.getElementById('SpanNotes_About_Ranking');
		span.innerText = id2;
	}	
	
		if (id == "tblFloatinfo")
		{			
		span = document.getElementById('Spaninfo');
		span.innerText = id2;
	}	
	
		if (id == "tblFloatAttached_Documents")
		{			
		span = document.getElementById('SpanAttached_Documents');
		span.innerText = id2;
	}
	
		if (id == "tblFloatAttached_Documents1")
		{			
		span = document.getElementById('SpanAttached_Documents1');
		span.innerText = id2;
		}	
		
		if (id == "tblFloatQuestions_during_Approval_Process")
		{			
		span = document.getElementById('SpanQuestions_during_Approval_Process');
		span.innerText = id2;
		}	
		
		if (id == "tblFloatpw_Method")
		{			
		span = document.getElementById('Spanpw_Method');
		span.innerText = id2;
		}
		
		if (id == "tblFloatBrief_Method_Description")
		{			
		span = document.getElementById('SpanBrief_Method_Description');
		span.innerText = id2;
		}
		
		t.style.left= x;		
		t.style.setExpression("posTop","document.body.scrollTop+y");		
	}

}

/*
 *******************************
 *		floatingOn()
 ********************************
**
**	Descripción
**		Inicializa el Módulo de "floating". Es la primera funcion a llamar. Muestra el objeto que tiene el id
**		como el pasado por parametro
**
**	Entrada
**		id		Id del elemento a mostrar.
**
**  Proceso
**		Setea la propiedad style.display en 'inline' para que se vea el objeto
**
**	Salida
**	Nada
*********************************/
function floatingOn(id, id2){

	t = document.all[id];
	
	if (id2 && id2 != "new")
	
		t.style.display = 'inline';	
}


/*
 *******************************
 *		floatingOff()
 ********************************
**
**	Descripción
**		Finaliza el modulo de floating
**
**	Entrada
**		id		Id del elemento a mostrar.
**
**  Proceso
**		Setea la propiedad style.display en 'none' para ocultar el objeto
**
**	Salida
**	Nada
*********************************/
function floatingOff(id, id2){

	document.all[id].style.display = 'none';
}