// JavaScript Document

//No permitir click con el boton derecho del mouse
if (self.location.host != 'localhost') 
	{
		//document.oncontextmenu = new Function("return false");
	}

//No permitir seleccion de texto
function disableselect(e)
{
	return false;
}

function reEnable()
{
	return true;
}

//document.onselectstart=new Function ("return false");

if (window.sidebar)
	{
		//document.onmousedown=disableselect;
		//document.onclick=reEnable;
	}


function CargaPagina() {

	/*if (document.getElementById) // DOM3 = IE5, NS6
		document.getElementById('hidepage').style.visibility = 'hidden';
	else {

			if (document.layers)  // Netscape 4
						document.hidepage.visibility = 'hidden';
			else  // IE 4
		
				document.all.hidepage.style.visibility = 'hidden';
		
		}
*/
}

/******************************************************
DESCRIPCION	: Verifica y convierte las entidades segun sea netscape o IE
SALIDA 		: etiquetas del navegador
PARAMETROS				
	e   : objeto
	f   : capa
******************************************************/
function getElement(e,f){
	
    if(document.layers){
        f=(f)?f:self;
        if(f.document.layers[e]) {
            return f.document.layers[e];
        }
        for(W=0;i<f.document.layers.length;W++) {
            return(getElement(e,fdocument.layers[W]));
        }
    }
    if(document.all) {
        return document.all[e];
    }
    return document.getElementById(e);
}


function Eliminar_Registro(tipo,reg,opc1,opc2,opc3)
{
	switch(tipo)
		{
			case 1://Elimina r publicacion del carro
				direccion = "../home/mi_maleta.php?eliminaPublicacion=" + reg ;
				break;
	
		}

if (confirm("¿Esta seguro de eliminar este Registro?"))
	 {
		location.replace(direccion);
	 }

}

/******************************************************
DESCRIPCION	: Verifica si una direccion de correo es valida
SALIDA 		: false si no es correcta   o true si lo es
PARAMETROS				
	email   : Direccion de correo a verificar
******************************************************/
function Valida_Email(email)
{
   if (email.indexOf('@',0)==-1 || email.indexOf('@',0)== 0 || email.indexOf('.',0)==-1) 
	   		{
				alert("\nDirección de correo inválida.\nP.E. sucorreo@dominio.com.co");
				return false;
			}
	return true;		
}


/******************************************************
DESCRIPCION	: Parche para simular accion de click
SALIDA 		: vacio
PARAMETROS				

******************************************************/
function On_Click()
{
	//No hace nada
	
}



/******************************************************
DESCRIPCION	: Realiza validacion sobre los campos de un formulario
SALIDA 		: Un mensaje de alerta si queda algun campo vacio o tru en caso contrario
PARAMETROS				
	forma   : Objeto de formulario con todos sus elementos
******************************************************/
function Valida_Forma_Completa(forma,cual)
{
   // alert(forma);
	var variables;
	variables 	= "";
	total 		= forma.elements.length;
    //alert(cual);
	for(i=0;i<total;i++)
		{
			 
				if(cual==1)
					{
						if(forma.elements[i].name=="coordinador")
							continue;
					}
				
				if(cual==2)//otro		
					{
						if(forma.elements[i].name=="archivo")
							continue;
					}
				 
				
				//Verificar campos 
				if( forma.elements[i].value=="")
					{
						alert("\nEl campo  * " +  forma.elements[i].name + " *  debe contener un valor");
						forma.elements[i].focus();
						return false;
					}
					
				 //Se verifica la direcion de correo
				if(forma.elements[i].name=="correo")
					{
						temp =  Valida_Email(forma.elements[i].value);
						if(temp==false)
							{
								forma.elements[i].focus();
								return false;
							}
					}//fin if email
			
			
			
		}//fin for
		
/***************************************************************************************************************************************/
	//Verificar contraseñas
	if(forma.pass1!=null)
			if( (forma.pass1.value!="" && forma.pass2.value!="") && (forma.pass1.value!=forma.pass2.value) )
				{	
						forma.pass1.value = "";
						forma.pass2.value = "";
						forma.pass1.focus() ;
						alert("La contraseña y su confirmación deben ser iguales.");
						return false;
				}		 //Fin verificar contraseñas
	/***************************************************************************************************************************************/				
	
				
return true;
}
/******************************************************
DESCRIPCION	: cierra la ventana actual y recarga la ventana padre
SALIDA 		: 
PARAMETROS				
	
******************************************************/
function salida()
{
	window.opener.location.reload();
	window.close();
}



/******************************************************
DESCRIPCION	: Abre una nueva ventana
SALIDA 		:  Ventana
PARAMETROS
		tipo 		: Opcion que selecciona la pagina a abrir
		reg			: Identificador principal para la pagina a cargar
		opc 1,2,3 	: Opciones adicionales					
******************************************************/
function Nueva_Ventana(tipo,reg,opc1,opc2,opc3)
{	
	var ventana;
	
	switch(tipo)
		{
				case 1:// Detalles de solicitud en home
					caracteristicas = "top=10,left=10,width=600,height=480,scrollbars=yes";
					url ="solicitud_detalle.php";
					vent="solicitudDetalle";				
					break;
				case 2:// Detalles de  ordenes de compra panel lector
					caracteristicas = "top=10,left=10,width=600,height=480,scrollbars=yes";
					url ="detalle_orden.php?ordenCliente=" + reg;
					vent="ordenDetalle";				
					break;
				case 3:// Estado de orden
					caracteristicas = "top=10,left=10,width=600,height=270,scrollbars=yes";
					url ="estado_solicitud.php?estadoId=" + reg;
					vent="estadoSolicitud";				
					break;
				case 4:// detalles de tipo de lector
					caracteristicas = "top=10,left=10,width=400,height=300,scrollbars=yes";
					url ="detalle_lector.php" ;
					vent="tipoLector";				
					break;
				case 5:// tabla de contenido
					caracteristicas = "top=100,left=100,width=600,height=400,scrollbars=yes";
					url ="../home/tabla_contenido.php?publicacionId=" + reg ;
					vent="tablaContenido";				
					break;	
				case 6:// Tabla de conversion TRM
					caracteristicas = "top=100,left=100,width=500,height=260,scrollbars=no";
					url ="../home/conversion_moneda.php?totalCompra=" + reg;
					vent="conversionMoneda";				
					break;		
						
		}
	ventana = window.open(url,vent,caracteristicas);
	ventana.focus();

}

/******************************************************
DESCRIPCION	: Despliega o esconde un elemento html
SALIDA 		: 
PARAMETROS
		elemento 		: identificador del elemento html
******************************************************/
function Despliega_Repliega(elemento,ocultaTodo) 
{
	//alert(elemento);
	if(ocultaTodo==null)
		Repliega_Todo(elemento);
	
	 if(getElement(elemento).style.display == 'none')
		{
		
		//alert("muestra");
		getElement(elemento).style.display = 'block';
		
		}
	 else
		{
		
		getElement(elemento).style.display = 'none';
		//alert("Oculta");
		}
		
}

function Repliega_Todo(ele)
{
	for(i=0;i<padres.length;i++)
			if(padres[i]==ele)
				//getElement(padres[i]).style.display = 'block';
				continue;
			else 
				getElement(padres[i]).style.display = 'none';
}

function Desplega_Replega_Tabla_Uso(objDesplegar)
{
	//tbl_us1
	
	tabla = ["tbl_us1", "tbl_us2", "tbl_us3", "tbl_us4", "tbl_us5", "tbl_us6", "tbl_us7", "tbl_us8", "tbl_us9"]; 
	
	
	
	for(i=0;i<9;i++)
		{
			getElement(tabla[i]).style.display = 'none';
		}
	
	if(objDesplegar!=null && objDesplegar!="")
		{
			objDesplegar = "tbl_us" + objDesplegar;
			getElement(objDesplegar).style.display = 'block';
		}
}

function Validar_Entero(valor)
{
     //Intento convertir a entero. Si era un entero no le afecta, si no lo era lo intenta convertir
     valor = parseInt(valor);

     //Compruebo si es un valor numérico
     if (isNaN(valor))//No es entero 
         return "";
	 else//Es entero
	     return valor;
}

function Ventana_Promt_Carro(cual,valorNumerico,reg)
{
numero = prompt("Digite la nueva cantidad de articulos",valorNumerico);

	//Verifico y valido que el numero sea entero
	if(numero!=null)
		{	
			while(numero!=null)
				{	
					temp = parseInt(numero);
					
					if(isNaN(temp))//No es numero
							{
										numero = prompt("Digite la cantidad de articulos. Solo valores numericos",valorNumerico);
							}
					else//Es numero
							{
								break;
							}	
				}//fin while
				

if(numero!=null ) 
	{
						{	switch (cual)
								{
									case 1:
										url = "../home/mi_maleta.php?nuevaCantidad=" + numero + "&idRegistro=" + reg ;
										break;
								}
				
							location.replace(url);
						}//fin numero null interno
						
		}//fin  numero null externo
}
}

function Valida_Maleta()
{
	if(document.maleta.codigoPublicacion!="")
		document.maleta.submit();
	else 
		alert("Imposible agregar a la maleta");
}

function Info_Forma_Pago()
{
	
	//Oculto todos
	getElement("efectivo").style.display = 'none';
	getElement("cuenta").style.display = 'none';
	getElement("tcredito").style.display = 'none';
	
	//Buscar el item seleccionado en el menu
	opcion = document.formRegistro.metodoPago[document.formRegistro.metodoPago.selectedIndex].value;
	//alert(opcion)
	switch(opcion)
		{
			case "1"://efectivo
				getElement("efectivo").style.display = 'block';
				
				break;
			case "2"://consignacion
				getElement("cuenta").style.display = 'block';
				break;
			case "3"://tc
				getElement("tcredito").style.display = 'block';
				break;
	
		}
}



//Funcion que maneja la carga de subtemas segun tema
function CargaSede(uni,sedeUni)
{
	//Campo de tema  seleccionado
	var univId;
    univId		 = document.formRegistro.universidad[document.formRegistro.universidad.selectedIndex].value ;
	//alert(temaId);
	if(uni!=null  && sedeUni!=null)//Sede  seleccionada
		{	
			//alert(tem + " " + subtem);
			univId = uni;
		}
		
	if(univId!="" && univId!=0)
		{
			subTemasId 			 =eval("sede_id_" + univId) ;
			subTemasNombre =eval("sede_nombre_" + univId) ;
			cualIndexSubtema = "";
			
			//Determino el numero de sedes
			cantSubtemas	 	= subTemasId.length ;
			
			//marco el número de sedes en el select  si hay mas de una
			document.formRegistro.sedeU.length = cantSubtemas;
			
			//Cargo las sedes en el select
			for(i=0;i<cantSubtemas;i++)	
				{ 
					  document.formRegistro.sedeU.options[i].value	= subTemasId [i] ;
					  document.formRegistro.sedeU.options[i].text	= subTemasNombre[i] ;
					  
					  //Determino la posicion de la sede seleccionada en caso de sedeUni!=""
					  if(sedeUni!=null  && sedeUni!=0)
					  	if(sedeUni==document.formRegistro.sedeU.options[i].value)
					  			cualIndexSubtema = i;
					  
       			} 
			
			//No hay sedes	
			if(cantSubtemas==1)
				{
					document.formRegistro.sedeU.options[0].value	="";
					document.formRegistro.sedeU.options[0].text	= "No hay  sedes para esta universidad" ;
					//document.formSolicitud.subtema.disabled 			=  true;
					document.formRegistro.sedeU.options[0].selected = true ;
				}
			else//Existen subtemas
				{
					document.formRegistro.sedeU.options[0].selected  = true ;
					document.formRegistro.sedeU.disabled 					=  false;
					
					//Verifico si hay alguna sede seleccionada
					if(sedeUni!=null && cualIndexSubtema!="")//Activo la seleccionada
						{document.formRegistro.sedeU.options[cualIndexSubtema].selected  = true ;}
					else//Activo la opcion primera y la dejo en null
						{
							document.formRegistro.sedeU.options[0].value	="";
							document.formRegistro.sedeU.options[0].selected = true ;
						}
							
				}
			
			
		}//Fin sedes
	else//Selecciono una opcion  vacia
		{
			document.formRegistro.sedeU.length = 1;
			document.formRegistro.sedeU.options[0].selected  = true ;
			document.formRegistro.sedeU.options[0].text	= "Seleccione la Sede..." ;
			document.formRegistro.sedeU.options[0].value	= "";
			document.formRegistro.sedeU.disabled 				=  true;
		}	

}

//Funcion que maneja la carga de subtemas segun tema
function CargaCiudad(dep,ciudD)
{
	//Campo de tema  seleccionado
	var depId;
    depId		 = document.formRegistro.departamento[document.formRegistro.departamento.selectedIndex].value ;
	
	if(dep!=null  && ciudD!=null)//Ciudad seleccionada
		{	
			//alert(tem + " " + subtem);
			depId = dep;
		}
		
	if(depId!="" && depId!=0)
		{
			ciudadId 	 =eval("municipio_id_" + depId) ;
			ciudadNombre =eval("municipio_nombre_" + depId) ;
			cualIndexCiudad = "";
			
			//Determino el numero de sedes
			cantCiudad	 	= ciudadId.length ;
			
			//marco el número de ciudades en el select  si hay mas de una
			document.formRegistro.ciudad.length = cantCiudad;
			
			//Cargo las ciudades en el select
			for(i=0;i<cantCiudad;i++)	
				{ 
					  document.formRegistro.ciudad.options[i].value	= ciudadId[i] ;
					  document.formRegistro.ciudad.options[i].text	= ciudadNombre[i] ;
					  
					  //Determino la posicion de la ciudad seleccionada en caso de ciudad!=""
					  if(ciudD!=null  && ciudD!=0)
					  	if(ciudD==document.formRegistro.ciudad.options[i].value)
					  			cualIndexCiudad = i;
					  
       			} 
			
			//No hay ciudades
			if(cantCiudad==1)
				{
					document.formRegistro.ciudad.options[0].value	="";
					document.formRegistro.ciudad.options[0].text	= "No hay  ciudades para este departamento" ;
					//document.formSolicitud.ciudad.disabled 			=  true;
					document.formRegistro.ciudad.options[0].selected = true ;
				}
			else//Existen ciudades
				{
					document.formRegistro.ciudad.options[0].selected  = true ;
					document.formRegistro.ciudad.disabled 					=  false;
					
					//Verifico si hay alguna ciudad seleccionada
					if(ciudD!=null && cualIndexCiudad!="")//Activo la seleccionada
						{document.formRegistro.ciudad.options[cualIndexCiudad].selected  = true ;}
					else//Activo la opcion primera y la dejo en null
						{
							document.formRegistro.ciudad.options[0].value	="";
							document.formRegistro.ciudad.options[0].selected = true ;
						}
							
				}
			
			
		}//Fin ciudades
	else//Selecciono una opcion  vacia
		{
			document.formRegistro.ciudad.length = 1;
			document.formRegistro.ciudad.options[0].selected  = true ;
			document.formRegistro.ciudad.options[0].text	= "Seleccione la ciudad..." ;
			document.formRegistro.ciudad.options[0].value	= "";
			document.formRegistro.ciudad.disabled 				=  true;
		}	

}


function Valida_Formulario(forma)
{
		total 		= forma.elements.length;
		for(i=0;i<total;i++)
			{
					if(forma.elements[i].valida=="SI") //Validar el campo
						{
								if( forma.elements[i].value=="")
										{
											alert("\nEl campo  * " +  forma.elements[i].name + " *  debe contener un valor");
											forma.elements[i].focus();
											return false;
										}
								
								//Si el campo es una direccion de correo
								if( forma.elements[i].escorreo=="SI" && forma.elements[i].value!="")
										{
													if(Valida_Email(forma.elements[i].value)==false)
														{	forma.elements[i].focus();
															return false;
														}	
										}//fin valida correo
								
					}//fin if validar
					else//seguir , pasar por alto
						{
							continue;
						}
			}//fin loop
		
		//Si  hay campos de contraseña, verificar que ambos sean iguales
	if(forma.pass1!=null)	
		if( (forma.pass1.value!=""  && forma.pass2.value!="")  && (forma.pass1.value!=forma.pass2.value) )
				{
					alert("Los campos de contraseña deben tener el mismo valor");
					forma.pass1.value = "";
					forma.pass2.value = "";
					forma.pass1.focus() ;
					return false;
				}//fin valida contraseñas
				
		
		return true;
}


function Registro_Esconde()
{		
	if(document.formRegistro.masUniversidades.checked==1)
			getElement("universidaddesAdicionales").style.display = "block";
	else
			getElement("universidaddesAdicionales").style.display = "none";
}

function Esta_Vacio(form, i)
{
	if(form.elements[i].value=="")
		{	
			alert("\nEl campo  * " + form.elements[i].name + " *  debe contener un valor");
			form.elements[i].focus();
			return false;
		}
}

/******************************************************
DESCRIPCION	: Solo valida los campos que se indiquen
SALIDA 		: Un mensaje de alerta si queda algun campo vacio o tru en caso contrario
PARAMETROS				
	forma   : Objeto de formulario con todos sus elementos
******************************************************/
function Valida_Campos_Seleccionados(forma,cual)
{
   // alert(forma);
	var variables;
	variables 	= "";
	total 		= forma.elements.length;
    //alert(cual);
	for(i=0;i<total;i++)//recorrer todo el formulario
		{
			//Formulario de docentes
			if(cual==1 && (forma.elements[i].name=="nombres" || forma.elements[i].name=="apellidos"  || forma.elements[i].name=="correo" || forma.elements[i].name=="pass1" || forma.elements[i].name=="pass2" || forma.elements[i].name=="sexo" ) ) 
				{
						if(Esta_Vacio(forma,i)==false) return false;
				}//fin cual=1
			
			
			//Formulario de lectores tematicos
			if(cual==2 && (forma.elements[i].name=="nombres" || forma.elements[i].name=="apellidos"  || forma.elements[i].name=="naceDia" || forma.elements[i].name=="naceMes" || forma.elements[i].name=="naceAnio" || forma.elements[i].name=="sexo" || forma.elements[i].name=="documentoIdentidad" || forma.elements[i].name=="correo" || forma.elements[i].name=="pass1" || forma.elements[i].name=="pass2" || forma.elements[i].name=="departamento") ) 
				{
						if(Esta_Vacio(forma,i)==false) return false;
				}//fin cual=1
			
			//Formulario de Empresas lectoras
			if(cual==3 && (forma.elements[i].name=="razonSocial" || forma.elements[i].name=="nombreComercial"  || forma.elements[i].name=="nit" || forma.elements[i].name=="departamento" || forma.elements[i].name=="direccion" || forma.elements[i].name=="correo" || forma.elements[i].name=="pass1" || forma.elements[i].name=="pass2" || forma.elements[i].name=="contactoNombre") ) 
				{
						if(Esta_Vacio(forma,i)==false) return false;
				}//fin cual=1	
			
			//Formulario de Universidades
			if(cual==4 && (forma.elements[i].name=="departamento"  || forma.elements[i].name=="universidad"  || forma.elements[i].name=="sedeU"  || forma.elements[i].name=="dependencia"  || forma.elements[i].name=="correo"  || forma.elements[i].name=="pass1"  || forma.elements[i].name=="pass2"  || forma.elements[i].name=="responsableEditorial" ) ) 
				{
						if(Esta_Vacio(forma,i)==false) return false;
				}//fin cual=1	
			
			
			/**************************************************************************/
			//Se verifica la direcion de correo
			if(forma.elements[i].name=="correo")
				{
						temp =  Valida_Email(forma.elements[i].value);
						if(temp==false)
							{
								forma.elements[i].focus();
								return false;
							}
				}//fin if email
			/**************************************************************************/	
			
		}//fin loop
	
	/***************************************************************************************************************************************/
	//Verificar contraseñas
	if(forma.pass1!=null)
			if( (forma.pass1.value!="" && forma.pass2.value!="") && (forma.pass1.value!=forma.pass2.value) )
				{	
						forma.pass1.value = "";
						forma.pass2.value = "";
						forma.pass1.focus() ;
						alert("La contraseña y su confirmación deben ser iguales.");
						return false;
				}		 //Fin verificar contraseñas
	/***************************************************************************************************************************************/				
//Hasta aqui todo esta bien
return true;
}

function Busqueda_Avanzada(tabla)
{

	if(tabla==0)
		{
			getElement("tablaCriterio").style.display 	 = "none";
			getElement("tablaMapa").style.display		 = "none";
		}
	
	if(tabla==1)//mapa
		if(getElement("tablaMapa").style.display == "block")
			getElement("tablaMapa").style.display		 = "none";
		else
			{	getElement("tablaMapa").style.display = "block";
				getElement("tablaCriterio").style.display 	 = "none";
			}	
		
	if(tabla==2)//Criterios
		if(getElement("tablaCriterio").style.display == "block")
			getElement("tablaCriterio").style.display		 = "none";
		else
			{	getElement("tablaCriterio").style.display = "block";
				getElement("tablaMapa").style.display		 = "none";
			}	
}

function Muestra_Esconde_Adicional(forma, elemento)
{		
	if(forma.infoAdicional.checked==true)
	 	getElement(elemento).style.display = 'block';
	else	
		getElement(elemento).style.display = 'none';

}

function Limpia_Forma_Busqueda(forma)
{
	//alert(forma);
	if(forma.buscaTodasPublicaciones.checked==true)
		{	forma.reset();
			forma.buscaTodasPublicaciones.checked = true;
		}
		return true;
}

function ValidaRadioButton()
{

	
	total = formaEncuesta.calificacion.length;
	sel = 0;
	
	//Verificar que al menos uno este seleccionado
	for(i=0;i<total;i++)
		{
			if(formaEncuesta.calificacion[i].checked)
					sel++;
		}
	
	if(sel==0)
		{	alert("Seleccione una de las opciones.");
			return false;		
		}

	//if(confirm("¿ Esta seguro que desea contestar esta encuesta ?"))
	//	{
	formaEncuesta.calificaEncuesta.value = "calificarEncuesta";
	return true;
	//	}		
	//else
		//return false;
}

function Valida_Encuesta_Menu(cual)
{
	if(ValidaRadioButton()==true && cual==1)
		formaEncuesta.submit();
}

function Mostrar_Tabla_Hijos(padre)
{
	elemento = "tablaCat_" + padre;
	Despliega_Repliega(elemento) ;
	
}

function Esconde_Tabla_Hijos(arrayPadres, noEsconde)
{
	cantidad = arrayPadres.length;
	//alert("Cantidad " + cantidad + " noEsc " + noEsconde);
	for(i=0;i<cantidad;i++)
		{	
			elemento = "tablaCat_" + arrayPadres[i];
			//alert(elemento);
			getElement(elemento).style.display  = 'none';
		}
	
	if(noEsconde!=0)
		{
			elemento = "tablaCat_" + noEsconde;
			getElement(elemento).style.display  = 'block';	
		}	
}

function Cambia_Uni_Entidad()
{
    ent		 = document.formaPub.entidadSelect[document.formaPub.entidadSelect.selectedIndex].value ;
	//alert(ent);
	
	//Esconder todo por defecto
	getElement("tablaUniversidad").style.display  = 'none';
	getElement("tablaEntidad").style.display  = 'none';
		
	
	if(ent==1)//universidades
		getElement("tablaUniversidad").style.display  = 'block';	
	
	if(ent==2)//Instituciones
		getElement("tablaEntidad").style.display  = 'block';	
}

function Calcula_TRM()
{
	vp 		= document.calculaTRM.valorPesos.value;
	trm 	= document.calculaTRM.trm.value;
	
	if(vp=="" || trm=="")
		alert("Ningún campo puede estar vacio. \n\nRevise la información.");
	else
		document.calculaTRM.resultado.value = vp / trm ;
	
}
