En el formulario de preinscripción hemos incluido una personalización indicando los Términos de la institución, junto con un checkbox de carácter obligatorio (‘Acepto los términos’), el cual debe ser activado para finalizar la preinscripción. Sin embargo, pese a configurar este campo como obligatorio, al presionar el botón ‘Imprimir’, el campo es omitido del control. Nuestra intención es que ,si este checkbox no está activado, se marque como un campo obligatorio faltante más.
Hay forma de hacer obligatorio un checkbox? En ese caso, cómo se debe proceder?
En el archivo controlador.php ubicado en …/preinscripcion_trunk/src/siu/operaciones/censo/controlador.php
En la línea 41 se crea la variable $hay_faltantes que agarra los datos de la tabla
“sga_preinscripcion
WHERE
id_preinscripcion = $id_preinscripcion” en la base de datos (sería después del último guardar del usuario).
De ahí agarra los datos de la base y corrobora:
Si son obligatorios y se encuentran en la base, permite imprimir.
Sino, especifica que hay faltantes no permite imprimir.
Por lo tanto, solo busca dentro de la base los obligatorios, por eso puede ser que ese campo sea omitido del control, ya que no se encuentra en la base.
Podrían agregarlo a mano como un control más después de haber hecho los demás.
Por ejemplo en la línea 43
if ($hay_faltantes && ($terminos_y_condiciones==‘S’)) {
Para saber el valor de $terminos_y_condiciones fíjense si les sirve las funciones de get_campo librería util::form()
Por ejemplo util::form()->get_campo_descr($campo_id);
o
util::form()->get_campo_id($campo_descr);
El problema de lo siguiente es que se tendría que hacer click en terminos y condiciones cada vez que desee imprimir (ya que no guarda en la base) para eso se podría utilizar variables de sessión o incorporar dicho dato a la base.
Espero que sea de ayuda, cualquier cosa nos avisan!