<!-- Librerias Solusoft. EPV. 2002 -->
<!-- Hide JavaScript from older browsers

/*********************************************************/
/*                                                       */
/*  Funciones y Constantes 			                     */
/*                                                       */
/*  Manejo de DOM API				 			 		 */
/*                                                       */
/*                                                       */
/*  EPV 07 Febrero 2003								     */
/*********************************************************/

// alert("Carga DOM");

// Uses: util.js, error.js

// Referencias:


// @@@@@ Constantes Globales Campos: gdom_XXXXX  @@@@@ //


// @@@@@ Funciones @@@@@ //


//-------------------------------------------------------------------
// dom_getNodoPadre(Node, String) 
// Get Nodo Padre (de nombre NODE) de un objeto o
// Dev null si no lo encuentra
//-------------------------------------------------------------------
function dom_getNodoPadre(o, NODE) // as Node
{
	if (o == null) return null;
			
    while (o.parentNode && o.parentNode.nodeName != NODE)
	       o = o.parentNode;
	
	return o.parentNode;

} // fin



//-------------------------------------------------------------------
// dom_aplicarPropiedades(Node, Array, String) 
// 	Aplicar propiedades a un nodo
// arrayPropiedades: array en formato  [ "name=valor", "name=valor", ... ]
// separadorPropiedades: separador, como =, #, ....
//-------------------------------------------------------------------
function dom_aplicarPropiedades(objNodo, arrayPropiedades, separadorPropiedades)
{
	var numPropiedades = arrayPropiedades.length;
	for (var i=0;i<numPropiedades;i++) 
	{
	    // BUG: si el valor contiene el separador fallaría el split.
		//indexOf() 
		//Returns the position of the first occurrence of a specified string inside another string. Returns -1 if it never occurs 
		//substr() 
		//Returns the specified characters. 14,7 returns 7 characters, from the 14th character (starts at 0) 
		//substring() 
		//Returns the specified characters. 7,14 returns all characters from the 7th up to but not including the 14th (starts at 0) 
        //var propiedad = arrayPropiedades[i].split(separadorPropiedades);
		//var name  = propiedad[0];
		//var value = propiedad[1];
		
		// Propiedad
		var propiedad = arrayPropiedades[i];
		// Posición del separador (OJO: Primera aparición)
		var posSeparador = propiedad.indexOf(separadorPropiedades);

		// Separador no encontrado
		if (posSeparador == -1) 
			break;
			
		var name  = propiedad.substring(0,posSeparador); 
		var value = propiedad.substring(posSeparador+1,propiedad.length);
	
		objNodo.setAttribute(name, value);			 
	} // for

} // fin



// @@@@@ Constantes Globales DOM API: gdom_XXXXX  @@@@@ //

var gdom_DOM		  = null;			    // Objeto DOM

// Inicialización	
//gdom_DOM = new DOM();

DOM = new DOM();


// @@@@@ Funciones @@@@@ //

//-------------------------------------------------------------------
// Objeto DOM
//-------------------------------------------------------------------

//-------------------------------------------------------------------
// Constructor
//-------------------------------------------------------------------
function DOM()
{
	// Propiedades

}

		
//-------------------------------------------------------------------
// getRef
// Obtener Referencia de Objeto
//-------------------------------------------------------------------
DOM.getRef = function(o)
{
	return(typeof o=="string")?document.getElementById(o):o;
}

//-------------------------------------------------------------------
// setDisplay
//-------------------------------------------------------------------
DOM.setDisplay = function(o,v)
{
	o=DOM.getRef(o);
	if(o) o.style.display=v;
}

//-------------------------------------------------------------------
// setStyle
//-------------------------------------------------------------------
DOM.setStyle = function(o,s,v)
{
	o=DOM.getRef(o);
	if(o)o[s]=v;
}

//-------------------------------------------------------------------
// setVisible
//-------------------------------------------------------------------
DOM.setVisible = function(o,bool)
{
	o=DOM.getRef(o);o.style.visibility=bool?'visible':'hidden';
}

//-------------------------------------------------------------------
// toggleDisplay
//-------------------------------------------------------------------
DOM.toggleDisplay = function(o,d1,d2)
{
	// Opcionales: d1, d2  (Valores por defecto: none, block)
    if (d1 == null) d1 = "none";
	if (d2 == null) d2 = "block";
	
	var o=DOM.getRef(o);
	o.style.display=(o.style.display==d1)?d2:d1;
}

//-------------------------------------------------------------------
// getInnerText
//-------------------------------------------------------------------
DOM.getInnerText = function(el)
{

	if(el.innerText)
		return el.innerText;

	if(typeof document.implementation!="object" ||
	typeof document.implementation.hasFeature!="function" ||
	document.implementation.hasFeature("range","")==false)
		return;
	
	var innerText;
	var rng=document.createRange();
	rng.selectNode(el);
	innerText=String(rng);
	return innerText;
}

//-------------------------------------------------------------------
// getTarget
//-------------------------------------------------------------------
DOM.getTarget = function(e)
{
return window.event?window.event.srcElement:e.target.tagName?e.target:e.target.parentNode;
}

//-------------------------------------------------------------------
// setImg
//-------------------------------------------------------------------
DOM.setImg = function(ID,s)
{
	if(!getById)return;DOM.getRef(ID).src=s;
}

//-------------------------------------------------------------------
// swapImg
//-------------------------------------------------------------------
DOM.swapImg = function(img,ImgObj)
{
	if(!getById)return;DOM.getRef(img).src=ImgObj.src;
}

//-------------------------------------------------------------------
// cargarImagenes
//-------------------------------------------------------------------
DOM.cargarImagenes = function()
{
	for(var i=0;i<arguments.length;i++)
	{
		var temp=DOM.obtenerIDImagen(arguments[i]);
		eval(temp+"=new Image()");
		eval(temp+".src='"+arguments[i]+"'");
	}
}

//-------------------------------------------------------------------
// obtenerIDImagen
//-------------------------------------------------------------------
DOM.obtenerIDImagen = function(path)
{
	var pattern=/-/;
	var id=path.substring(path.lastIndexOf("/")+1,path.lastIndexOf("."));
	while(pattern.test(id))
		id=id.replace(pattern, "_");
	return id;
}


//-------------------------------------------------------------------
// fin Objeto 
//-------------------------------------------------------------------




-->
