function validarfichaPlanificador(oFormulario){
	var oElemento;
	 // El valor de iEstado se obtiene de hacer una operación AND entre todos los estados de los distintos campos
	 var iEstado;
	 var i;
	
	 sListadoCampos = "";
	
	 iEstado = true;
	 for(i=0;i<oFormulario.elements.length;i++){
	  sTipo = oFormulario.elements[i].type;
		
	  // A la hora de evaluar iEstado es importante el orden. Si iEstado es falso y se escribe:
	  // iEstado = iEstado && ValidarInput(oFormulario.elements[i]);
	  // entonces no se vuelve a evaluar la segunda expresión (una operación && donde el primero es falso => falso)
	
	  if(sTipo=="text" || sTipo=="password"){
	   iEstado = ValidarInput(oFormulario.elements[i]) && iEstado;
	  }
	
	  if(sTipo=="checkbox"){
	   iEstado = ValidarCheckBox(oFormulario.elements[i]) && iEstado;
	  }
	
	  if(sTipo=="textarea"){
	   iEstado = ValidarTextArea(oFormulario.elements[i]) && iEstado;
	  }
	  
	  if(sTipo=="select-one"){
	   iEstado = ValidarCombo(oFormulario.elements[i],oFormulario) && iEstado;
	  }
	  
	 }
	 if (document.fPlanificador.PHabDoble.value == ""){
		 //sListadoCampos = sListadoCampos + "\n          - " + "Precio de la Habitación Doble";
		 //iEstado = false;
		 document.fPlanificador.PHabDoble.value = "0" ;
	 }else{
		 if ((document.fPlanificador.CHabDoble.value > 0) && (document.fPlanificador.PHabDoble.value == 0)){
			 sListadoCampos = sListadoCampos + "\n          - " + "No puede haber un Cupo para la Habitación Doble sin un Precio para la misma";
			 iEstado = false;
		 }
	 }
	 if (document.fPlanificador.PHabIndividual.value == ""){
		 //sListadoCampos = sListadoCampos + "\n          - " + "Precio de la Habitación Individual";
		 //iEstado = false;
		 document.fPlanificador.PHabIndividual.value = "0";
	 }else{
		 if ((document.fPlanificador.CHabIndividual.value > 0) && (document.fPlanificador.PHabIndividual.value == 0)){
			 sListadoCampos = sListadoCampos + "\n          - " + "No puede haber un Cupo para la Habitación Individual sin un Precio para la misma";
			 iEstado = false;
		 }
	 }
	 if (document.fPlanificador.PHabSuite.value == ""){
		 	//sListadoCampos = sListadoCampos + "\n          - " + "Precio de la Habitación Suite";
			//iEstado = false;
			document.fPlanificador.PHabSuite.value = "0";
	 }else{
		 if ((document.fPlanificador.CHabSuite.value > 0) && (document.fPlanificador.PHabSuite.value == 0)){
			 sListadoCampos = sListadoCampos + "\n          - " + "No puede haber un Cupo para la Habitación Suite sin un Precio para la misma";
			 iEstado = false;
		 }
	 }
	 if (document.fPlanificador.PHabTriple.value == ""){
	 	 //sListadoCampos = sListadoCampos + "\n          - " + "Precio de la Habitación Triple";
		 //iEstado = false;
		 document.fPlanificador.PHabTriple.value = "0";
	 }else{
		 if ((document.fPlanificador.CHabTriple.value > 0) && (document.fPlanificador.PHabTriple.value == 0)){
			 sListadoCampos = sListadoCampos + "\n          - " + "No puede haber un Cupo para la Habitación Triple sin un Precio para la misma";
			 iEstado = false;
		 }
	 }
	 if (document.fPlanificador.PHabDobleIndiv.value == ""){
		 	//sListadoCampos = sListadoCampos + "\n          - " + "Precio de la Habitación Doble de uso Indivicual";
			//iEstado = false;
			document.fPlanificador.PHabDobleIndiv.value = "0";
	 }else{
		 if ((document.fPlanificador.CHabDobleIndiv.value > 0) && (document.fPlanificador.PHabDobleIndiv.value == 0)){
			 sListadoCampos = sListadoCampos + "\n          - " + "no puede haber un Cupo para la Habitación Doble de uso Indivicual sin un Precio para la misma";
			 iEstado = false;
		 }
	 }
	  if (!iEstado) {
		window.alert(sMensaje+sListadoCampos);
	  }
	 return iEstado;
}


