//////////////////// EJEMPLOS DE FUNCIONES JAVASCRIPT //////////////////
//																	  //
//  Solo como ejemplo, ya que deben adaptarse a cada caso particular  //
//																	  //
////////////////////////////////////////////////////////////////////////
function popup(website, ancho, alto)
{
var   w = window.screen.availWidth;
var   h = window.screen.availHeight;
var ancho= ancho *1; 
var alto= alto * 1;

var leftdist = (w-ancho)/2; // distancia hasta el borde izquierdo
var topdist = (h -alto)/2; //distancia hasta el borde superior
//alert("left= "+leftdist+" top= "+topdist+" h="+h+" w= "+w+" alto= "+alto+" ancho= "+ancho);
window.open(website,'','toolbar=0,menubar=0,location=0,scrollbars=1,status=1,height='+ alto +',width=' + ancho  +",left=" + leftdist + ",top=" + topdist);
}
////para validar texto
////para validar texto
function valida_texto(e,c)//
{
	var key;
	if (navigator.appName == "Netscape") // me fijo
	{
		key= e.which;
	}
	else
	{
		key= window.event.keyCode; // leo la tecla en ASCII que ingreso
	}
	c=c.toLowerCase();
//	alert(key);
	switch(c)
	{
		case "c"://Si es Caracter
			if (key  !=63 && key !=40 && key !=41 && key != 36 && key != 39 && key!=37 ||key==8 ||key==0)
			{
				break;
			}
			else
			{
				return false;
			}
		case "e"://si es entero
			if (key  >47 && key <59 ||key==8 ||key==0)
			{
				break;
			}
			else
			{
				return false;
			}
		case "d"://si es decimal
			if (key  >47 && key <59 || key==46 ||key==8 ||key==0)
			{
				break;
			}
			else
			{
				return false;
			}
		case "r"://si es digito verificador
			if (key  >47 && key <59 || key==75 || key==107 ||key==8 ||key==0)
			{
				break;
			}
			else
			{
				return false;
			}
	}	
}
////////funcion para validar el rut
function valida_rut()
{
	rut=document.frm1.rut.value;
	df=document.frm1.df.value;
	x=2;
    sumatorio=0;
    for (i=rut.length-1;i>=0;i--)
	{
        if (x>7)
		  {x=2;}
        sumatorio=sumatorio+(rut.charAt(i)*x);
        x++;
     }	 
     digito=(sumatorio%11);
     digito=11-digito;
     switch (digito)
	 {
        case 10:
            digito="K";
            break;
        case 11:
            digito="0";
            break; 
     }
	 if (df.toUpperCase()==digito)
	{ 
		 //alert("aceptado");  
		 return true;
	}else
	{
		 alert(" Rut Incorrecto !!. Por Favor verifique El Rut!");  
		 return false;
	}

}
function valida_rut2()
{
	rut=document.frm1.rut_empresa.value;
	df=document.frm1.re_df.value;
	x=2;
    sumatorio=0;
    for (i=rut.length-1;i>=0;i--)
	{
        if (x>7)
		  {x=2;}
        sumatorio=sumatorio+(rut.charAt(i)*x);
        x++;
     }	 
     digito=(sumatorio%11);
     digito=11-digito;
     switch (digito)
	 {
        case 10:
            digito="K";
            break;
        case 11:
            digito="0";
            break; 
     }
	 if (df.toUpperCase()==digito)
	{ 
		 //alert("aceptado");  
		 return true;
	}else
	{
		 alert(" Rut Incorrecto !!. Por Favor verifique El Rut!");  
		 return false;
	}

}
function validar_formulario()
{
	var i = 0;
	var men="";
	for(i=0; i<document.forms[0].elements.length; i++)
	{
		if(document.forms[0].elements[i].value=="")
		{
			document.forms[0].elements[i].value="0";
		}
		check=0;
		var cad_men = document.forms[0].elements[i].id; 
		var largo=cad_men.length;
		var cad_val=cad_men.substring(0,1)
		var mensaje=cad_men.substring(2,largo)
		if(cad_val=="*")
		{
			switch (document.forms[0].elements[i].type)
			{
				//********** Caso si es texto  o campo password
				case "text"|| "password":
					if(document.forms[0].elements[i].value==0)
					{	
						men= men + "-     "+ mensaje +"\n" 	
						
					}	
					break;
				//********* caso si en un select combo
				case "select-one":
					if(document.forms[0].elements[i].value==0)
					{	
						men= men + "-     "+ mensaje +"\n" 	
					}
					break;
				 //**********caso si un select multiple
				case "select-multiple":
					nombreobj=document.forms[0].elements[i].name;
					longitud=nombreobj.length
					caso=nombreobj.substring(longitud-2,longitud)
					if(document.forms[0].elements[i].value==0)
					{	
						men= men + "-     "+ mensaje +"\n" 
					}	
					break;
				//************Caso del text area
				case "textarea":
					if(document.forms[0].elements[i].value==0)
					{	
						men= men + "-     "+ mensaje +"\n" 	
						document.forms[0].elements[i].value=0;
					}	
					break;
				//************** Caso del radio
				case "radio":
					var e 
					for (e=0;i<document.forms[0].elements[i].length;e++)
					{ 
					   if (document.fcolores.colorin[e].checked) 
						  break; 
					} 						
					break;
				//*************** Caso checkbox
				case "checkbox":
					if(document.forms[0].elements[i].checked==false)
					{	
						men= men + "-     "+ mensaje +"\n" 
					}
					break;
			}
		}
		if(cad_val=="/")
		{
			if(document.forms[0].elements[i].type=="text")
			{
				if(document.forms[0].elements[i].value.indexOf("@") == -1 || document.forms[0].elements[i].value.indexOf(".") ==-1)
				{
					 men= men + "-     "+ mensaje +"\n" 	
				}
			}
		}
		
	}
	if (men!="")
	 {
		 menF="_________________________\n";
		 menF=menF+"Le ha faltado introducir los siguientes datos: \n \n \n";
		 menF=menF+men +" \n"
		 menF=menF + "_________________________ \n";
		 menF=menF + "¡Por favor pulse enter, rellene los datos y pruebe de nuevo!";
		alert(menF)
		return false;
	}
}

function deshabilitar()
{
//	alert("deshabilitar");
	for(i=0; i<document.forms[0].elements.length; i++)
	{
		document.forms[0].elements[i].disabled=true;
	}
}
function habilitar()
{
//	alert("deshabilitar");
	for(i=0; i<document.forms[0].elements.length; i++)
	{
		document.forms[0].elements[i].disabled=false;
	}
}
function cierra()
{
       window.opener.document.mula.submit();
       window.close();
}

function limpia_select(select_limpiar,titulo)
{
	var  j;
	// ****** elimina todos los items del select
	for (i = select_limpiar.options.length; i >= 0; i--)
	{
		select_limpiar.options[i] = null; 
	}
	//******* coloca el primer items  del select*******
	
		select_limpiar.options[0] = new Option(titulo);
	
}
//****************************************************************
//		FUNCION PARA CARGAR UN SELECT EN FORMA LOCAL
//****************************************************************
function cargar_select(id,arreglo_buscar,select_llenar,titulo)
{
	// ****	id				= id que se tiene que encontrar
	// **** arreglo_buscar	= arreglo en el cual se buscaran los id que coincidan con id
	// **** select_llenar	= select que se llenara con los datos encontrados del arreglo
	// **** titulo			= titulo del primer item que tendrï¿½el select
	
	var i, j;
	var prompt;
	// ****** elimina todos los items del select
	for (i = select_llenar.options.length; i >= 0; i--)
	{
		select_llenar.options[i] = null; 
	}
	//******* coloca el primer items  del select*******
	prompt = (arreglo_buscar != null) ? titulo:"0" //goodPrompt : badPrompt;
	if (prompt == null)
	{
		j = 0;
	}
	else
	{
		select_llenar.options[0] = new Option(prompt);
		j = 1;
	}
	// ***** si el arreglo es diferente de vacio, comienza agregar items ******
	if (arreglo_buscar != null)
	{
		for (i = 0; i < arreglo_buscar.length; i++) 
		{
			//*** si coincide el id con el id del arreglo*****
			if(id==arreglo_buscar[i][1])
			{
				var Vvalue=arreglo_buscar[i][0];
				var Vtexto=arreglo_buscar[i][2];
//				alert(Vvalue);
				var variable = new Option(Vtexto,Vvalue,"","");
				select_llenar.options[j]=variable;
				j++;
			}
		}
	// ** deja seleccionado el primer elemento de la lista****
		select_llenar.options[0].selected = true;
	}
}

//****************************************************************
//		FUNCION PARA SABER INFORMACION DEL NAVEGADOR
//****************************************************************

function datosUsuario(){     
    document.write("screen.height - " + screen.height + 
                "<br>screen.availHeight - " + screen.availHeight + 
                "<br>screen.width - " + screen.width + 
                "<br>screen.availWidth - " + screen.availWidth + 
                "<br>screen.updateInterval - " + screen.updateInterval + 
                "<br>screen.fontSmoothingEnabled - " + screen.fontSmoothingEnabled + 
                "<br>screen.bufferDepth - " + screen.bufferDepth + 
                "<br>screen.colorDepth - " + screen.colorDepth + 
                "<br>navigator.appCodeName - " + navigator.appCodeName + 
                "<br>navigator.appMinorVersion - " + navigator.appMinorVersion + 
                "<br>navigator.appName - " + navigator.appName + 
                "<br>navigator.appVersion - " + navigator.appVersion + 
                "<br>navigator.cookieEnabled - " + navigator.cookieEnabled + 
                "<br>navigator.cpuClass - " + navigator.cpuClass + 
                "<br>navigator.javaEnabled - " + navigator.javaEnabled() + 
                "<br>navigator.mimeTypes.length - " + navigator.mimeTypes.length + 
                "<br>navigator.onLine - " + navigator.onLine + 
                "<br>navigator.platform - " + navigator.platform + 
                "<br>navigator.plugins.length - " + navigator.plugins.length + 
                "<br>navigator.systemLanguage - " + navigator.systemLanguage +     
                "<br>navigator.taintEnabled() - " + navigator.taintEnabled() + 
                "<br>navigator.userAgent - " + navigator.userAgent + 
                "<br>navigator.userLanguage - " + navigator.userLanguage); 
}
//http://www.digitalstudio.es/faq-java.htm
function funciones_java()
{
	var cad = "Cesar Zumelzo",i; 
	var ja = new Array(); 

ja = cad.split("o"); 

with(document) { 
write("La cadena es: "+cad+"<BR>"); 
write("Longitud de la cadena: "+cad.length+"<BR>"); 
write("Haciendola ancla: "+cad.anchor("b")+"<BR>"); 
write("En grande: "+cad.big()+"<BR>"); 
write("Parpadea: "+cad.blink()+"<BR>"); 
write("Caracter 3 es: "+cad.charAt(3)+"<BR>"); 
write("Fuente FIXED: "+cad.fixed()+"<BR>"); 
write("De color: "+cad.fontcolor("#FF0000")+"<BR>"); 
write("De color: "+cad.fontcolor("salmon")+"<BR>"); 
write("Tamaño 7: "+cad.fontsize(7)+"<BR>"); 
write("<I>orl</I> esta en la posicion: "+cad.indexOf("orl")); 
write("<BR>En cursiva: "+cad.italics()+"<BR>"); 
write("La primera <I>l</I> esta, empezando a contar por detras,"); 
write(" en la posicion: "+cad.lastIndexOf("l")+"<BR>"); 
write("Haciendola enlace: "+cad.link("doc.htm")+"<BR>"); 
write("En pequeño: "+cad.small()+"<BR>"); 
write("Tachada: "+cad.strike()+"<BR>"); 
write("Subindice: "+cad.sub()+"<BR>"); 
write("Superindice: "+cad.sup()+"<BR>"); 
write("Minusculas: "+cad.toLowerCase()+"<BR>"); 
write("Mayusculas: "+cad.toUpperCase()+"<BR>"); 
write("Subcadena entre los caracteres 3 y 10: "); 
write(cad.substring(2,10)+"<BR>"); 
write("Entre los caracteres 10 y 3: "+cad.substring(10,2)+"<BR>"); 
write("Subcadenas resultantes de separar por las <B>o:</B><BR>"); 
for(i=0;i<ja.length;i++) write(ja[i]+"<BR>"); 
} 

}
function paginas(voy,des,cuan,acc)
{
//	alert("hola");
	with (document.frm1)
	{
		switch(voy)
		{
			case "adelante": //para avanzar 1 hacia adelante
				if(des==0)
				{
					desde.value=des+cuan; 
				}else
				{
					desde.value=des;
				}
				break;
			case "atras": //para avanzar 1 hacia atras
					desde.value=des;
				break;
			default:
				desde.value=des; //para ir a una página en especial
		}
		cuantos.value=cuan;
		accion.value=acc;
		submit();
	}
} 
