//::: Función Validar - Controla los datos ingresados en un formulario ::::::::::::::::::.

function validar(){		//v2.0

	var idForm=validar.arguments[0];
	var llave=0;	//llave Obligatoria
	var llave2=0;	//llave Pregunta
	var cadena="Ud. no ha completado o corregido los siguientes campos:\n\n";
	var campos=validar.arguments.length;

	for(i=1;i<campos;i+=4){
		idInput=validar.arguments[i];  //el nombre del elemento dentro del formulario
		inputTipo=idInput.type;	 	//el tipo de elemento
		inputN=validar.arguments[i+1];	//el título del elemento
		inputT=validar.arguments[i+2];	//el tipo de datos a validar 0-vacío, 1-numérico, 2-fecha
		inputO=validar.arguments[i+3];	//Pregunta  0-obligatorio, 1-pregunta
		
		inputV=idInput.value;			//el valor de cada elemento
		if(inputTipo=="checkbox"){		// si es checkbox, el valor pasa a ser si está checkeado
			inputV=(idInput.checked)?1:"";
			}
		switch(inputT){
			case 0:		//no puede quedar vacío
				if(inputV==""){
					llave+=(inputO==0)?1:0;
					llave2+=(inputO==1)?1:0;
					idFoco=i;
					carRelleno="";
					cadena+="\t- "+inputN+"\n";
					}
				break;
			case 1:		//debe ser numérico
				if(isNaN(inputV)){
					llave+=(inputO==0)?1:0;
					llave2+=(inputO==1)?1:0;
					idFoco=i;
					carRelleno="0";
					cadena+="\t- "+inputN+" (debe ser numérico)\n";
					}
				break;
			case 2:		//arma la fecha en un hidden
				idHidden=inputN;
				anhio=document.forms[idForm].elements[idHidden+"Year"].value
				mes=document.forms[idForm].elements[idHidden+"Month"].value
				dia=document.forms[idForm].elements[idHidden+"Day"].value
				if((dia==31)&(mes==2|mes==4|mes==6|mes==9|mes==11)|(dia==30&mes==2)){
					llave+=(inputO==0)?1:0;
					llave2+=(inputO==1)?1:0;
					idFoco=0;
					carRelleno="";
					cadena+="\t- "+inputN+" (debe ser una fecha válida)\n";
					}
				// Se comenta debido al uso de Smarty
				//validar.arguments[i].value= anhio+"-"+mes+"-"+dia;
			}
		}
		if(llave>0){
			cadena+="\t\tGracias."
			if(validar.arguments[idFoco].type=="text"){
				validar.arguments[idFoco].focus()			
				}
			alert(cadena)
			return false;
			}
		else{
			if(llave2>0){
				cadena+="\n\tDesea Ud. continuar?."
				if(confirm(cadena)){
					document.forms[idForm].submit()
					}
				else{	
					if(validar.arguments[idFoco].type=="text"){
						validar.arguments[idFoco].focus();
						}
					return false;
					}
				}
			else{
				document.forms[idForm].submit();
				}
			}
}
//::: Fin de Función Validar :::::::::::::::::::::::::::::::::::::::::


//::: Coloca al elemento de di aQuien la clase clase :::::::::::::::::
function cc(aQuien,clase){
	if(!document.layers){	//No es NN
		elemento=document.getElementById(aQuien)
		elemento.className=clase
		}
	}	