function check(forma)
{
	tama = forma.elements.length;
	for (i=0; i<tama; i++) {
		campo = forma.elements(i);			
		if (campo.type == "checkbox" && campo.name != "sel_all") {
			campo.checked = !campo.checked;
		}//fin del if
	}//fin del for
}//fin de function check()


function openWindow(argName, argWin, argWidth, argHeight)
	{
		window.open(argName, argWin, 'width=' + argWidth + ',height=' + argHeight + ',scrollbars=yes,');
	}//fin de openWindow


	
function vacio(cadena){
   return ((cadena == null) || (cadena.length == 0))
}

function numerico(cadena){
	for (var i=0; i < cadena.length; i++){
		var ch = cadena.substring(i, i+1)
		if (ch < "0" || ch > "9"){
			return false;		
		}
	}
	return true;
}

var mensaje=""
function decimal(cadena){
	if((cadena.indexOf(".")==0)||(cadena.indexOf(".")==cadena.length-1)){
		mensaje="El valor no puede empezar o terminar con punto decimal.";
		return false;
	}
	if (!parseFloat(cadena)==0){
		if(!Number(cadena)){
			mensaje="Debe ingresar solo datos numéricos";
			return false;
		}
	}
	return true;
}


function val_formulario(forma,cad,formato,dim){
	tam = forma.elements.length;
	for(i=0;i<=tam-1;i++){
		campo = forma.elements(i);
		tipo = forma.elements(i).type;
		nombre=forma.elements[i].name.toUpperCase();
		valor = forma.elements(i).value;
		estado = parseInt(cad.substr(i,1),0)
		dato = parseInt(formato.substr(i,1),0)
		if(dim==""){
			dim = nombre.substr(0,1)
			nombre = nombre.substr(1,20)
		}
		if(estado == 1){
			switch (tipo){
				case "textarea" :
					if(vacio(valor)){
						alert("Este campo no puede ser vacío.")
						campo.focus();
						return false;
					}
					if(valor.length < dim){
						alert("Este campo debe tener al menos " + dim + " caracteres.")
						campo.focus();
						return false;
					}
					break;
				case "text" :
					if(vacio(valor)){
						alert("Este campo no puede ser vacío.")
						campo.focus();
						return false;
					}
					if(valor.length < dim){
						alert("Este campo debe tener al menos " + dim + " caracteres.")
						campo.focus();
						return false;
					}
					if((dato == 2)&&(!decimal(valor))){
						alert(mensaje+"\nPor favor verifique la información.")
						campo.focus();
						return false;
					}
					break;
				case "select-one" :
					if(campo.options(campo.selectedIndex).value <= 0){
						alert("Debe seleccionar una opción en este campo.")
						campo.focus();
						return false;
					}
					break;
				case "select-multiple" :
					if(campo.selectedIndex < 0){
						alert("Debe seleccionar por lo menos una opción en este campo.")
						campo.focus();
						return false;
					}
					break;
				case "password" :
					if(vacio(valor)){
						alert("Este campo no puede ser vacío.")
						campo.focus();
						return false;
					}
					if(valor.length < dim){
						alert("Este campo debe tener al menos " + dim + " caracteres.")
						campo.focus();
						return false;
					}
					break;
				case "file" :
					if(vacio(valor)){
						alert("Este campo no puede ser vacío.")
						campo.focus();
						return false;
					}
					break;
			}
		}
	}
	return true
}
