periodo.php 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <script src="js/jquery.min.js"></script>
  2. <form action="action/action_periodousuario_update.php" method="post" id="formaPeriodo">
  3. <div class="row">
  4. <div class="col-12">
  5. <?php
  6. $target = $target ?? strtok($_SERVER["REQUEST_URI"], '?');
  7. $niveles = array_map(
  8. fn($nivel) => array_merge(
  9. $nivel,
  10. ['periodos' => $db->where('nivel_id', $nivel['nivel_id'])->get('periodo_view')]
  11. ), $db->get("nivel")
  12. );
  13. // collect facultad_id's with facultad from $periodos
  14. ?>
  15. <input type="hidden" name="target" value="<?= $target ?>">
  16. <div class="form-box">
  17. <div class="form-group row">
  18. <label for="periodo" class="col-4 col-form-label">Cambiar de periodo</label>
  19. <div class="col-6">
  20. <div id="dlPeriodo" class="datalist datalist-select mb-1 w-100">
  21. <div class="datalist-input">Selecciona un periodo</div>
  22. <span class="ing-buscar icono"></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(
  32. 'SELECT * FROM fs_periodo(NULL, :nivel, 4)',
  33. [':nivel' => $nivel['nivel_id']]
  34. );
  35. foreach ($periodos_rs as $per) {
  36. ?>
  37. <li data-id="<?= $per['periodo_id'] ?>" <?php if ($user->periodo == $per["periodo_id"]) {
  38. echo 'class="selected"';
  39. } ?>>
  40. <?= $per['periodo_nombre'] ?>
  41. </li>
  42. <?php } ?>
  43. <?php } ?>
  44. </ul>
  45. <input type="hidden" id="periodo" name="id" value="">
  46. </div>
  47. </div>
  48. </div>
  49. </div>
  50. </div>
  51. </div>
  52. </form>
  53. <script src="./js/datalist.js"></script>
  54. <script>
  55. setDatalist('#periodo', <?php echo $user->periodo; ?>)
  56. makeRequiredDatalist("#periodo", true);
  57. $(document).on('click', '#dlPeriodo ul li', function () {
  58. $('#formaPeriodo').submit();
  59. });
  60. </script>