//////// valida los campos del formulario.
function validar(formulario)
{
  var checkbox_obligatorio, tipo_campo, boxMarcado, valor_checkbox;
  valor_checkbox = "";

 // var antispam	    = document.getElementById("antispam").value;
 //var nombreFichero = document.getElementById("nombreFichero").value;

 

  
  lObjFormulario=document.getElementById(formulario);
  
// COMPROBAMOS EL CAMPO ANTI-SPAM  
/*
  if (antispam != nombreFichero)  {
		alert ("TEXTO IMAGEN INCORRECTO");
		document.getElementById("antispam").focus();
  		return false;
  } else {
		// alert ("TEXTO CORRECTO");
		
  }  
*/  
  

  for (i = 0; i < lObjFormulario.elements.length; i++) {
     
	 //Significado de los carácteres: 
	 //		El caracter X es 'ciego' se pone en las posiciones nulas.
	 //		En 1er carácter.  - o: Campo obligatorio
	 
	 //		En 2º carácter. - n: Campo numérico.	
	 //		En 2º carácter. - e: Campo email.	
	 //		En 2º carácter. - b: Campo checkbox.		 
	 //		En 2º carácter. - s: Campo Combo Select.	
	 
	 //		En 3º carácter. - c: Campo que se enviará por correo.
	 
	 //		En (4º) o (4º y 5º) carácter. - posicion (ejem: 1,2,15,etc...). Número que identifica la posición del campo dentro de la tabla donde va a ir almacenado.	 
	 //		EJEM: 'onx1x_apellido1' Es un campo obligatorio, numerico, No envia por correo, se guardará en campo 1 en la tabla de BD
	 
	 //		En 6º carácter (NO ES OBLIGATORIO PONERLO) - Únicamente se utilizará para campos que posteriormente se unirán a otros.
	 //		EJEM: 'xxx11a_Tele1', xxx11b_Tele2, xxx11c_Tele3 : Son tres campos q se completan por separado, pero su contenido se unirá en uno único en BD.  
	 
	 //EXPRESIONES REGULARES
	 var ExpRegEmail  	= /[\w-\.]{3,}@([\w-]{2,}\.)*([\w-]{1,}\.)*([\w-]{2,}\.)[a-z]{2,2}/ ;
	 ///////////////////////

	 if (lObjFormulario.elements[i].name.substr(0,1)=="o"){
	    
		tipo_campo = lObjFormulario.elements[i].name.substr(1,1);
		
	 	switch(tipo_campo){
			case "e": //email
				if (!lObjFormulario.elements[i].value.match(ExpRegEmail)) {
		   		//if(lObjFormulario.elements[i].value.indexOf("@")==-1){
						alert("La direccion de correo no es valida");
						lObjFormulario.elements[i].focus();
						return false;
	  			}						
				break;

			case "n":
		   		if(isNaN( parseInt(lObjFormulario.elements[i].value) ) == 1){		   
						alert("El valor del campo debera de ser numerico");
						lObjFormulario.elements[i].focus();
						return false;
				}		
				break;



			case "b":
			    checkbox_obligatorio = "1"		
		   		if(lObjFormulario.elements[i].checked != ""){	  
				  valor_checkbox = valor_checkbox + lObjFormulario.elements[i].value
				}
				break;


			case "s":
				if(lObjFormulario.elements[i].value == "0"){
						nombre = lObjFormulario.elements[i].name
						alert("Debe seleccionar una opcion de " + nombre.substr(6, nombre.length) ); 						
						lObjFormulario.elements[i].focus();
						return false;
				}
				break;


			default:
				if(lObjFormulario.elements[i].value == ""){
						nombre = lObjFormulario.elements[i].name
						alert("Falta valor en el campo obligatorio: " + nombre.substr(6, nombre.length) ); 						
						lObjFormulario.elements[i].focus();
						return false;
				}
				/*if(lObjFormulario.elements[i].value == ""){
						nombreItem = Mid(lObjFormulario.elements[i].name, 7));
						alert("Falta valor en el campo obligatorio: " + nombreItem); 						
						lObjFormulario.elements[i].focus();
						return false;
				}	*/			
			
		}
	  	 	 
	 }




  }//bucle for
  		 //Si la variable checkbox_obligatorio es igual a 1, es que es obligatorio. Si
		 // no hay valor seleccionado, avisamos que por lo menos necesitamos uno seleccionado.
         if ( (checkbox_obligatorio == "1") && (valor_checkbox == "") ){
		 	alert("Es obligatorio aceptar las condiciones expuestas.")
			return false;
		 }		 
		


	//// CONTROLAMOS QUE AL MENOS SE HAYA MARCADO UNO DE LOS CHECKBOX OBLIGATORIOS
		
	for (i = 0; i < lObjFormulario.elements.length; i++) {

		if (lObjFormulario.elements[i].name.substr(0,1)=="1"){

			marcar_uno = "si";
						
			if (lObjFormulario.elements[i].checked == true) {
				boxMarcado = "si";
			} 
		}

	} // Bucle FOR

	if (marcar_uno == "si")
	{
		if (boxMarcado != "si")
		{
			alert ("Debe marcar al menos un producto");
			return false;
		}
	}





   lObjFormulario.submit();
}





