periodo.php 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <!-- <script src="js/jquery.min.js"></script> -->
  2. <?
  3. $user or die("Error: no se pudo cargar el usuario");
  4. ?>
  5. <form action="action/action_periodousuario_update.php" method="post" id="formaPeriodo" class="marco">
  6. <div class="row">
  7. <div class="col-12">
  8. <?php
  9. $target = $target ?? strtok($_SERVER["REQUEST_URI"], '?');
  10. $niveles = $db->get("nivel");
  11. // collect facultad_id's with facultad from $periodos
  12. ?>
  13. <input type="hidden" name="target" value="<?= $target ?>">
  14. <div class="form-box">
  15. <div class="form-group row">
  16. <label for="periodo" class="col-4 col-form-label">Cambiar de periodo</label>
  17. <div class="col-6">
  18. <div id="dlPeriodo" class="datalist datalist-select mb-1 w-100">
  19. <div class="datalist-input">
  20. Selecciona un periodo
  21. </div>
  22. <span class="icono ing-buscar"></span>
  23. <ul style="display:none">
  24. <?php
  25. foreach ($niveles as $nivel) {
  26. ?>
  27. <li data-id="<?= $nivel['nivel_id'] ?>" class="not-selectable disable">
  28. <?= $nivel['nivel_nombre'] ?>
  29. </li>
  30. <?
  31. $periodos_rs = $db->query('SELECT periodo_id, periodo_nombre FROM PERIODO_VIEW
  32. WHERE
  33. nivel_id = :nivel_id AND
  34. (facultad_id = :facultad_id OR :facultad_id IS NULL)
  35. GROUP BY periodo_id, periodo_nombre',
  36. [
  37. ':nivel_id' => $nivel['nivel_id'],
  38. ':facultad_id' => $user->facultad['facultad_id']
  39. ]
  40. );
  41. array_walk($periodos_rs, function ($per) {
  42. global $user;
  43. ?>
  44. <li data-id="<?= $per['periodo_id'] ?>" <?php if ($user->periodo_id == $per["periodo_id"]) {
  45. echo 'class="selected"';
  46. } ?>>
  47. <?= $per['periodo_nombre'] ?>
  48. </li>
  49. <?php }); ?>
  50. <?php } ?>
  51. </ul>
  52. <input type="hidden" id="periodo" name="id" value="">
  53. </div>
  54. </div>
  55. </div>
  56. </div>
  57. </div>
  58. </div>
  59. </form>
  60. <script src="./js/datalist.js"></script>
  61. <script>
  62. setDatalist('#periodo', <?= $user->periodo_id; ?>)
  63. makeRequiredDatalist("#periodo", true);
  64. $(document).on('click', '#dlPeriodo ul li:not(.not-selectable)', function () {
  65. setTimeout(() => $('form#formaPeriodo').submit(), 0);
  66. });
  67. </script>