/** Modificaciones de Mauricio Rios para relaciones de paginas17/05/2004*/
/*Modificaciones Giovanny A Torres para permitir abrir poppups para imagenes 18-05-2004*/
function logout() {
	document.root_form.p_section.value = 'logout';
	document.root_form.submit();
}

function admin() {
  document.root_form.p_section.value = 'admin';
  document.root_form.submit();
}

function open_editor(form_name,field_name,temp_dir) {
  window.open('../editor/index.php?parent_form='+form_name+'&parent_field='+field_name+'&tmpdir='+temp_dir,'editorWindow','toolbars=no,scrollbars=no,resizable=yes,width=792,height=500');
}

function open_gallery() {
  window.open('../gallery/index.php','galleryWindow','toolbars=no,scrollbars=yes,resizable=yes,width=500,height=400');
}

var speed=6;
var msg;
/*Ancho en pixels*/
var marqueewidth=250;
/*Altura en pixels (Sólo Para NetScape)*/
var marqueeheight=20;
/*Velocidad (A mayor número más rápido)*/
var speed=6;

function regenerate(){
  window.location.reload();
}

function regenerate2(){
  if (document.layers){
    setTimeout("window.onresize=regenerate",450)
    intializemarquee();
  }
}

function intializemarquee(){
  document.cmarquee01.document.cmarquee02.document.write('<nobr>'+(msg)+'</nobr>');
  document.cmarquee01.document.cmarquee02.document.close();
  thelength=document.cmarquee01.document.cmarquee02.document.width;
  scrollit();
}

function scrollit(){
  if (document.cmarquee01.document.cmarquee02.left>=thelength*(-1)) {
    document.cmarquee01.document.cmarquee02.left-=speed;
    setTimeout("scrollit()",100);
  } else{
    document.cmarquee01.document.cmarquee02.left=marqueewidth;
    scrollit();
  }
}


/*abre un popup Adicionado por Giovanny A Torres para permitir abrir poppups para imagenes 18-05-2004*/
function openPopup(destino,ancho,alto,properties)
{
	w = (screen.width/2)-(ancho/2);
	h = (screen.height/2)-(alto/2);
	win = window.open(destino,"","width="+ancho+",height="+alto+",top="+h+",left="+w+",resizable=no,scrollbars="+properties+",toolbar=no");
	win.opener = self;
}

/* Modificaciones de Mauricio Rios 17/05/2004*/
/*Funcion que agrega items de contenido*/

function agregar(forma)
{
	/*contents es el listado con todos los contenidos y content es el listado de los escogidos */

	var i=0;
	var j=1;
	var contAdicion=forma.elements["content[]"].length;
	var contAdicion2=forma.elements["contents[]"].length;
	var arregloValores = new Array();
	var arregloTextos = new Array();
	var bandera = false;
	var temp = 1;
	var contadorTemporal = 0;


	if(forma.elements["contents[]"].options[0].selected && forma.elements["contents[]"].options[0].value=="ALL")
	{

		forma.elements["content[]"].length = contAdicion+1;
		forma.elements["content[]"].options[contAdicion].value = forma.elements["contents[]"].options[0].value;
		forma.elements["content[]"].options[contAdicion].text = forma.elements["contents[]"].options[0].text;
		contAdicion++;
		forma.elements["contents[]"].options[0]=null;
		contAdicion2 = contAdicion2-1;
		forma.elements["contents[]"].length = contAdicion2;

		for(j=0;j<forma.elements["content[]"].length;j++)
 		{
 			if(forma.elements["content[]"].options[j].value!="NOALL" && forma.elements["content[]"].options[j].value!="ALL")
			{
				forma.elements["contents[]"].length = contAdicion2+1;
	 			forma.elements["contents[]"].options[contAdicion2].value = forma.elements["content[]"].options[j].value;
	 			forma.elements["contents[]"].options[contAdicion2].text = forma.elements["content[]"].options[j].text;
	 			contAdicion2++;

				bandera = true;
			}


 		}

		if(bandera)
		{
			for(j=0;j<forma.elements["content[]"].length;j++)
	 		{
	 			if(forma.elements["content[]"].options[j].value=="NOALL" || forma.elements["content[]"].options[j].value=="ALL")
				{
					arregloValores[contadorTemporal]= forma.elements["content[]"].options[j].value;
					arregloTextos[contadorTemporal]= forma.elements["content[]"].options[j].text;
					contadorTemporal++;
				}


	 		}

			while(forma.elements["content[]"].length>0)
			{
				forma.elements["content[]"].options[0]=null;
			}

			for(i=0;i<contadorTemporal;i++)
			{
				forma.elements["content[]"].length = i+1;
				forma.elements["content[]"].options[i].value=arregloValores[i];
				forma.elements["content[]"].options[i].text=arregloTextos[i];
			}
		}




	}
	else if(forma.elements["contents[]"].options[0].value=="ALL")
	{

		/* Ciclo que recorre los contenidos */
		for(i=0;i<forma.elements["contents[]"].length;i++)
		{
			/*Se realiza solo si no se han escogido todas las páginas */
			if(forma.elements["contents[]"].value!="ALL")
			{
				/* Si el item está seleccionado se agrega al otro listado */
				if(forma.elements["contents[]"].options[i].selected)
				{
					bandera = true;
					forma.elements["content[]"].length = contAdicion+1;
					forma.elements["content[]"].options[contAdicion].value = forma.elements["contents[]"].options[i].value;
					forma.elements["content[]"].options[contAdicion].text = forma.elements["contents[]"].options[i].text;
					contAdicion++;

				}
				/* Si el item no está seleccionado se guarda en arreglos temporales solo si no se trata del item todas las páginas */
				else
				{
					if(i!=0)
					{
						arregloValores[temp]= forma.elements["contents[]"].options[i].value;
						arregloTextos[temp]= forma.elements["contents[]"].options[i].text;
						temp++;
					}
				}

			}
			/* Si se seleccionan todas las páginas se guardan en el otro listado a excpeción del item todas las páginas */
			else
			{
				for(j=1;j<forma.elements["contents[]"].length;j++)
				{
					forma.elements["content[]"].length = contAdicion+1;
					forma.elements["content[]"].options[contAdicion].value = forma.elements["contents[]"].options[j].value;
					forma.elements["content[]"].options[contAdicion].text = forma.elements["contents[]"].options[j].text;
					contAdicion++;


				}
				/* Se borra el contenido del listado que contenia todas las páginas */
				while(forma.elements["contents[]"].length>1)
				{
					forma.elements["contents[]"].options[1]=null;
				}
				break;
			}
		}

		/* Si hubo alguna selección se borra todo el oontenido de contents y se crea de nuevo con las no seleccionadas */
		if(bandera)
		{
			while(forma.elements["contents[]"].length>1)
			{
				forma.elements["contents[]"].options[1]=null;
			}

			for(i=1;i<arregloValores.length;i++)
			{
				forma.elements["contents[]"].length = i+1;
				forma.elements["contents[]"].options[i].value=arregloValores[i];
				forma.elements["contents[]"].options[i].text=arregloTextos[i];
			}
		}

	}

}

/* Funcion que elmina items de contenido */
function quitar(forma)
{
	var i=0;
	var j=0;
	var contAdicion=forma.elements["contents[]"].length;
	var contAdicion2=forma.elements["content[]"].length;
	var arregloValores = new Array();
	var arregloTextos = new Array();
	var bandera = false;
	var banderaQuitar = false;
	var banderaTodas = false;
	var temp = 0;
	var temp2 = 0;
	var valor = "";

	/* Ciclo que recorre los contenidos seleccionados para buscar si se van a quitar todas las páginas */
	for(i=0;i<forma.elements["content[]"].length;i++)
	{
		/*Revisar si de alguna forma se seleccionó quitar todas las páginas*/
		if(forma.elements["content[]"].options[i].value=="NOALL" && forma.elements["content[]"].options[i].selected)
		{
			banderaQuitar=true;
		}

	}

	/* Ciclo que recorre los contenidos seleccionados */
	if(banderaQuitar)
	{
		for(i=0;i<forma.elements["content[]"].length;i++)
		{
			/*Revisar si de alguna forma se seleccionó quitar todas las páginas*/
			if(forma.elements["content[]"].options[i].value=="ALL")
			{
				banderaTodas=true;
			}

		}

		if(banderaTodas)
		{
			for(j=0;j<forma.elements["content[]"].length;j++)
	 		{
	 			if(forma.elements["content[]"].options[j].value=="NOALL")
				{
					valor = forma.elements["content[]"].options[j].text;
				}
				if(forma.elements["content[]"].options[j].value=="ALL")
				{
					arregloValores[0]= forma.elements["content[]"].options[j].value;
					arregloTextos[0]= forma.elements["content[]"].options[j].text;
				}

	 		}

			for(j=0;j<forma.elements["contents[]"].length;j++)
	 		{

	 			arregloValores[j+1]= forma.elements["contents[]"].options[j].value;
				arregloTextos[j+1]= forma.elements["contents[]"].options[j].text;

	 		}
			forma.elements["contents[]"].length = contAdicion+1;

			for(i=0;i<arregloValores.length;i++)
	 		{

	 			forma.elements["contents[]"].options[i].value = arregloValores[i];
				forma.elements["contents[]"].options[i].text = arregloTextos[i] ;

	 		}

			while(forma.elements["content[]"].length>=1)
	 		{
	 			forma.elements["content[]"].options[0]=null;

	 		}

			forma.elements["content[]"].length = 1;
			forma.elements["content[]"].options[0].value="NOALL";
			forma.elements["content[]"].options[0].text=valor;

		}
		else
		{

			for(j=0;j<forma.elements["content[]"].length;j++)
	 		{
	 			if(forma.elements["content[]"].options[j].value!="NOALL")
				{
					forma.elements["contents[]"].length = contAdicion+1;
		 			forma.elements["contents[]"].options[contAdicion].value = forma.elements["content[]"].options[j].value;
		 			forma.elements["contents[]"].options[contAdicion].text = forma.elements["content[]"].options[j].text;
		 			contAdicion++;
				}
				else
				{
					valor = forma.elements["content[]"].options[j].text;
				}


	 		}
	 		/* Se borra el contenido del listado que contenia todas las páginas */


			while(forma.elements["content[]"].length>=1)
	 		{
	 			forma.elements["content[]"].options[0]=null;

	 		}

			forma.elements["content[]"].length = 1;
			forma.elements["content[]"].options[0].value="NOALL";
			forma.elements["content[]"].options[0].text=valor;
		}

	}
	else
	{

		for(j=0;j<forma.elements["content[]"].length;j++)
 		{
 			if(forma.elements["content[]"].options[j].value=="ALL")
			{
				banderaTodas = true;
				arregloValores[0]= forma.elements["content[]"].options[j].value;
				arregloTextos[0]= forma.elements["content[]"].options[j].text;
				temp = j;
			}


 		}

		if(banderaTodas)
		{
			for(j=0;j<forma.elements["contents[]"].length;j++)
	 		{

	 			arregloValores[j+1]= forma.elements["contents[]"].options[j].value;
				arregloTextos[j+1]= forma.elements["contents[]"].options[j].text;

	 		}
			forma.elements["contents[]"].length = contAdicion+1;

			for(i=0;i<arregloValores.length;i++)
	 		{

	 			forma.elements["contents[]"].options[i].value = arregloValores[i];
				forma.elements["contents[]"].options[i].text = arregloTextos[i] ;

	 		}
			forma.elements["content[]"].options[temp]=null;
			forma.elements["content[]"].length = contAdicion2-1;

		}
		else
		{

			for(i=0;i<forma.elements["content[]"].length;i++)
			{

				/* Si el item está seleccionado se agrega al otro listado en este caso es contents*/
				if(forma.elements["content[]"].options[i].selected)
				{
					bandera=true;
					forma.elements["contents[]"].length = contAdicion+1;
					forma.elements["contents[]"].options[contAdicion].value = forma.elements["content[]"].options[i].value;
					forma.elements["contents[]"].options[contAdicion].text = forma.elements["content[]"].options[i].text;
					contAdicion++;

				}
				/* Si el item no está seleccionado se guarda en arreglos temporales */
				else
				{
					arregloValores[temp]= forma.elements["content[]"].options[i].value;
					arregloTextos[temp]= forma.elements["content[]"].options[i].text;
					temp++;

				}


			}

			/* Si hubo alguna selección se borra todo el contenido de content y se crea de nuevo con las no seleccionadas */
			if(bandera)
			{
				while(forma.elements["content[]"].length>0)
				{
					forma.elements["content[]"].options[0]=null;
				}

				for(i=0;i<arregloValores.length;i++)
				{
					forma.elements["content[]"].length = i+1;
					forma.elements["content[]"].options[i].value=arregloValores[i];
					forma.elements["content[]"].options[i].text=arregloTextos[i];
				}
			}
		}
	}





}


/* Función que verifica que se hayan escogido items para la relación */
function verificar(forma)
{
	var i=0;

	/* Si no se han escogido items se avisa de ello */
	if(forma.elements["content[]"].length<=0)
	{
		alert("Debe escoger las relacion en que quiere que salga el item");
		return false;
	}
	/* De lo contrario se hace la validación normal */
	else
	{
		/* Si la validación normal se efectua correctamente se seleccionan todos los items de content para que se puedan guardar */
		if(true && validateForm(forma))
		{
			for(i=0;i<forma.elements["content[]"].length;i++)
			{
				if(forma.elements["content[]"].options[i].value!="NOALL")
					forma.elements["content[]"].options[i].selected = true;
				else
					forma.elements["content[]"].options[i].selected = false;

			}

			return true;
		}
		else
			return false;
	}

}
/* Fin de Modificaciones de Mauricio Rios */
/*Funciones adicionadas para ubicar la posicin de un elemnto en la pagina 18/06/2004*/
function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;


	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;


	return curtop;
}
/* fin de la definicion de las Funciones adicionadas para ubicar la posicin de un elemnto en la pagina 18/06/2004*/
/**Funcion para armar el link por giovanny*/
function explode(inputstring) {
	if(inputstring > 0){
		return false;
	}
	inputstring = new String(inputstring);
	separators = new String(",");

if(separators == "undefined") {
	separators = " :;";
}

fixedExplode = new Array(1);
currentElement = "";
count = 0;

for(x=0; x < inputstring.length; x++) {
	caracter = inputstring.charAt(x);
	if(separators.indexOf(caracter) != -1) {
		if ( currentElement == "" ) {
		}else {
			fixedExplode[count] = currentElement;
			count++;
			currentElement = "";
		}
	}
	else { currentElement += caracter;
	}
}

if ( currentElement != "") {
	fixedExplode[count] = currentElement; }
	details(fixedExplode[0],fixedExplode[1],fixedExplode[2]);
}

/*Modificacion para ocultar los selects cdo se pasa por el menu superior*/
function hidden_select(select_control,action){
 if (action==1 && document.getElementById(select_control)!=null)
  document.getElementById(select_control).style.display="none";
 if (action==2 && document.getElementById(select_control)!=null)
  document.getElementById(select_control).style.display="";
}


function getFormName(campo_nombre){
	var num_forms=document.forms.length;
	var form_name;
	for(i=0; i<num_forms; i++){
		formulario=document.forms[i];
		if(formulario.elements[campo_nombre] && formulario.name!='portal_admin_form'){
			form_name=formulario.name+"."+campo_nombre;
			break;
		}
	}
	return form_name;
}


//Funcion que permite abrir un div con prototype con metodo URL
//Implementada por: Andres Bravo.
function openModalDialogURL(URLParam,titleWindow) {

	ventana = new Window('modal_window', {className: "dialog", title: titleWindow,top:0, left:0,  width:550, height:420, zIndex:100, opacity:1, resizable: true});
  	ventana.setURL(URLParam);
  	ventana.setDestroyOnClose();
	ventana.showCenter(true);
}

//Funcion que permite abrir un div con prototype con metodo HTML
//Implementada por: Andres Bravo.
function openModalDialogHTML(ajaxArgs,titleWindow,ancho,alto) {

	ventana = new Window('modal_window', {className: "dialog", title: titleWindow,top:0, left:0,  width:ancho, height:alto, zIndex:100, opacity:1, resizable: true})
	ventana.getContent().innerHTML =ajaxArgs;
	ventana.setDestroyOnClose();
	ventana.showCenter(true);
}

//Funcion que permite abrir un div con prototype con metodo AJAX
//Implementada por: Andres Bravo.
function openModalDialogAjax(dURL,Param,titleWindow) {

  	ventana = new Window('modal_window', {className: "dialog", title: titleWindow,top:0, left:0,  width:550, height:420, zIndex:100, opacity:1, resizable: true});
  	ventana.setAjaxContent(dURL,Param);
  	ventana.setDestroyOnClose();
	ventana.showCenter(true);
}

//Funcion que permite cerrar un div desde un Frame que simula una ventana
//Implementada por: Andres Bravo.
function closeDivFrame(){
	window.parent.ventana.hide();
}



/* Modificaciones de Mauricio Rios 17/05/2004*/
/*Funcion que agrega items de contenido*/

function agregarElemento(forma,campoOrigen,campoDestino)
{
	/*contents es el listado con todos los contenidos y content es el listado de los escogidos */

	var i=0;
	var j=1;
	var contAdicion=forma.elements[campoDestino+"[]"].length;
	var contAdicion2=forma.elements[campoOrigen+"[]"].length;
	var arregloValores = new Array();
	var arregloTextos = new Array();
	var bandera = false;
	var temp = 0;
	var contadorTemporal = 0;



	/* Ciclo que recorre los contenidos */
	for(i=0;i<forma.elements[campoOrigen+"[]"].length;i++)
	{

		/* Si el item está seleccionado se agrega al otro listado */
		if(forma.elements[campoOrigen+"[]"].options[i].selected)
		{
			bandera = true;
			forma.elements[campoDestino+"[]"].length = contAdicion+1;
			forma.elements[campoDestino+"[]"].options[contAdicion].value = forma.elements[campoOrigen+"[]"].options[i].value;
			forma.elements[campoDestino+"[]"].options[contAdicion].text = forma.elements[campoOrigen+"[]"].options[i].text;
			contAdicion++;

		}
		/* Si el item no está seleccionado se guarda en arreglos temporales solo si no se trata del item todas las páginas */
		else
		{

			arregloValores[temp]= forma.elements[campoOrigen+"[]"].options[i].value;
			arregloTextos[temp]= forma.elements[campoOrigen+"[]"].options[i].text;
			temp++;

		}
	}



	/* Si hubo alguna selección se borra todo el oontenido de contents y se crea de nuevo con las no seleccionadas */
	if(bandera)
	{
		while(forma.elements[campoOrigen+"[]"].length>0)
		{
			forma.elements[campoOrigen+"[]"].options[0]=null;
		}

		for(i=0;i<arregloValores.length;i++)
		{
			forma.elements[campoOrigen+"[]"].length = i+1;
			forma.elements[campoOrigen+"[]"].options[i].value=arregloValores[i];
			forma.elements[campoOrigen+"[]"].options[i].text=arregloTextos[i];
		}
	}

}

/* Funcion que elmina items de contenido */
function quitarElemento(forma,campoOrigen,campoDestino)
{
	var i=0;
	var j=0;
	var contAdicion=forma.elements[campoOrigen+"[]"].length;
	var contAdicion2=forma.elements[campoDestino+"[]"].length;
	var arregloValores = new Array();
	var arregloTextos = new Array();
	var bandera = false;
	var banderaQuitar = false;
	var banderaTodas = false;
	var temp = 0;
	var temp2 = 0;
	var valor = "";


	for(i=0;i<forma.elements[campoDestino+"[]"].length;i++)
	{

		/* Si el item está seleccionado se agrega al otro listado en este caso es contents*/
		if(forma.elements[campoDestino+"[]"].options[i].selected)
		{
			bandera=true;
			forma.elements[campoOrigen+"[]"].length = contAdicion+1;
			forma.elements[campoOrigen+"[]"].options[contAdicion].value = forma.elements[campoDestino+"[]"].options[i].value;
			forma.elements[campoOrigen+"[]"].options[contAdicion].text = forma.elements[campoDestino+"[]"].options[i].text;
			contAdicion++;

		}
		/* Si el item no está seleccionado se guarda en arreglos temporales */
		else
		{
			arregloValores[temp]= forma.elements[campoDestino+"[]"].options[i].value;
			arregloTextos[temp]= forma.elements[campoDestino+"[]"].options[i].text;
			temp++;

		}


	}

	/* Si hubo alguna selección se borra todo el contenido de content y se crea de nuevo con las no seleccionadas */
	if(bandera)
	{
		while(forma.elements[campoDestino+"[]"].length>0)
		{
			forma.elements[campoDestino+"[]"].options[0]=null;
		}

		for(i=0;i<arregloValores.length;i++)
		{
			forma.elements[campoDestino+"[]"].length = i+1;
			forma.elements[campoDestino+"[]"].options[i].value=arregloValores[i];
			forma.elements[campoDestino+"[]"].options[i].text=arregloTextos[i];
		}
	}

}


/* Función que verifica que se hayan escogido items para la relación */
function verificarElemento(forma,campo1,campo2)
{
	var i=0;


	/* Si la validación normal se efectua correctamente se seleccionan todos los items de content para que se puedan guardar */
	if(validateForm(forma))
	{
		for(i=0;i<forma.elements[campo1+"[]"].length;i++)
		{
			forma.elements[campo1+"[]"].options[i].selected = true;
		}

		for(i=0;i<forma.elements[campo2+"[]"].length;i++)
		{
			forma.elements[campo2+"[]"].options[i].selected = true;
		}

		return true;
	}
	else
		return false;


}