html_header.php 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. <script defer src="js/sidebarmenu.js"></script>
  2. <?php
  3. require_once 'class/c_login.php';
  4. $ruta = "../";
  5. require_once 'include/bd_pdo.php';
  6. if (!isset($_SESSION['user'])) {
  7. if (isset($redirect))
  8. $_SESSION['ruta'] = $redirect;
  9. header('Location: index.php');
  10. }
  11. $user = unserialize($_SESSION['user']);
  12. $user->access();
  13. $pagina = substr(basename($_SERVER['PHP_SELF']), 0, -4);
  14. if ($pagina != "main" && !$user->acceso) {
  15. header('Location: main.php?error=1');
  16. exit;
  17. }
  18. $grupos = $user->admin ? queryAll("SELECT * FROM GRUPO ORDER BY grupo_nombre") : $db->query("SELECT * FROM GRUPO WHERE grupo_id IN (SELECT grupo_id FROM PERMISO_VIEW WHERE id = :id) ORDER BY grupo_nombre", array(":id" => $user->user['id']));
  19. function html_header($title, $header = null)
  20. {
  21. global $grupos, $user, $db;
  22. ?>
  23. <aside id="sidebar" class="bg-light defaultShadow d-flex flex-column p-4">
  24. <div class="d-flex align-items-center mb-5">
  25. <div class="logotipo"><a href="https://lasalle.mx/" target="_blank"><img src="imagenes/logo_lasalle.png"></a>
  26. </div>
  27. <div class="flex-grow-1 d-flex justify-content-end">
  28. <nav class="navbar navbar-expand d-none d-flex">
  29. <ul class="navbar-nav">
  30. </ul>
  31. </nav>
  32. <div class="d-flex mainMenu justify-content-center align-items-center">
  33. <div class="max-h iconSesion">
  34. <a href="salir.php" class="iconOff max-h pl-3 d-flex justify-content-start align-items-center"><i
  35. class="ing-salir"></i></a>
  36. </div>
  37. <div class="max-h">
  38. <div class="bg-primary rounded-circle pointer max-h max-w d-flex justify-content-center align-items-center"
  39. id="dismiss">
  40. <span class="text-white iconMenuSidebar ing-cancelar"></span>
  41. </div>
  42. </div>
  43. </div>
  44. </div>
  45. </div>
  46. <div class="accordion px-2" id="accordionMenu">
  47. <p class="mb-0 mt-3 ml-4 pl-1">
  48. <a class="d-block side-menu" href="main.php">
  49. <span class="ing-home"></span> Menú
  50. </a>
  51. </p>
  52. <?php
  53. if ($user->admin) { ?>
  54. <p class="mb-0 mt-3 ml-4 pl-1">
  55. <a href="permisos.php" class="d-block side-menu">
  56. <span class="ing-pass"></span> Permisos
  57. </a>
  58. </p>
  59. <?php }
  60. foreach ($grupos as $key => $grupo) {
  61. ?>
  62. <p class="mb-0 mt-3">
  63. <a class="d-block side-menu collapsed" data-toggle="collapse" href="#menu_<?= $key ?>" role="button"
  64. aria-expanded="false">
  65. <i class="ing-caret ing-fw mr-2"></i>
  66. <span class="<?= $grupo['grupo_icon'] ?>"></span>
  67. <?= ucfirst($grupo['grupo_nombre']) ?>
  68. </a>
  69. </p>
  70. <div id="menu_<?= $key ?>" class="collapse" data-parent="#accordionMenu" style>
  71. <ul class="fa-ul">
  72. <?
  73. foreach ($user->admin ? $db->query("SELECT * FROM PAGINA WHERE grupo_id = :grupo_id ORDER BY pagina_titulo", array(":grupo_id" => $grupo['grupo_id'])) : $db->query("SELECT * FROM PAGINA WHERE grupo_id = :grupo_id and pagina_id IN (SELECT pagina_id FROM PERMISO_VIEW WHERE id = :id) ORDER BY pagina_titulo", array(":grupo_id" => $grupo['grupo_id'], ":id" => $user->user['id']))
  74. as $pagina):
  75. ?>
  76. <li class="mt-1">
  77. <a href="<?= $pagina['pagina_ruta'] ?>.php">
  78. <?= $pagina['pagina_titulo'] ?>
  79. </a>
  80. </li>
  81. <? endforeach; ?>
  82. </ul>
  83. </div>
  84. <?php
  85. }
  86. ?>
  87. </div>
  88. </aside>
  89. <div class="overlay"></div>
  90. <header class="sticky-top bg-white">
  91. <div class="container marco menu d-flex align-items-center">
  92. <div class="logotipo">
  93. <a href="https://lasalle.mx/" target="_blank">
  94. <img src="imagenes/logo_lasalle.png">
  95. </a>
  96. </div>
  97. <div class="flex-grow-1 d-flex justify-content-end">
  98. <nav class="navbar navbar-expand-lg d-flex">
  99. <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav"
  100. aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
  101. <span class="navbar-toggler-icon"></span>
  102. </button>
  103. <div class="collapse navbar-collapse" id="navbarNav">
  104. <ul class="navbar-nav">
  105. <!-- Add your navigation items here -->
  106. </ul>
  107. </div>
  108. </nav>
  109. <div class="d-flex mainMenu justify-content-center align-items-center">
  110. <div class="max-h iconSesion">
  111. <a href="salir.php" class="iconOff max-h pl-3 d-flex justify-content-start align-items-center">
  112. <i class="ing-salir"></i>
  113. </a>
  114. </div>
  115. <div class="max-h">
  116. <span id="sidebarCollapse" style="font-size: 44px;"
  117. class="ing-menu bg-white rounded-circle pointer max-w d-flex justify-content-center align-items-center"></span>
  118. </div>
  119. </div>
  120. </div>
  121. </div>
  122. </header>
  123. <div class="row bg-info mx-0 barra-gris d-flex flex-column">
  124. <?php
  125. if ($header != null) {
  126. ?>
  127. <div class="marco">
  128. <div class="col-sm-12">
  129. <h2 class="text-muted">
  130. <?= $header; ?>
  131. </div>
  132. </div>
  133. <?php } ?>
  134. <div class="marco">
  135. <div class="col-sm-12 py-3">
  136. <h2 class="text-uppercase">
  137. <?= $title; ?>
  138. </h2>
  139. </div>
  140. </div>
  141. </div>
  142. <? } ?>