// ********************* Funciones Para los menus que siempre te salgan en pantalla con el nombre tabla_desplazar
function findScrollTop() {
	if (window.pageYOffset != null)
		return window.pageYOffset;
	if (document.body.scrollWidth != null)
		return document.body.scrollTop;
	return null;
}
var offsetTablaInicial = null;
	function numDigitos( valor, ancho) {
		var res, i;
		res = valor +"";
		for (i=(res+"").length; i<ancho; i++) {
			res ="0"+ res;
		}
		return res;
	}
function miOnScroll() {
	var top;
	//alert("scroll");
	if ( offsetTablaInicial==null) {
		offsetTablaInicial = document.all["tabla_desplazar"].offsetTop;
	} else {
		top = findScrollTop();
		if (top!=null) {
			if (top>offsetTablaInicial) {
				document.all["tabla_desplazar"].style.top = top;				
			} else {
				document.all["tabla_desplazar"].style.top = offsetTablaInicial;
			}
		}				
	}
}



function getValor(item) {
		var res;
		res="";
		if (item!=null) {
			if (item.value==null) {
				for (i=0;i<item.length;i++) {
					if (item[i].checked==true) {
							res=item[i].value;
					}
				}
			} else {
				res = item.value;
			}
		}
		return res;
}

function eliminarEntradaAsiento(numero) {
	if (confirm("¿Seguro que desea eliminar esta linea?")) {
		eval("document.formulario.importe_"+numero+".value='';");
		eval("document.formulario.cuenta_"+numero+".value='';");
	}
	return;
}

function changeDisplay(id) {
	//Permite ocultar o ver un elemento:
	var nodo=document.all[id];
	if (nodo.style.display=="none") {
		nodo.style.display="block";
	} else {
		nodo.style.display="none";
	}
}

function openWindow(url, ancho, alto) {
	strancho=ancho;
	stralto=alto;
	if (ancho==null) strancho = 600;
	if (alto==null) stralto = 360;
	window.open(url,"","resizable=yes,status=1,scrollbars=1,width="+strancho+",height="+stralto,false);
}

function esVacio(cadena) {
	if (trim(cadena)=="") return true;
	else return false;
}

function comprobarTabla(form) {
	var res;
	res = true;
	if (form.op.value=="guardar_cliente") {
		if (trim(form.empresa.value)=="") {
			alert("El nombre de la empresa no puede ser vacio");
			res = false;
		}
	} else if (form.op.value=="guardar_contacto") {
		if (trim(form.nombre.value)+trim(form.apellidos.value)=="") {
			alert("El nombre o los apellidos del Contacto no puede ser Vacio");
			res = false;
		}
	} else if (form.op.value=="guardar_centro") {
		if (trim(form.centro.value)=="") {
			alert("El nombre del Centro no puede ser Vacio");
			res = false;
		}
	} else if (form.op.value=="guardar_consumo") {
		if (trim(form.idproducto.value)=="") {
			alert("El nombre del Producto no puede ser Vacio");
			res = false;
		}
	}
	return res;
}

function openLogin() {
	var url="popup_login.php";
	window.open(url,"","resizable=0,status=0,scrollbars=0,width=200,height=140",false);
	//window.open(url,"","",false);
}

function openBigWindow(url) {
	window.open(url,"","resizable=yes,status=1,scrollbars=1,width=540,height=480",false);
}

function setEmpresa(nombre, id) {
	//Si la nueva empresa es distinta, borro el codigo del centro
	if (window.opener.document.formulario.idempresa.value != id) {
		window.opener.document.formulario.idcentro.value="";
	}
	window.opener.document.formulario.idempresa.value=id;
	window.opener.document.formulario.empresa.value=nombre;
	window.close();
}

function setProducto(id, codigo, nombre) {
	window.opener.document.formulario.idproducto.value=id;
	window.opener.document.formulario.producto.value=nombre;
	window.opener.document.formulario.codigo.value=codigo;
	window.close();
}

function setEmpresaFromCentro(nombre, id) {
	window.opener.document.formulario.idempresa.value=id;
	window.opener.document.formulario.empresa.value=nombre;
	window.close();
}

function setCentro(nombre, id, nombre_empresa, idempresa) {
	window.opener.document.formulario.idempresa.value=idempresa;
	window.opener.document.formulario.empresa.value=nombre_empresa;
	window.opener.document.formulario.idcentro.value=id;
	window.opener.document.formulario.centro.value=nombre;
	window.close();
}

function setDireccion( form ) {
	var documentForm = window.opener.document.formulario;
	if (documentForm.direccion!=null) documentForm.direccion.value=form.direccion.value;
	if (documentForm.poblacion!=null) documentForm.poblacion.value=form.poblacion.value;
	if (documentForm.cp!=null) documentForm.cp.value=form.cp.value;
	if (documentForm.idprovincia!=null) documentForm.idprovincia.value=form.idprovincia.value;
	if (documentForm.pais!=null) documentForm.pais.value=form.pais.value;
	if (documentForm.telefono!=null) documentForm.telefono.value=form.telefono.value;
	if (documentForm.fax!=null) documentForm.fax.value=form.fax.value;
	if (documentForm.direccion_matiz!=null) documentForm.direccion_matiz[1].checked=true;
	window.close();
}

function trim(inputString) {
   // Removes leading and trailing spaces from the passed string. Also removes
   // consecutive spaces and replaces it with one space. If something besides
   // a string is passed in (null, custom object, etc.) then return the input.
   if (typeof inputString != "string") { return inputString; }
   var retValue = inputString;
   var ch = retValue.substring(0, 1);
   while (ch == " ") { // Check for spaces at the beginning of the string
      retValue = retValue.substring(1, retValue.length);
      ch = retValue.substring(0, 1);
   }
   ch = retValue.substring(retValue.length-1, retValue.length);
   while (ch == " ") { // Check for spaces at the end of the string
      retValue = retValue.substring(0, retValue.length-1);
      ch = retValue.substring(retValue.length-1, retValue.length);
   }
   while (retValue.indexOf("  ") != -1) { // Note that there are two spaces in the string - look for multiple spaces within the string
      retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length); // Again, there are two spaces in each of the strings
   }
   return retValue; // Return the trimmed string back to the user
} // Ends the "trim" function

function resaltarGuardar() {
	var element = document.getElementById("boton_guardar");
	if (element!=null) {
		element.innerHTML ="* Guardar *";
	}
}

function abrirMail() {
	if (event.ctrlKey) {
		event.returnValue=false;
		window.open('http://www.varaderoweb.com/cgi-bin/sqwebmail');
		return false;
	}
}

/*function getElement( id ) {
	var element;
	if (document.getElementById==null) {
		element = document.all[id];
	} else {
		element =document.getElementById(id);
	}
	return element;
}*/

//Esta es las correcta 
function getElement( id, ndoc) {
	var element;
	if (ndoc==null) doc=document;
	else doc=ndoc;
	if (doc.getElementById==null) {
		element = doc.all[id];
	} else {
		element =doc.getElementById(id);
	}
	return element;
}


function toggleOcultacion(partner) {
	var table = getElement(partner);
	if (table!=null) {
		if (table.style.display=="none") table.style.display="block";
		else table.style.display="none";
	}
}

function mostrarOcultacion(partner) {
	var table = getElement(partner);
	table.style.display="block";	
}

function ocultarOcultacion(partner) {
	var table = getElement(partner);
	table.style.display="none";	
}

function onchange_data() {
	var f = document.form_q;
	var seccion=f.seccion.options[f.seccion.selectedIndex].value;
	var proveedor=f.proveedor.options[f.proveedor.selectedIndex].value;
	var marca=f.marca.options[f.marca.selectedIndex].value;
	var modelo=f.modelo.value;
	window.location.href="cm_ls_productos.php?seccion="+seccion+"&proveedor="+proveedor+"&marca="+marca+"&modelo="+modelo;
}

function urlencode(ch) {
   ch = escape(ch);
   ch = ch.replace(/[+]/g,"%2B");
   return  ch;
}

function esVacio(cadena) {
	if (trim(cadena)=="") return true;
	else return false;
}


function replaceSubstring(inputString, fromString, toString) {
   // Goes through the inputString and replaces every occurrence of fromString with toString
   var temp = inputString;
   if (fromString == "") {
      return inputString;
   }
   if (toString.indexOf(fromString) == -1) { // If the string being replaced is not a part of the replacement string (normal situation)
      while (temp.indexOf(fromString) != -1) {
         var toTheLeft = temp.substring(0, temp.indexOf(fromString));
         var toTheRight = temp.substring(temp.indexOf(fromString)+fromString.length, temp.length);
         temp = toTheLeft + toString + toTheRight;
      }
   } else { // String being replaced is part of replacement string (like "+" being replaced with "++") - prevent an infinite loop
      var midStrings = new Array("~", "`", "_", "^", "#");
      var midStringLen = 1;
      var midString = "";
      // Find a string that doesn't exist in the inputString to be used
      // as an "inbetween" string
      while (midString == "") {
         for (var i=0; i < midStrings.length; i++) {
            var tempMidString = "";
            for (var j=0; j < midStringLen; j++) { tempMidString += midStrings[i]; }
            if (fromString.indexOf(tempMidString) == -1) {
               midString = tempMidString;
               i = midStrings.length + 1;
            }
         }
      } // Keep on going until we build an "inbetween" string that doesn't exist
      // Now go through and do two replaces - first, replace the "fromString" with the "inbetween" string
      while (temp.indexOf(fromString) != -1) {
         var toTheLeft = temp.substring(0, temp.indexOf(fromString));
         var toTheRight = temp.substring(temp.indexOf(fromString)+fromString.length, temp.length);
         temp = toTheLeft + midString + toTheRight;
      }
      // Next, replace the "inbetween" string with the "toString"
      while (temp.indexOf(midString) != -1) {
         var toTheLeft = temp.substring(0, temp.indexOf(midString));
         var toTheRight = temp.substring(temp.indexOf(midString)+midString.length, temp.length);
         temp = toTheLeft + toString + toTheRight;
      }
   } // Ends the check to see if the string being replaced is part of the replacement string or not
   return temp; // Send the updated string back to the user
} // Ends the "replaceSubstring" function


// Funciones de expansión de popups
// Funciones de expansión de popups
// Funciones de expansión de popups
// Funciones de expansión de popups
// Funciones de expansión de popups
// Funciones de expansión de popups

var urlXml, idpadre, strIdNodo, id, inputNodeValue, strIdElement, nEsforzado;
strIdNodo="";
urlXml="";

function mostrarTr(strid, strelemento, doc) {
	var res=false;
	var nodo2 = getElement("seccion_"+strelemento, doc);
	if (nodo2!=null) {
		if (nodo2.style.display=="block") res=true;
	}
	return res;
}

function expandirSeccion(stroculto, strelemento, strid, doc) {
	var nodo, display;
	nodo = getElement("seccion_"+strelemento,doc);
	if (nodo!=null) {
		display = nodo.style.display;		
		if ( (display=="block") || (display=="") ) {
			nodo.style.display="none";
			nodo.innerHTML="";
		} else {			
			nodo.style.display="block";
			nodo = getElement("seccion_"+strelemento,doc);
			if (nodo!=null) {
				nodo.innerHTML="Cargando datos ...";
				urlXml="xml_html_popup_seccion";
				strIdNodo="seccion_"+strelemento;
				url="xml_html_popup_seccion.php?id="+strid+"&idoculto=th_"+stroculto+"&idelemento="+strelemento;
				//alert(url);
				getXml(url);
			}
		}
	}
	mostrarTr(stroculto, strelemento, doc);
}


function expandirSeccionNueva(tipo) {
	var nodo, display;
	//alert ();
	nodo = getElement("seccion_nueva");
	if (nodo!=null) {
		display = nodo.style.display;	
		if ( (display=="block") || (display=="") ) {
			nodo.style.display="none";
			nodo.innerHTML="";
		} else {			
			nodo.style.display="block";
			nodo = getElement("seccion_nueva");
			if (nodo!=null) {
				//nodo.innerHTML="Cargando datos ...";
				urlXml="xml_html_popup_seccion";
				strIdNodo="seccion_nueva";
				url="xml_html_popup_seccion.php?tipo="+tipo;
				getXml(url);
			}
		}
	}
	
	var res=false;
	var nodo2 = getElement("seccion_nueva");
	if (nodo2!=null) {
		if (nodo2.style.display=="block") res=true;
	}
	return res;
}

function expandirItemNuevo(strMenu) {
	var nodo, display;
	nodo = getElement("item_nuevo");
	if (nodo!=null) {
		display = nodo.style.display;	
		if ( (display=="block") || (display=="") ) {
			nodo.style.display="none";
			nodo.innerHTML="";
		} else {			
			nodo.style.display="block";
			nodo = getElement("item_nuevo");
			if (nodo!=null) {
				//nodo.innerHTML="Cargando datos ...";
				urlXml="xml_html_popup_item";
				strIdNodo="item_nuevo";
				url="xml_html_popup_item.php?idmenu="+strMenu;
				getXml(url);
			}
		}
	}
}

function expandirNavegacionNueva(tipo) {
	var nodo, display;
	nodo = getElement("navegacion_nueva");
	if (nodo!=null) {
		display = nodo.style.display;	
		if ( (display=="block") || (display=="") ) {
			nodo.style.display="none";
			nodo.innerHTML="";
		} else {			
			nodo.style.display="block";
			nodo = getElement("navegacion_nueva");
			if (nodo!=null) {
				//nodo.innerHTML="Cargando datos ...";
				urlXml="xml_html_popup_navegacion";
				strIdNodo="navegacion_nueva";
				url="xml_html_popup_navegacion.php?tipo="+tipo;
				getXml(url);
			}
		}
	}

	//Mostrar la tr
	var res=false;
	var nodo2 = getElement("navegacion_nueva");
	if (nodo2!=null) {
		if (nodo2.style.display=="block") res=true;
	}
	return res;

}

function expandirDetalleFormularioNuevo(strFormulario) {
	var nodo, display;
	//alert ();
	nodo = getElement("detalleformulario_nuevo");
	if (nodo!=null) {
		display = nodo.style.display;	
		if ( (display=="block") || (display=="") ) {
			nodo.style.display="none";
			nodo.innerHTML="";
		} else {			
			nodo.style.display="block";
			nodo = getElement("detalleformulario_nuevo");
			if (nodo!=null) {
				//nodo.innerHTML="Cargando datos ...";
				urlXml="xml_html_popup_detalleformulario";
				strIdNodo="detalleformulario_nuevo";
				url="xml_html_popup_detalleformulario.php?idformulario="+strFormulario;
				getXml(url);
			}
		}
	}
	
	var res=false;
	var nodo2 = getElement("detalleformulario_nuevo");
	if (nodo2!=null) {
		if (nodo2.style.display=="block") res=true;
	}
	return res;
}

function getXml(url, doc) {
	var nodo = getElement("xmlisland",doc);
	nodo.src=url;
	//alert (url);
}

function loadXml() {
	var res;
	var doc = document;
	var xmlNode = xmlisland.XMLDocument;
	//alert("loadXml: "+xmlNode.text);

	if (urlXml=="xml_html_popup_seccion") {
		
		nodo = getElement(strIdNodo);
		//alert(strIdNodo);
		if (nodo!=null) {
			nodo.innerHTML=xmlNode.text;
		}
		//alert("loadXml2: "+nodo.innerHTML);
	} else if (urlXml=="xml_html_popup_item") {
		nodo = getElement(strIdNodo);
		if (nodo!=null) {
			nodo.innerHTML=xmlNode.text;
		}
	} else if (urlXml=="xml_html_popup_ponencia") {
		
		nodo = getElement(strIdNodo);
		if (nodo!=null) {
			nodo.innerHTML=xmlNode.text;
		}
	} else if (urlXml=="xml_html_popup_detalleformulario"){
		//alert (strIdNodo);
		nodo = getElement(strIdNodo);
		//alert(nodo.outerHTML);
		if (nodo!=null) {
			nodo.innerHTML=xmlNode.text;
			
		}
		
	} else if (urlXml=="xml_html_popup_menus"){

			//alert (strIdNodo);
		nodo = getElement(strIdNodo);
		//alert(nodo.outerHTML);
		if (nodo!=null) {
			nodo.innerHTML=xmlNode.text;
		}
			
	} else if (urlXml=="xml_html_popup_navegacion") {
		
		nodo = getElement(strIdNodo);
		if (nodo!=null) {
			nodo.innerHTML=xmlNode.text;
		}
	}
	urlXml="";

}

//Menus
function mostrarTrMenu(strid, strelemento, doc) {
	var res=false;
	var nodo2 = getElement("menu_"+strelemento, doc);
	
	if (nodo2!=null) {
		if (nodo2.style.display=="block") res=true;
	}
	return res;
}

function expandirMenu(stroculto, strelemento, strid, strMenu,doc) {
	var nodo, display;
	
	nodo = getElement("menu_"+strelemento,doc);
	if (nodo!=null) {
		display = nodo.style.display;		
		if ( (display=="block") || (display=="") ) {
			nodo.style.display="none";
			nodo.innerHTML="";
		} else {			
			nodo.style.display="block";
			nodo = getElement("menu_"+strelemento,doc);
			if (nodo!=null) {
				nodo.innerHTML="Cargando datos ...";
				urlXml="xml_html_popup_menus";
				strIdNodo="menu_"+strelemento;
				url="xml_html_popup_menus.php?id="+strid+"&idoculto=th_"+stroculto+"&idelemento="+strelemento+"&idmenu="+strMenu;
				getXml(url);
			}
		}
	}
	mostrarTrMenu(stroculto, strelemento, doc);
}

//Item
function mostrarTrItem(strid, strelemento, doc) {
	var res=false;
	var nodo2 = getElement("item_"+strelemento, doc);
	
	if (nodo2!=null) {
		if (nodo2.style.display=="block") res=true;
	}
	return res;
}

function expandirItem(stroculto, strelemento, strid, strMenu,doc) {
	var nodo, display;
	
	nodo = getElement("item_"+strelemento,doc);
	if (nodo!=null) {
		display = nodo.style.display;		
		if ( (display=="block") || (display=="") ) {
			nodo.style.display="none";
			nodo.innerHTML="";
		} else {			
			nodo.style.display="block";
			nodo = getElement("item_"+strelemento,doc);
			if (nodo!=null) {
				nodo.innerHTML="Cargando datos ...";
				urlXml="xml_html_popup_item";
				strIdNodo="item_"+strelemento;
				url="xml_html_popup_item.php?id="+strid+"&idoculto=th_"+stroculto+"&idelemento="+strelemento+"&idmenu="+strMenu;
				getXml(url);
			}
		}
	}
	mostrarTrItem(stroculto, strelemento, doc);
}

//Nvegacion
function mostrarTrNavegacion(strid, strelemento, doc) {
	var res=false;
	var nodo2 = getElement("navegacion_"+strelemento, doc);
	
	if (nodo2!=null) {
		if (nodo2.style.display=="block") res=true;
	}
	return res;
}

function expandirNavegacion(stroculto, strelemento, strid, strMenu,doc) {
	var nodo, display;
	
	nodo = getElement("navegacion_"+strelemento,doc);
	if (nodo!=null) {
		display = nodo.style.display;		
		if ( (display=="block") || (display=="") ) {
			nodo.style.display="none";
			nodo.innerHTML="";
		} else {			
			nodo.style.display="block";
			nodo = getElement("navegacion_"+strelemento,doc);
			if (nodo!=null) {
				nodo.innerHTML="Cargando datos ...";
				urlXml="xml_html_popup_navegacion";
				strIdNodo="navegacion_"+strelemento;
				url="xml_html_popup_navegacion.php?id="+strid+"&idoculto=th_"+stroculto+"&idelemento="+strelemento+"&idmenu="+strMenu;
				getXml(url);
			}
		}
	}
	mostrarTrItem(stroculto, strelemento, doc);
}
//detalle
function mostrarTrDetalleFormulario(strid, strelemento, doc) {
	var res=false;
	var nodo2 = getElement("detalleformulario_"+strelemento, doc);
	
	if (nodo2!=null) {
		if (nodo2.style.display=="block") res=true;
	}
	return res;
}

function expandirDetalleFormulario(stroculto, strelemento, strid, strFormulario,doc) {
	var nodo, display;
	nodo = getElement("detalleformulario_"+strelemento,doc);
	if (nodo!=null) {
		display = nodo.style.display;		
		if ( (display=="block") || (display=="") ) {
			nodo.style.display="none";
			nodo.innerHTML="";
		} else {			
			nodo.style.display="block";
			nodo = getElement("detalleformulario_"+strelemento,doc);
			//alert (nodo);
			if (nodo!=null) {
				nodo.innerHTML="Cargando datos ...";
				urlXml="xml_html_popup_detalleformulario";
				strIdNodo="detalleformulario_"+strelemento;
				url="xml_html_popup_detalleformulario.php?id="+strid+"&idoculto=th_"+stroculto+"&idelemento="+strelemento+"&idformulario="+strFormulario;
				getXml(url);
			}
		}
	}
	mostrarTrDetalleFormulario(stroculto, strelemento, doc);
}


function getXml(url, doc) {
	var nodo = getElement("xmlisland",doc);
	nodo.src=url;
	//alert(nodo.src);
}

function cambioForm(indice) {
	document["formulario_"+indice]["cambio"].value="1";
}
function revisarFormulario(indice) {
	//alert (indice);
	if (document["formulario_"+indice]["cambio"].value=="1" ){
		return false;
	}else{
		return true;
	}
}

function revisarSeccion(indice) {
	if (document["formulario_"+indice]["cambio"].value=="1" ) {
		return false;
	} else{
		return true;
	}
}



function eliminarInstitucion(strid) {
	var nodo = getElement("mostrar_instituciones_"+strid);
	nodo.outerHTML="";


	var valorPrevio = document.formulario.institucion.value;
	var v = valorPrevio.split(",");
	var res="";
	var i;
	for (i=0;i<v.length;i++) {
		if (v[i]!="") {
			if (v[i]!=strid) {
				res = res +","+v[i];
			}
		}
	}
	if (res!="") res=res.substring(1);
	document.formulario.institucion.value = res;
}


function eliminarOrganizador(strid) {
	var nodo = getElement("mostrar_instituciones_"+strid);
	nodo.outerHTML="";


	var valorPrevio = document.formulario.organizador.value;
	var v = valorPrevio.split(",");
	var res="";
	var i;
	for (i=0;i<v.length;i++) {
		if (v[i]!="") {
			if (v[i]!=strid) {
				res = res +","+v[i];
			}
		}
	}
	if (res!="") res=res.substring(1);
	document.formulario.organizador.value = res;
}

function eliminarOrganizadorEvento(strid) {
	//alert(strid);
	var nodo = getElement("mostrar_organizadores_"+strid);
	nodo.outerHTML="";


	var valorPrevio = document.formulario.organizador.value;
	var v = valorPrevio.split(",");
	var res="";
	var i;
	for (i=0;i<v.length;i++) {
		if (v[i]!="") {
			if (v[i]!=strid) {
				res = res +","+v[i];
			}
		}
	}
	if (res!="") res=res.substring(1);
	document.formulario.organizador.value = res;
}

function perteneceLista(valor,lista) {
        var res=false;
        pos =(","+lista+",").indexOf(","+valor+",");
        if (pos!=-1) {
                res=true;
        }
        return res;
}

function construyeUrlMenosMas(url,lista,itemsMas) {
	var res,urlBase,resto,w,x,i,atributo,valor,nresto;
	var v = url.split("?");
	if (v.length==1) {
		res = url+"?"+itemsMas;
	} else {
		nresto="";
		urlBase = v[0];
		resto = v[1];
		w = resto.split("&");
		for (i=0;i<w.length;i++) {
			if (w[i]!=""){
				x = w[i].split("=");
				atributo = x[0];
				valor="";
				if (x.length>0) valor = x[1];
				if (valor!="") {
					if (!perteneceLista(atributo,lista)) {
						nresto = nresto + "&" + atributo + "=" + valor;
					}
				}
			}
		}
		nresto += "&" + itemsMas;
		if (nresto!="") nresto=nresto.substring(1);
		res = urlBase + "?" + nresto;
	}
	return res;
}

function eliminarCampo(nodo) {
	var nodoPadre = getPadreConId(nodo);
	if (confirm('¿Seguro que desea eliminar este elemento?')) {
		var nodo = nodoPadre;
		nodo.parentNode.removeChild( nodo );		
	}
	return false;
}

function nuevoCampo(nodo,strTitle,nuevoTexto ) {
	var res = nuevoTexto;
	var re;
	re = new RegExp('<([^>]*='+strTitle+'_)([0-9]*)','g'); 
	res = res.replace(re, '<$1'+idCampos);
	re = new RegExp('<([^>]*="'+strTitle+'_)([0-9]*)','g'); 
	res = res.replace(re, '<$1'+idCampos);

	re = new RegExp('Campo ([0-9]*):','g'); 
	res = res.replace(re, 'Campo '+idCampos);
	
	var strSpan = nodo.id.substring(0, nodo.id.length-4 ) + "span";
	var span = getElement( strSpan );
	elem = document.createElement("div");
	elem.id = strTitle+"_" + idCampos+ "_span";
	idCampos++; 
	elem.innerHTML = res;
	//alert(res);
	span.parentNode.appendChild( elem );
	return idCampos-1;
}

/* Dado un nodo te devuelve el identificador del primer nodo padre que tenga el campo id*/
function getIdentificadorPadre(nodo) {
	var nodoPadre = getPadreConId(nodo);
	var res=nodoPadre.id;
	return res;
}

/* Dado un nodo te devuelve el indice del identificador del primer nodo padre que tenga el campo id
Si el padre es campo_1_algo te devolvería 1
*/
function getIdentificadorPadreIndice(nodo) {
	var nodoPadre = getPadreConId(nodo);
	var v = nodoPadre.id.split("_");
	var res="";
	res = v[1];
	return res;
}

/* Dado un nodo te devuelve el nodo del primer nodo padre que tenga el campo id*/
function getPadreConId(nodo) {
	var res=null;
	if (nodo.id!=null) {
		if (nodo.id!="") {
			res = nodo;
		}
	}
	if (res==null) res = getPadreConId(nodo.parentNode);
	return res;
}

/* Separa la cadena por el delimitador y coge la cadena a partir de la derecha num veces*/
function getRightToLast(cadena, delim, num) {
        var pos;
        var res="";
        var tmp=cadena;
        for(i=0;i<num;i++) {
                pos = tmp.lastIndexOf(delim);
                if (pos!=-1) {
                        res = tmp.substring(pos) + res;
                        tmp = tmp.substring(0,pos);
                } else {
                        res = tmp + res;
                        tmp = "";
                }
        }
        if (res.length>=delim.length) {
                if (res.substring(0,delim.length)==delim) {
                        res = res.substring(delim.length);
                }
        }
        return res;
}
/* Separa la cadena por el delimitador y elimina elementos desde la derecha num veces*/
function getLeftToLast(cadena, delim, num) {
        var pos;
        var res=cadena;
        for(i=0;i<num;i++) {
                pos = res.lastIndexOf(delim);
                if (pos!=-1) {
                        res = res.substring(0,pos);
                }
        }
        return res;
}

function compruebaNif(valor) {
	var str = valor
	var validRegExp = /^[0-9]{8}[a-zA-Z]$/i;
	res=true;
	// search email text for regular exp matches
	if (str.search(validRegExp) == -1) {
		res=false;
	} 
	return res; 	
}

function compruebaPasaporte(valor) {
	var str = valor
	var validRegExp = /^[a-zA-Z]{1}[0-9]{7}[a-zA-Z]$/i;
	res=true;
	// search email text for regular exp matches
	if (str.search(validRegExp) == -1) {
		res=false;
	} 
	return res; 	
}

function compruebaCampoNif(valor) {
	var cadena = valor;
	res=true;
	var ilegalChars=/[\.]/;

	

	// search email text for regular exp matches
	if (cadena.search("-") != -1 || cadena.search("_") != -1 || cadena.search(" ") != -1 || cadena.search("[\.]") != -1) {
		res=false;
	}
	return res; 	
}

function compruebaNifExt(valor) {
	var str = valor
	var validRegExp = /^[a-zA-Z]{2}[0-9]{7}$/i;
	res=true;
	// search email text for regular exp matches
	if (str.search(validRegExp) == -1) {
		res=false;
	} 
	return res; 	
}


function esNumerico(str){
	var validRegExp = /^[0-9]+$/i;
	res=true;
	// search email text for regular exp matches
	if (str.search(validRegExp) == -1) {
		res=false;
	} 
	return res; 
}


function cambiaValorTipocontenidos(item) {
	var valor = getRightToLast(item.id,"_",1);
	var nodoPagina = getElement("id_pagina_"+valor);
	nodoPagina.style.display="none";
	var nodoUrl = getElement("id_url_asociada_"+valor);
	nodoUrl.style.display="none";
	var nodoExterna = getElement("id_externa_"+valor);
	nodoExterna.style.display="none";

	var nodoPaginaEncuestas = getElement("id_paginaencuestas_"+valor);
	nodoPaginaEncuestas.style.display="none";
	if (item.checked) {
		if (item.value=="P" || item.value=="A" || item.value=="E") nodoPagina.style.display="block";
		if (item.value=="U") {
			nodoUrl.style.display="block";
			nodoExterna.style.display="block";
		}	
		
		if (item.value=="N") {
			nodoPaginaEncuestas.style.display="block";
		}	
	}
}

	function esMail(valor){
		if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(valor)){
  
			return (true)
		} else {
 
			return (false);
		}

	}


function selectAll(valor) {
	var f = document.form_generacion;
	res="";
	patron="set_";
	for(i=0;i<f.all.length;i++) {	
		var campo = f[i];
		if (campo!=null) {
			var nombreCampo = campo.name;
			if (nombreCampo.substring(0, patron.length)==patron) {
				campo.checked = valor;
			}
		}
	}
}

function selectInverted() {
	var f = document.form_generacion;
	res="";
	patron="set_";
	for(i=0;i<f.all.length;i++) {	
		var campo = f[i];
		if (campo!=null) {
			var nombreCampo = campo.name;
			if (nombreCampo.substring(0, patron.length)==patron) {
				campo.checked = !campo.checked;
				if(campo.checked){
					addNodo(nombreCampo);
				} else {
					delNodo(nombreCampo);
				}
			}
		}
	}
}

var strNodos="<?= $strIds ?>";
var strPrimerNivel="<?= $strPrimerNivel ?>";

	function hide() {
	}

	var nombreCookieSelected = "lista_indice_sel";
	var nombreCookieDeselected = "lista_indice_des";

	function toggleNodo(item){
		if (item.checked)
			addNodo(item.name);
		else delNodo(item.name);
	}

	function addNodo(strId) {
		var listaSel = getCookie(nombreCookieSelected);
		var listaDes = getCookie(nombreCookieDeselected);
		if (listaSel==null) {
			listaSel=",";
		}
		if (listaDes==null) {
			listaDes=",";
		}
		var posSel;
		posSel =listaSel.indexOf(","+strId+",");
		if (posSel!=-1) {

		} else {
			listaSel = ","+strId+listaSel;
			SetCookie( nombreCookieSelected, listaSel);
		}
		var posDes;
		posDes =listaDes.indexOf(","+strId+",");
		if (posDes!=-1) {
			listaDes = replaceSubstring( listaDes, ","+strId+",", "," );
			SetCookie( nombreCookieDeselected, listaDes);
		} else {
		}
	}

	function delNodo(strId) {
		var listaDes = getCookie(nombreCookieDeselected);
		var listaSel = getCookie(nombreCookieSelected);
		if (listaDes==null) {
			listaDes=",";
		}
		if (listaSel==null) {
			listaSel=",";
		}	
		var posDes;
		posDes =listaDes.indexOf(","+strId+",");
		if (posDes!=-1) {

		} else {
			listaDes = ","+strId+listaDes;
			SetCookie( nombreCookieDeselected, listaDes);
		}
		var posSel;
		
		posSel =listaSel.indexOf(","+strId+",");
		if (posSel!=-1) {
			listaSel = replaceSubstring( listaSel, ","+strId+",", "," );
			SetCookie( nombreCookieSelected, listaSel);
		} else {
		}

		/*if (pos!=-1) {
			lista = replaceSubstring( lista, ","+strId+",", "," );
			SetCookie( nombreCookieDeselected, lista);
		}*/
	}


function esTodoDigitos(campo) {
	var emailReg = /^[0-9]+/i
    return emailReg.test(campo);
}
	

