//****************************************************************************************************************************
// File: DHTML.js       Date:5/03/02 
// Author: Eduardo Pastor - Kristina Internet Business Solutions
//****************************************************************************************************************************
//Descripción:
//------------
//Definición de objetos y funciones para manejo de capas
//*************************************************************************************************************************

function findObj(psElementName, poDocument) {
	//**********************************************************************
	//***Función: findObj()
	//***Devuelve el objeto buscado
	//***Parámetros:psElementName - nombre del objeto a buscar
	//**********************************************************************
	var p,i,x;  
	if(!poDocument) poDocument=document; if((p=psElementName.indexOf("?"))>0&&parent.frames.length) {
	poDocument=parent.frames[psElementName.substring(p+1)].document; psElementName=psElementName.substring(0,p);}
	if(!(x=poDocument[psElementName])&&poDocument.all) x=poDocument.all[psElementName];
	else if (!document.layers)  if (!document.all) x=poDocument.getElementById(psElementName);
	for (i=0;!x&&i<poDocument.forms.length;i++) x=poDocument.forms[i][psElementName];
	for(i=0;!x&&poDocument.layers&&i<poDocument.layers.length;i++) x=findObj(psElementName,poDocument.layers[i].document); return x;
}
function hideLayer(poLayer) {
	//**********************************************************************
	//***Función: hideLayer()
	//***Objetivo: Oculta la capa pasada como parámetro
	//***Parámetros: poLayer - objeto capa a la que hace referencia
	//**********************************************************************
		var oObject=poLayer
		if (oObject.style) {
			oObject=oObject.style;
		}
		oObject.visibility="hidden";
	}
function showLayer(poLayer) {
	//**********************************************************************
	//***Función: showLayer()
	//***Objetivo: muesta la capa pasada como parámetro
	//***Parámetros: poLayer - objeto capa a la que hace referencia
	//**********************************************************************
		var oObject=poLayer
		if (oObject.style) {
			oObject=oObject.style;
		}
		oObject.visibility="visible";
	}

function writeLayer(poObject,psHTML){
	//alert (poObject);
	//**********************************************************************
	//***Función: writeLayer()
	//***Objetivo: reescribe una capa (o elemento IE/DOM)
	//***Parámetros: poObject - objeto capa a reescribir
	//***			 psHTML - código HTML con el que se desea reescribir la capa
	//***			 bStatic - indica si la capa es absoluta o relativa
	//**********************************************************************
	if (document.layers){//NS4
			poObject.document.open();
			poObject.document.write("<layer top=\"0\" left=\"0\">");
			poObject.document.write(psHTML);
			poObject.document.write("</layer>");
			poObject.document.close();
	}
	else{//explorer o DOM
			poObject.innerHTML=psHTML;
	}
}
function moveLayerTo(poLayer,pnX,pnY){
	//**********************************************************************
	//***Función: moveLayerTo()
	//***Objetivo: mueve la capa a un punto (coordenadas X,Y)
	//***Parámetros: poLayer - objeto capa a mover
	//***			 pnX - posición x
	//***			 pnY - posición y
	//**********************************************************************
	if (document.layers){//NS4
			poLayer.moveTo(pnX,pnY);
	}
	else{//explorer o DOM
			poLayer.style.top=pnY;
			poLayer.style.left=pnX;
	}
}
function moveLayerBy(poLayer,pnX,pnY){
	//**********************************************************************
	//***Función: moveLayerBy()
	//***Objetivo: desplaza la capa una distancia
	//***Parámetros: poLayer - objeto capa a mover
	//***			 pnX - distancia x
	//***			 pnY - distancia y
	//**********************************************************************
	if (document.layers){//NS4
			poLayer.moveBy(pnX,pnY);
	}
	else{//explorer o DOM
	//Ha de estar en la definición de la capa declarados explícitamente las propiedades top y left dentro del atributo "style"
			poLayer.style.top=parseInt(poLayer.style.top)+pnY;
			poLayer.style.left=parseInt(poLayer.style.left)+pnX;
	}
}

function ShowCursor(poName,psType){
	//**********************************************************************
	//***Función: moveLayerBy()
	//***Objetivo: Cambia el cursor (IE 4 y DOM)
	//***Parámetros: poName - ID del objeto al que se quiere cambiar el cursor
	//***			 psType - literal con el tipo de cursor a mostrar
	//**********************************************************************
	if (document.all) eval("document.all."+poName+".style.cursor='"+psType+"'");
	else if (document.getElementById) eval("document.getElementById('"+poName+"').style.cursor='"+psType+"'");
}