
/**
 * Funciones varias
 */

 
/**
 * Controla los formularios
 */
function validar(formu){

	// variables
	campos = formu.elements;
	llave = 0;
	
	// se recorren los campos
	for(i = 0; i < campos.length; i++){
		
		// campo actual
		campo = campos[i];
		clase = campo.className;
		valor = campo.value;
		
		// es obligatorio
		if(clase.indexOf("pgFormuObligatorio") > -1){
			
			
			// si está vacío hay problemas
			if(campo.value == "" && campo.type != "select-multiple"){
				campo.className = "pgFormuObligatorio pgFormuCorregir";
				if(llave == 0)campo.focus();
				llave++;
				}
			else{
				campo.className = "pgFormuObligatorio";
				}
		
			// se fija en campos multiple
			if(campo.type == "select-multiple"){
				llave_multiple = 1;
				for(j = 0; j < campo.options.length; j++){
					if(campo.options[j].selected && campo.options[j].value != ""){
						llave_multiple = 0;
						}
					}
				if(llave_multiple){
					llave++;
					campo.className = "pgFormuObligatorio pgFormuCorregir";
					}
				else{
					campo.className = "pgFormuObligatorio";
					}
				}

		
			}
		
		}
	
	// todo bien?
	if(llave == 0){
		formu.submit();
		}
	else{
		validar_aviso(formu, "Debe completar los campos marcados.");
		}
	
	
	}

/**
 * Notifica mensajes desde la función validar
 *
 * @param string formulario
 * @param string mensaje
 */
function validar_aviso(formu, mensaje){
	
	// control
	if(!mensaje || mensaje == "")return;
	if(!document.getElementsByTagName || !document.createElement){
		alert(mensaje);
		return;
		};
	
	// variables
	cuerpo = formu.getElementsByTagName("fieldset")[0];
	avisos = cuerpo.getElementsByTagName("div");
	
	// se elimina lo anterior
	
	for(i = 0; i < avisos.length; i++){
		if(avisos[i].className == "pgError"){
			cuerpo.removeChild(avisos[i]);
			}
		}
	
	// se prepara el aviso
	aviso = document.createElement("div");
	aviso.className = "pgError";
	aviso.innerHTML = mensaje;
	
	// se coloca el aviso después de un segundo
	aviso2 = aviso;
	window.setTimeout("cuerpo.appendChild(aviso2);", 250);
	
	}
	
	
	
