reporte_horarioprofesores.php 63 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056
  1. <?php
  2. require_once("../include/constantes.php");
  3. require_once("../include/util.php");
  4. require_once("../include/bd_pdo.php");
  5. require_once("../classes/ValidaSesion.php");
  6. require_once("../classes/MainMenu.php");
  7. $menu = 7;
  8. $submenu = 71;
  9. //--- Objeto para validar usuario. El id de usuario lo lee desde sesión
  10. $objSesion = new ValidaSesion($pdo, $submenu, APSA);
  11. if(!$objSesion->tieneAcceso()){
  12. $objSesion->terminaSesion();
  13. }
  14. $objSesion->validaPeriodoUsuario();//si no tiene periodo manda a main
  15. //Obtiene fechas de periodo
  16. $stmt = $pdo->prepare('Select * from fs_periodo(:periodo, NULL, NULL, true)');
  17. $stmt->bindParam(":periodo", $_SESSION["periodo_id"]);
  18. if(!$stmt->execute()){
  19. $errorDesc = "Ocurrió un error al cargar las fechas del periodo";
  20. }else{
  21. $periodo_rs = $stmt->fetch();
  22. $fecha_ini = fechaSlash($periodo_rs["Periodo_fecha_inicial"]);
  23. }
  24. $stmt->closeCursor();
  25. ?>
  26. <!DOCTYPE html>
  27. <html lang="es" prefix="og: http://ogp.me/ns#">
  28. <head>
  29. <title>APSA - Facultad de Ingeniería</title>
  30. <meta charset="utf-8">
  31. <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  32. <link rel="icon" type="image/png" href="../img/favicon.png" />
  33. <link rel="stylesheet" href="../css/bootstrap-ulsa.min.css" type="text/css">
  34. <link rel="stylesheet" href="../css/indivisa.css" type="text/css">
  35. <link rel="stylesheet" href="../css/sgi.css?rand=<?php echo rand();?>" type="text/css">
  36. <link rel="stylesheet" href="../css/fa_all.css" type="text/css">
  37. <link rel="stylesheet" href="../css/jquery-ui.css" type="text/css">
  38. <link rel="stylesheet" href="../css/calendar.css" type="text/css">
  39. <script src="../js/util.js"></script>
  40. </head>
  41. <body>
  42. <div>
  43. <?php
  44. //--- Objeto que pinta menu
  45. $menuObj = new MainMenu($_SESSION["usuario_id"], $menu, $pdo, APSA, "Profesores del periodo");//usr, menu, pdo, sist
  46. $menuObj->printMenu();
  47. $tab = 1;
  48. if(isset($_GET["tab"])){
  49. $tab = filter_input(INPUT_GET, "tab", FILTER_SANITIZE_NUMBER_INT);//limpia texto
  50. }
  51. if(!empty($_POST["desc"])){
  52. $filter_desc = trim(filter_input(INPUT_POST, "desc", FILTER_SANITIZE_STRING,array('flags' => FILTER_FLAG_STRIP_LOW)));//limpia texto
  53. }
  54. if(!empty($_POST["clave"])){
  55. $filter_clave = filter_input(INPUT_POST, "clave", FILTER_SANITIZE_NUMBER_INT);//limpia texto
  56. }
  57. if(!empty($_POST["area"])){
  58. $filter_area = filter_input(INPUT_POST, "area", FILTER_SANITIZE_NUMBER_INT);//limpia texto
  59. }
  60. if(!empty($_POST["carrera"])){
  61. $filter_carrera = filter_input(INPUT_POST, "carrera", FILTER_SANITIZE_NUMBER_INT);//limpia texto
  62. }
  63. $query1 = "";
  64. if(isset($filter_desc)){
  65. $query1 .= ":nom, ";
  66. //$filter_desc = trim(filter_input(INPUT_POST, "desc", FILTER_SANITIZE_STRING,array('flags' => FILTER_FLAG_STRIP_LOW)));//limpia texto
  67. }else{
  68. $query1 .= "NULL, ";
  69. }
  70. if(isset($filter_clave)){
  71. $query1 .= ":clave, ";
  72. $filter_clave = trim(filter_input(INPUT_POST, "clave", FILTER_SANITIZE_STRING,array('flags' => FILTER_FLAG_STRIP_LOW)));//limpia texto
  73. }else{
  74. $query1 .= "NULL, ";
  75. }
  76. $stmt = $pdo->prepare('Select * from fs_profesoresperiodo_busca(:periodo, '.$query1.' 0, '.MAX_ROWS.')');
  77. $stmt->bindParam(":periodo", $_SESSION["periodo_id"]);
  78. if(isset($filter_desc)) $stmt->bindParam(":nom", $filter_desc);
  79. if(isset($filter_clave)) $stmt->bindParam(":clave", $filter_clave);
  80. if(!$stmt->execute()){
  81. $errorDesc = "Ocurrió un error al cargar los usuarios.";
  82. print_r($stmt->errorInfo());
  83. }else
  84. $usuario1_rs = $stmt->fetchAll();
  85. $stmt->closeCursor();
  86. //Periodos
  87. $stmt = $pdo->prepare('Select * from fs_periodousuario(:usr)');
  88. $stmt->bindParam(":usr", $_SESSION["usuario_id"]);
  89. if(!$stmt->execute()){
  90. $errorDesc = "Ocurrió un error al cargar los datos de los periodos.";
  91. }else
  92. $periodo_rs = $stmt->fetchAll();
  93. $stmt->closeCursor();
  94. $stmt = null;
  95. //------------
  96. //Area
  97. $stmt = $pdo->prepare('Select * from fs_areaacademica(NULL, :nivel)');
  98. $stmt->bindParam(":nivel", $_SESSION["nivel_id"]);
  99. if(!$stmt->execute()){
  100. $errorDesc = "Ocurrió un error al cargar las áreas académicas";
  101. }else{
  102. $area_rs = $stmt->fetchAll();
  103. }
  104. $stmt->closeCursor();
  105. $query2 ="";
  106. if(isset($filter_area)){
  107. $query2 .= ":area, ";
  108. //$filter_area = filter_input(INPUT_POST, "area", FILTER_SANITIZE_NUMBER_INT);//limpia texto
  109. }else{
  110. $query2 .= "NULL, ";
  111. }
  112. if(isset($filter_desc)){
  113. $query2 .= ":nom, ";
  114. //$filter_desc = trim(filter_input(INPUT_POST, "desc", FILTER_SANITIZE_STRING,array('flags' => FILTER_FLAG_STRIP_LOW)));//limpia texto
  115. }else{
  116. $query2 .= "NULL, ";
  117. }
  118. if(isset($filter_clave)){
  119. $query2 .= ":clave, ";
  120. //$filter_clave = filter_input(INPUT_POST, "clave", FILTER_SANITIZE_NUMBER_INT);//limpia texto
  121. }else{
  122. $query2 .= "'', ";
  123. }
  124. $stmt = $pdo->prepare('Select * from fs_profesoresarea('.$query2.' :periodo, 1, 0, NULL)');
  125. if(isset($filter_area)) $stmt->bindParam(":area", $filter_area);
  126. if(isset($filter_desc)) $stmt->bindParam(":nom", $filter_desc);
  127. if(isset($filter_clave)) $stmt->bindParam(":clave", $filter_clave);
  128. $stmt->bindParam(":periodo", $_SESSION["periodo_id"]);
  129. if(!$stmt->execute()){
  130. $errorDesc = "Ocurrió un error al cargar los profesores.";
  131. print_r($stmt->errorInfo());
  132. }else
  133. $usuario2_rs = $stmt->fetchAll();
  134. $stmt->closeCursor();
  135. if(!empty($filter_area)){
  136. $stmt = $pdo->prepare('Select * from fs_profesorescarrera_faltantes(:periodo, NULL, :area)');
  137. $stmt->bindParam(":area", $filter_area);
  138. $stmt->bindParam(":periodo", $_SESSION["periodo_id"]);
  139. if(!$stmt->execute()){
  140. $errorDesc = "Ocurrió un error al cargar los profesores faltantes.";
  141. print_r($stmt->errorInfo());
  142. }else
  143. $materia_rs = $stmt->fetchAll();
  144. $stmt->closeCursor();
  145. }
  146. //------------
  147. //Carrera
  148. $stmt = $pdo->prepare('Select * from fs_carrera(NULL, :nivel, false)');
  149. $stmt->bindParam(":nivel", $_SESSION["nivel_id"]);
  150. if(!$stmt->execute()){
  151. $errorDesc = "Ocurrió un error al cargar las áreas académicas";
  152. }else{
  153. $carrera_rs = $stmt->fetchAll();
  154. }
  155. $stmt->closeCursor();
  156. if(!empty($filter_carrera)){
  157. $filter_carrera = filter_input(INPUT_POST, "carrera", FILTER_SANITIZE_NUMBER_INT);//limpia texto
  158. $query3 ="";
  159. if(isset($filter_desc)){
  160. $query3 .= ":nom, ";
  161. //$filter_desc = trim(filter_input(INPUT_POST, "desc", FILTER_SANITIZE_STRING,array('flags' => FILTER_FLAG_STRIP_LOW)));//limpia texto
  162. }else{
  163. $query3 .= "'', ";
  164. }
  165. if(isset($filter_clave)){
  166. $query3 .= ":clave, ";
  167. //$filter_clave = filter_input(INPUT_POST, "clave", FILTER_SANITIZE_NUMBER_INT);//limpia texto
  168. }else{
  169. $query3 .= "'', ";
  170. }
  171. //echo 'Select * from fs_profesorescarrera('.$query.$_SESSION["periodo_id"].', 1, 0, '.MAX_ROWS.')';
  172. $stmt = $pdo->prepare('Select * from fs_profesorescarrera(:carrera, '.$query3.' :periodo)');
  173. $stmt->bindParam(":carrera", $filter_carrera);
  174. if(isset($filter_desc)) $stmt->bindParam(":nom", $filter_desc);
  175. if(isset($filter_clave)) $stmt->bindParam(":clave", $filter_clave);
  176. $stmt->bindParam(":periodo", $_SESSION["periodo_id"]);
  177. if(!$stmt->execute()){
  178. $errorDesc = "Ocurrió un error al cargar los profesores.";
  179. print_r($stmt->errorInfo());
  180. }else
  181. $usuario3_rs = $stmt->fetchAll();
  182. $stmt->closeCursor();
  183. /*$stmt = $pdo->prepare('Select * from fs_profesorescarrera_faltantes(:periodo, :carrera, NULL)');
  184. $stmt->bindParam(":carrera", $filter_carrera);
  185. $stmt->bindParam(":periodo", $_SESSION["periodo_id"]);
  186. if(!$stmt->execute()){
  187. $errorDesc = "Ocurrió un error al cargar los profesores faltantes.";
  188. print_r($stmt->errorInfo());
  189. }else
  190. $materia_rs = $stmt->fetchAll();
  191. $stmt->closeCursor();*/
  192. }
  193. //--------
  194. //Obtiene profesores
  195. $query4 = "";
  196. if(isset($filter_area)){
  197. $query4 .= ":area,";
  198. }else{
  199. $query4 .= "NULL,";
  200. }
  201. if(isset($filter_desc)){
  202. $query4 .= ":desc,";
  203. }else{
  204. $query4 .= "NULL,";
  205. }
  206. /*echo 'Select * from fs_profesoresareahoras('.$_SESSION["periodo_id"].', '.$query4.' 1, 0, '.MAX_ROWS.')';
  207. echo $filter_area;
  208. exit();*/
  209. $stmt = $pdo->prepare('Select * from fs_profesoresareahoras(:per, '.$query4.' 1, 0, '.MAX_ROWS.')');//sólo activos
  210. $stmt->bindParam(":per", $_SESSION["periodo_id"]);
  211. if(isset($filter_area)) $stmt->bindParam(":area", $filter_area);
  212. if(isset($filter_desc)) $stmt->bindParam(":desc", $filter_desc);
  213. if(!$stmt->execute()){
  214. $errorDesc = "Ocurrió un error al cargar los profesores";
  215. //print_r($stmt->errorInfo());
  216. }else{
  217. $usuario4_rs = $stmt->fetchAll();
  218. }
  219. $stmt->closeCursor();
  220. //--------
  221. //--Manejo de errores y mensajes de exito
  222. if(isset($_GET["error"]) && is_numeric($_GET["error"])){
  223. switch ($_GET["error"]){
  224. case 0: $errorDesc = "No se reciberon los datos del usuario."; break;
  225. case 1: $errorDesc = "No existe el usuario que buscas. Selecciona una del listado."; break;
  226. case 2: $errorDesc = "Ocurrió un error al leer los datos del usuario."; break;
  227. case 3: $errorDesc = "No tienes permisos para realizar esa acción."; break;
  228. }
  229. }
  230. if(isset($_GET["ok"]) && is_numeric($_GET["ok"])){
  231. switch ($_GET["ok"]){
  232. case 0: $successDesc = "El usuario se guardó correctamente."; break;
  233. case 1: $successDesc = "El usuario se actualizó correctamente."; break;
  234. }
  235. }
  236. ?>
  237. <main class="container-fluid content marco">
  238. <?php include_once("../include/errorMessage.php");?>
  239. <?php $show_all=true; include("../include/periodoCambio.php");?>
  240. <!-- <form action="./export/xls_profesoresperiodo.php" method="post" target="_blank"> -->
  241. <form action="./export/xls_profesorarea.php" target="_blank" method="post" id="formaXls">
  242. <input type="hidden" name="area" value="<?php if(isset($filter_area)){ echo $filter_area; }?>">
  243. <input type="hidden" name="carrera" value="<?php if(isset($filter_carrera)){ echo $filter_carrera; }?>">
  244. <input type="hidden" name="desc" value="<?php if(isset($filter_desc)){ echo $filter_desc; }?>">
  245. <input type="hidden" name="clave" value="<?php if(isset($filter_clave)){ echo $filter_clave; }?>">
  246. </form>
  247. <!-- Filtro -->
  248. <form action="reporte_horarioprofesores.php" method="post" id="formaProf">
  249. <input type="hidden" name="desc" id="desc">
  250. <input type="hidden" name="clave" id="clave">
  251. <input type="hidden" name="area" id="area">
  252. <input type="hidden" name="carrera" id="carrera">
  253. </form>
  254. <!-- end Filtro -->
  255. <ul class="nav nav-tabs d-print-none mb-4" id="myTab" role="tablist">
  256. <li class="nav-item">
  257. <a class="nav-link" id="tab1-tab" data-toggle="tab" href="#tab1" role="tab" aria-controls="calendario" aria-selected="true">Profesores del periodo</a>
  258. </li>
  259. <li class="nav-item">
  260. <a class="nav-link" id="tab2-tab" data-toggle="tab" href="#tab2" role="tab" aria-controls="lista" aria-selected="false">Por área</a>
  261. </li>
  262. <li class="nav-item">
  263. <a class="nav-link" id="tab3-tab" data-toggle="tab" href="#tab3" role="tab" aria-controls="lista" aria-selected="false">Por Carrera</a>
  264. </li>
  265. <li class="nav-item">
  266. <a class="nav-link" id="tab4-tab" data-toggle="tab" href="#tab4" role="tab" aria-controls="lista" aria-selected="false">Por Materia</a>
  267. </li>
  268. </ul>
  269. <div class="tab-content" id="TabContent">
  270. <div class="tab-pane fade" id="tab1" role="tabpanel" aria-labelledby="tab1-tab">
  271. <?php
  272. if(isset($usuario1_rs) && count($usuario1_rs) > 0){
  273. ?>
  274. <p class="text-right"><button type="button" class="btn btn-outline-secondary btn-xls" data-xls="xls_profesoresperiodo.php"><?php echo $ICO["descargar"]; ?> Generar xls</button></p>
  275. <?php } ?>
  276. <?php // ---- Listado total ---- ?>
  277. <div class="form-box form-box-info">
  278. <div class="form-group row">
  279. <label for="filter_desc1" class="col-4 col-form-label text-right">Nombre</label>
  280. <div class="col-8 col-sm-4">
  281. <input id="filter_desc1" type="text" class="form-control text-submit" <?php if(isset($filter_desc) ){echo 'value="'.$filter_desc.'"';}?>>
  282. </div>
  283. </div>
  284. <div class="form-group row">
  285. <label for="filter_clave1" class="col-4 col-form-label text-right">Clave ULSA</label>
  286. <div class="col-8 col-sm-4">
  287. <input id="filter_clave1" type="text" class="form-control text-submit" <?php if(isset($filter_clave) ){echo 'value="'.$filter_clave.'"';}?>>
  288. </div>
  289. </div>
  290. </div>
  291. <div class="form-group row">
  292. <div class="col-12 text-center">
  293. <button type="button" class="btn btn-outline-primary btn-enviar" data-campo="1"><?php echo $ICO["buscar"]; ?> Filtrar</button>
  294. <button type="button" class="btn btn-outline-danger btn-reset"><?php echo $ICO["borrar"]?> Limpiar</button>
  295. </div>
  296. </div>
  297. <?php
  298. if(isset($usuario1_rs)){
  299. ?>
  300. <div class="row">
  301. <div class="col-12 table-responsive">
  302. <p>Se muestran los primeros <strong><?php echo MAX_ROWS;?></strong> resultados. Utiliza los filtros para encontrar el usuario que buscas.</p>
  303. <table class="table table-sm table-striped table-white">
  304. <thead class="thead-dark">
  305. <tr >
  306. <th>Clave</th>
  307. <th>Grado</th>
  308. <th>Nombre</th>
  309. <th>Ver</th>
  310. </tr>
  311. </thead>
  312. <tbody>
  313. <?php
  314. foreach($usuario1_rs as $usuario){
  315. ?>
  316. <tr data-id="<?php echo $usuario["Usuario_id"]; ?>">
  317. <td class="text-center font-weight-bold"><?php echo $usuario["Usuario_claveULSA"] ?></td>
  318. <td class="text-center"><?php echo $usuario["Usuario_grado"] ?></td>
  319. <td><?php echo $usuario["Usuario_apellidos"]." ".$usuario["Usuario_nombre"]; ?></td>
  320. <td class="text-center icono-acciones">
  321. <span class="pointer modal-open" title="Datos"><?php echo $ICO["buscar"];?></span>
  322. <span class="pointer open-pdf" title="Horario de usuario" data-id="<?php echo $usuario["Usuario_id"]; ?>"><?php echo $ICO["calendario"];?></span>
  323. </td>
  324. </tr>
  325. <?php } ?>
  326. </tbody>
  327. </table>
  328. </div>
  329. </div>
  330. <?php } ?>
  331. </div>
  332. <div class="tab-pane fade" id="tab2" role="tabpanel" aria-labelledby="tab2-tab">
  333. <?php
  334. if(isset($usuario2_rs) && count($usuario2_rs) > 0){
  335. ?>
  336. <p class="text-right"><button type="button" class="btn btn-outline-secondary btn-xls" data-xls="xls_profesorarea.php"><?php echo $ICO["descargar"]; ?> Generar xls</button></p>
  337. <?php } ?>
  338. <!-- Filtro -->
  339. <?php if(count($area_rs) > 1){ ?>
  340. <div class="form-box form-box-info">
  341. <div class="form-group row">
  342. <label for="filter_desc2" class="col-4 col-form-label text-right">Nombre</label>
  343. <div class="col-8 col-sm-4">
  344. <input id="filter_desc2" type="text" class="form-control text-submit" <?php if(isset($filter_desc) ){echo 'value="'.$filter_desc.'"';}?>>
  345. </div>
  346. </div>
  347. <div class="form-group row">
  348. <label for="filter_clave2" class="col-4 col-form-label text-rightt">Clave ULSA</label>
  349. <div class="col-8 col-sm-4">
  350. <input id="filter_clave2" type="text" class="form-control text-submit" <?php if(isset($filter_clave) ){echo 'value="'.$filter_clave.'"';}?>>
  351. </div>
  352. </div>
  353. <div class="form-group row">
  354. <label for="filter_area2" class="col-4 col-form-label">Área *</label>
  355. <div class="col-8 col-sm-4">
  356. <div class="datalist datalist-select mb-1 w-100">
  357. <div class="datalist-input">Selecciona un área</div>
  358. <span class="ing-buscar icono"></span>
  359. <ul style="display:none">
  360. <?php foreach($area_rs as $area) {?>
  361. <li data-id="<?php echo $area["Area_id"];?>" <?php if(isset($filter_area) && $filter_area == $area["Area_id"]){echo "class='selected'";}?>><?php echo $area["Area_desc"];?></li>
  362. <?php }?>
  363. </ul>
  364. <input type="hidden" id="filter_area2" value="0">
  365. </div>
  366. </div>
  367. </div>
  368. </div>
  369. <?php } ?>
  370. <div class="form-group row">
  371. <div class="col-12 text-center">
  372. <button type="button" class="btn btn-outline-primary btn-enviar" data-campo="2"><?php echo $ICO["buscar"]; ?> Filtrar</button>
  373. <button type="button" class="btn btn-outline-danger btn-reset"><?php echo $ICO["borrar"]?> Limpiar</button>
  374. </div>
  375. </div>
  376. <!-- end Filtro -->
  377. <?php
  378. if(isset($usuario2_rs)){
  379. if(count($usuario2_rs) > 0){
  380. ?>
  381. <?php }?>
  382. <div class="row">
  383. <div class="col-12 table-responsive">
  384. <table class="table table-sm table-striped table-white">
  385. <thead class="thead-dark">
  386. <tr >
  387. <th>Clave</th>
  388. <th>Grado</th>
  389. <th>Nombre</th>
  390. <th>Área</th>
  391. <th>Ver</th>
  392. </tr>
  393. </thead>
  394. <tbody>
  395. <?php
  396. foreach($usuario2_rs as $usuario){
  397. ?>
  398. <tr data-id="<?php echo $usuario["Usuario_id"]; ?>">
  399. <td class="text-center font-weight-bold"><?php echo $usuario["Usuario_claveULSA"] ?></td>
  400. <td><?php echo $usuario["Usuario_grado"] ?></td>
  401. <td><?php echo $usuario["Usuario_apellidos"]." ".$usuario["Usuario_nombre"]; ?></td>
  402. <td><span style="color:<?php echo $usuario["Area_color"];?>"><?php echo $ICO["circulo"]; ?></span> <?php echo $usuario["Area_desc"]?></td>
  403. <td class="text-center icono-acciones">
  404. <span class="pointer modal-open" title="Datos"><?php echo $ICO["buscar"];?></span>
  405. <span class="pointer open-pdf" title="Horario de usuario" data-id="<?php echo $usuario["Usuario_id"]; ?>"><?php echo $ICO["calendario"];?></span>
  406. </td>
  407. </tr>
  408. <?php } ?>
  409. </tbody>
  410. </table>
  411. </div>
  412. </div>
  413. <?php } ?>
  414. <?php if (isset($materia_rs) && count($materia_rs) > 0){ ?>
  415. <h4 class="mt-4 mb-3">Materias que faltan de profesor</h4>
  416. <div class="row">
  417. <div class="col-12 table-responsive">
  418. <table class="table table-sm table-striped table-white">
  419. <thead class="thead-dark">
  420. <tr >
  421. <th>Grupo</th>
  422. <th>Materia</th>
  423. </tr>
  424. </thead>
  425. <tbody>
  426. <?php
  427. foreach($materia_rs as $materia){
  428. ?>
  429. <tr data-id="<?php echo $materia["Materia_id"]; ?>">
  430. <td><?php echo $materia["Grupo_desc"]." ".$materia["Carrera_prefijo"]; ?></td>
  431. <td><?php echo $materia["Materia_desc"] ?></td>
  432. </tr>
  433. <?php } ?>
  434. </tbody>
  435. </table>
  436. </div>
  437. </div>
  438. <?php } ?>
  439. </div>
  440. <div class="tab-pane fade" id="tab3" role="tabpanel" aria-labelledby="tab3-tab">
  441. <?php
  442. if(isset($usuario3_rs) && count($usuario3_rs) > 0){
  443. ?>
  444. <p class="text-right"><button type="button" class="btn btn-outline-secondary btn-xls" data-xls="xls_profesorcarrera.php"><?php echo $ICO["descargar"]; ?> Generar xls</button></p>
  445. <?php } ?>
  446. <!-- Filtro -->
  447. <?php if(count($carrera_rs) > 1){ ?>
  448. <div class="form-box form-box-info">
  449. <div class="form-group row">
  450. <label for="filter_desc3" class="col-4 col-form-label text-right">Nombre</label>
  451. <div class="col-8 col-sm-4">
  452. <input id="filter_desc3" type="text" class="form-control text-submit" <?php if(isset($filter_desc) ){echo 'value="'.$filter_desc.'"';}?>>
  453. </div>
  454. </div>
  455. <div class="form-group row">
  456. <label for="filter_clave3" class="col-4 col-form-label text-right">Clave ULSA</label>
  457. <div class="col-8 col-sm-4">
  458. <input id="filter_clave3" type="text" class="form-control text-submit" <?php if(isset($filter_clave) ){echo 'value="'.$filter_clave.'"';}?>>
  459. </div>
  460. </div>
  461. <div class="form-group row">
  462. <label for="filter_carrera" class="col-4 col-form-label">Carrera *</label>
  463. <div class="col-8 col-sm-4">
  464. <div class="datalist datalist-select mb-1 w-100">
  465. <div class="datalist-input">Selecciona una carrera</div>
  466. <span class="ing-buscar icono"></span>
  467. <ul style="display:none">
  468. <?php foreach($carrera_rs as $carrera) {?>
  469. <li data-id="<?php echo $carrera["Carrera_id"];?>" <?php if(isset($filter_carrera) && $filter_carrera == $carrera["Carrera_id"]){echo "class='selected'";}?>><?php echo $carrera["Carrera_desc"];?></li>
  470. <?php }?>
  471. </ul>
  472. <input type="hidden" id="filter_carrera" name="carrera" value="0">
  473. </div>
  474. </div>
  475. </div>
  476. </div>
  477. <?php } ?>
  478. <div class="form-group row">
  479. <div class="col-12 text-center">
  480. <button type="button" class="btn btn-outline-primary btn-enviar" data-campo="3"><?php echo $ICO["buscar"]; ?> Filtrar</button>
  481. <button type="button" class="btn btn-outline-danger btn-reset"><?php echo $ICO["borrar"]?> Limpiar</button>
  482. </div>
  483. </div>
  484. <!-- end Filtro -->
  485. <?php
  486. if(isset($usuario3_rs)){
  487. if(count($usuario3_rs) > 0){
  488. ?>
  489. <?php }?>
  490. <div class="row">
  491. <div class="col-12 table-responsive">
  492. <table class="table table-sm table-striped table-white">
  493. <thead class="thead-dark">
  494. <tr >
  495. <th>Clave</th>
  496. <th>Grado</th>
  497. <th>Nombre</th>
  498. <th>Materia</th>
  499. <th>Semestre</th>
  500. <th>Ver</th>
  501. </tr>
  502. </thead>
  503. <tbody>
  504. <?php
  505. foreach($usuario3_rs as $usuario){
  506. ?>
  507. <tr data-id="<?php echo $usuario["Usuario_id"]; ?>">
  508. <td class="text-center font-weight-bold"><?php echo $usuario["Usuario_claveULSA"] ?></td>
  509. <td ><?php echo $usuario["Usuario_grado"] ?></td>
  510. <td><?php echo $usuario["Usuario_apellidos"]." ".$usuario["Usuario_nombre"]; ?></td>
  511. <td><?php echo $usuario["Materia_desc"] ?></td>
  512. <td class="text-center "><?php echo $usuario["Materia_semestre"] ?></td>
  513. <td class="text-center icono-acciones text-nowrap">
  514. <span class="pointer modal-open" title="Datos"><?php echo $ICO["buscar"];?></span>
  515. <span class="pointer open-pdf" title="Horario de usuario" data-id="<?php echo $usuario["Usuario_id"]; ?>"><?php echo $ICO["calendario"];?></span>
  516. </td>
  517. </tr>
  518. <?php } ?>
  519. </tbody>
  520. </table>
  521. </div>
  522. </div>
  523. <?php } ?>
  524. <?php if (isset($materia_rs) && count($materia_rs) > 0){ ?>
  525. <h4 class="mt-4 mb-3">Materias que faltan de profesor</h4>
  526. <div class="row">
  527. <div class="col-12 table-responsive">
  528. <table class="table table-sm table-striped table-white">
  529. <thead class="thead-dark">
  530. <tr >
  531. <th>Grupo</th>
  532. <th>Materia</th>
  533. </tr>
  534. </thead>
  535. <tbody>
  536. <?php
  537. foreach($materia_rs as $materia){
  538. ?>
  539. <tr data-id="<?php echo $materia["Materia_id"]; ?>">
  540. <td><?php echo $materia["Grupo_desc"]." ".$materia["Carrera_prefijo"]; ?></td>
  541. <td><?php echo $materia["Materia_desc"] ?></td>
  542. </tr>
  543. <?php } ?>
  544. </tbody>
  545. </table>
  546. </div>
  547. </div>
  548. <?php } ?>
  549. </div>
  550. <div class="tab-pane fade" id="tab4" role="tabpanel" aria-labelledby="tab4-tab">
  551. <?php
  552. if(isset($usuario4_rs) && count($usuario4_rs) > 0){
  553. ?>
  554. <p class="text-right"><button type="button" class="btn btn-outline-secondary btn-xls" data-xls="xls_materiasprofesor.php"><?php echo $ICO["descargar"]; ?> Generar xls</button></p>
  555. <?php } ?>
  556. <div class="row">
  557. <div class="col-12">
  558. <form action="reporte_horarioprofesores.php" method="post">
  559. <div class="form-box form-box-info">
  560. <div class="form-group row">
  561. <label for="filter_desc4" class="col-4 col-form-label">Nombre</label>
  562. <div class="col-8 col-sm-4">
  563. <input id="filter_desc4" name="desc" type="text" class="form-control" <?php if(isset($filter_desc) ){echo 'value="'.$filter_desc.'"';}?>>
  564. </div>
  565. </div>
  566. <?php if(count($area_rs) > 1){ ?>
  567. <div class="form-group row">
  568. <label for="filter_area4" class="col-4 col-form-label">Área *</label>
  569. <div class="col-8 col-sm-4">
  570. <div class="datalist datalist-select mb-1 w-100">
  571. <div class="datalist-input">Ver todas</div>
  572. <span class="ing-buscar icono"></span>
  573. <ul style="display:none">
  574. <li data-id="">Ver todas</li>
  575. <?php foreach($area_rs as $area) {?>
  576. <li data-id="<?php echo $area["Area_id"];?>" <?php if(isset($filter_area) && $filter_area == $area["Area_id"]){echo "class='selected'";}?>><?php echo $area["Area_desc"];?></li>
  577. <?php }?>
  578. </ul>
  579. <input type="hidden" id="filter_area4" value="0">
  580. </div>
  581. </div>
  582. </div>
  583. <?php } ?>
  584. </div>
  585. <div class="form-group row">
  586. <div class="col-12 text-center">
  587. <button type="button" class="btn btn-outline-primary btn-enviar" data-campo="4"><?php echo $ICO["buscar"]; ?> Filtrar</button>
  588. <button type="button" class="btn btn-outline-danger btn-reset"><?php echo $ICO["borrar"]?> Limpiar</button>
  589. </div>
  590. </div>
  591. </form>
  592. </div>
  593. </div>
  594. <div class="row">
  595. <div class="col-12 table-responsive">
  596. <p>Se muestran los primeros <strong><?php echo MAX_ROWS;?></strong> resultados. Utiliza los filtros para encontrar el usuario que buscas.</p>
  597. <table class="table table-sm table-striped table-white">
  598. <thead class="thead-dark">
  599. <tr >
  600. <th>Clave ULSA</th>
  601. <th>Profesor</th>
  602. <th>
  603. <div class="row">
  604. <div class="col-8">Materias</div>
  605. <div class="col-4 text-center">Horas</div>
  606. </div>
  607. </th>
  608. <th>Total</th>
  609. </tr>
  610. </thead>
  611. <tbody>
  612. <?php
  613. //$i=0;
  614. $query = "";
  615. if(isset($filter_area)){
  616. $query .= ' AND "Area_id" = :area';
  617. }
  618. //Obtiene horario del usuario
  619. $stmt = $pdo->prepare('Select * from fs_mihorario(:usr, :per, 3) WHERE "TipoHorario_id" = 3 '.$query);//Obtiene calendario docente
  620. $stmt->bindParam(":per", $_SESSION["periodo_id"]);
  621. if($query != "") $stmt->bindParam(":area", $filter_area);
  622. foreach($usuario4_rs as $profesor){
  623. // if($i >= MAX_ROWS) break;
  624. $stmt->bindParam(":usr", $profesor["Usuario_id"]);
  625. if(!$stmt->execute()){
  626. //$t = $stmt->errorInfo();
  627. echo "Ocurrió un error al obtener los horarios de los profesores";
  628. //print_r($stmt->errorInfo());
  629. break;
  630. }
  631. $horario_rs = $stmt->fetchAll();
  632. $materiasArr = array();
  633. if(count($horario_rs) > 0){
  634. //$i++;
  635. for($rs_i = 0; $rs_i < count($horario_rs);){
  636. if((!isset($filter_area) || $filter_area=="" ) || (isset($filter_area) && $filter_area == $horario_rs[$rs_i]["Area_id"])){
  637. $horas = $horario_rs[$rs_i]["Duracion"]/60;
  638. $nombreArr = array();
  639. $key = "";//lave para guardar cuáles se agruparán
  640. do{
  641. $nombreArr[] = $horario_rs[$rs_i]["Materia_desc"]." (".$horario_rs[$rs_i]["Carrera_prefijo"].")";
  642. $key .= $horario_rs[$rs_i]["Materia_desc"].$horario_rs[$rs_i]["Carrera_prefijo"];
  643. $rs_i++;
  644. }while($rs_i < count($horario_rs) && date('H:i', strtotime($horario_rs[$rs_i-1]["Hora_inicio"])) == date('H:i', strtotime($horario_rs[$rs_i]["Hora_inicio"])) && $horario_rs[$rs_i]["Dia_id"] == $horario_rs[$rs_i-1]["Dia_id"]);
  645. $materiasArr[] = array("key"=>md5($key), "nombreArr" => $nombreArr, "horas"=>$horas);
  646. }
  647. }
  648. //fusiona horarios por llaves iguales
  649. for($ii = 0; $ii < count($materiasArr)-1; $ii++){
  650. for($jj = $ii+1; $jj < count($materiasArr); ){
  651. if($materiasArr[$ii]["key"] == $materiasArr[$jj]["key"]){
  652. $materiasArr[$ii]["horas"] += $materiasArr[$jj]["horas"];
  653. array_splice($materiasArr, $jj, 1);
  654. }else
  655. $jj++;
  656. }
  657. }
  658. ?>
  659. <tr>
  660. <td class="text-center font-weight-bold"><?php echo $profesor["Usuario_claveULSA"];?></td>
  661. <td><?php echo $profesor["Usuario_apellidos"]." ".$profesor["Usuario_nombre"]; ?></td>
  662. <td>
  663. <?php
  664. $sumMat = 0;
  665. foreach($materiasArr as $materia){ ?>
  666. <div class="row border-mid">
  667. <div class="col-8">
  668. <?php
  669. foreach($materia["nombreArr"] as $nombre){
  670. echo $nombre."<br>";
  671. }
  672. $sumMat+=$materia["horas"];
  673. ?>
  674. </div>
  675. <div class="col-4 text-center">
  676. <?php echo sprintf('%0.2f', $materia["horas"]);?> hrs.
  677. </div>
  678. </div>
  679. <?php } ?>
  680. </td>
  681. <td class="text-center">
  682. <?php echo sprintf('%0.2f', $sumMat);?> hrs.
  683. </td>
  684. </tr>
  685. <?php
  686. }
  687. }//foreach prof
  688. $stmt->closeCursor();
  689. //---------------
  690. ?>
  691. </tbody>
  692. </table>
  693. </div>
  694. </div>
  695. </div>
  696. </div>
  697. </main>
  698. <!--- FOOTER--->
  699. <?php require_once("../include/footer.php"); ?>
  700. <form id="pdfForm" action="./export/pdf_horariousuario.php" target="_blank" method="post">
  701. <input type="hidden" id="usr_id" name="id" value="">
  702. <input type="hidden" id="fecha_pdf" name="fecha" value="">
  703. <input type="hidden" id="tipo_pdf" name="tipo" value="">
  704. </form>
  705. <!-- Modal -->
  706. <div class="modal fade" id="modal" tabindex="-1" role="dialog" aria-labelledby="modal" aria-hidden="true">
  707. <div class="modal-dialog modal-dialog-centered modal-lg" role="document">
  708. <div class="modal-content">
  709. <div class="modal-header">
  710. <h4 class="col-12 modal-title text-center" id="modalLabel"><span class="usuario-nombre">Datos de usuario</span>
  711. <button type="button" class="close text-white" data-dismiss="modal" aria-label="Close">
  712. <span aria-hidden="true">&times;</span>
  713. </button>
  714. </h4>
  715. </div>
  716. <div class="modal-body pb-0">
  717. <div class="row">
  718. <div class="col-12 col-sm-5 col-md-3">
  719. <img src="" alt="Foto" class="img-fluid usr-foto">
  720. </div>
  721. <div class="col-12 col-sm-7 col-md-9">
  722. <!-- <div class="row">
  723. <div class="col-12 text-center mb-2">
  724. <h4><span class="font-weight-bold text-primary usuario-nombre"></span></h4>
  725. </div>
  726. </div> -->
  727. <div class="row">
  728. <div class="col-12">
  729. <p class="text-center"><b>Clave ULSA:</b> <span class="usuario-clave"></span> |
  730. <b>Fecha de ingeso:</b> <span class="usuario-ingreso"></span> |
  731. <b>Estado:</b> <span class="usuario-estado"></span></p>
  732. </div>
  733. <div class="col-12">
  734. <p id="contacto_list">
  735. </p>
  736. </div>
  737. </div>
  738. <div class="usuario-profesor-block mt-4">
  739. <div class="row">
  740. <div class="col-12">
  741. <p><i class="ing-cuadrado text-primary mr-3"></i> <span class="font-weight-bold usuario-categoria"></span> </p>
  742. </div>
  743. </div>
  744. </div>
  745. </div>
  746. </div>
  747. <div class="bg-primary text-white py-2 px-4 mt-4" style="margin-left: -16px; margin-right: -16px;">
  748. <div class="row">
  749. <div class="col-6">
  750. <h5 id="usuario-tipo"></h5>
  751. </div>
  752. <div class="col-6 text-right">
  753. <!--<a href="#" class="open-pdf btn btn-outline-primary" title="Horario final" data-id="" id="btn-horario">Ver horario</a>-->
  754. </div>
  755. </div>
  756. </div>
  757. </div><!-- body -->
  758. </div>
  759. </div>
  760. </div>
  761. <!-- Modal fecha Horario -->
  762. <div class="modal fade" id="modalFecha" tabindex="-1" role="dialog" aria-labelledby="modal" aria-hidden="true">
  763. <div class="modal-dialog modal-dialog-centered" role="document">
  764. <div class="modal-content">
  765. <div class="modal-header">
  766. <h4 class="col-12 modal-title text-center" id="modalLabel">Abrir horario
  767. <button type="button" class="close text-white" data-dismiss="modal" aria-label="Close">
  768. <span aria-hidden="true">&times;</span>
  769. </button>
  770. </h4>
  771. </div>
  772. <div class="modal-body pb-0">
  773. <form action="" method="post">
  774. <div class="form-box">
  775. <div class="form-group row">
  776. <label for="filter_fecha" class="col-4 col-form-label text-right">Fecha *</label>
  777. <div class="col-8">
  778. <input id="filter_fecha" name="fecha" type="text" class="form-control date-picker" placeholder="dd/mm/aaaa" maxlength="10" required="required" readonly="readonly" value="<?php if(isset($filter_fecha)){ echo fechaSlash($filter_fecha);}else{ echo $fecha_ini;}?>">
  779. </div>
  780. </div>
  781. <div class="form-group row align-items-center">
  782. <label class="col-4 col-form-label">Tipo horarios</label>
  783. <div class="col-4 ">
  784. <div class="form-check form-check-inline">
  785. <input class="form-check-input radio-lg" type="radio" id="tipo_todos" name="tipo" value="0" checked="true">
  786. <label for="tipo_todos" class="col-form-label">Todos</label>
  787. </div>
  788. </div>
  789. <div class="col-4 ">
  790. <div class="form-check form-check-inline">
  791. <input class="form-check-input radio-lg" type="radio" id="tipo_docencia" name="tipo" value="1">
  792. <label for="tipo_docencia" class="col-form-label">Docencia</label>
  793. </div>
  794. </div>
  795. </div>
  796. </div>
  797. <div class="form-group row">
  798. <div class="col-12 text-center">
  799. <button type="button" class="btn btn-outline-primary btn-fecha"><?php echo $ICO["calendario"];?> Abrir horario</button>
  800. </div>
  801. </div>
  802. </form>
  803. </div>
  804. </div>
  805. </div>
  806. </div>
  807. </div>
  808. <script src="../js/jquery.min.js"></script>
  809. <script src="../js/jquery-ui.js"></script>
  810. <script src="../js/datepicker-es.js"></script>
  811. <script src="../js/bootstrap/popper.min.js"></script>
  812. <script src="../js/bootstrap/bootstrap.min.js"></script>
  813. <script src="../js/sidebarmenu.js"></script>
  814. <script src="../js/datalist.js"></script>
  815. <script>
  816. var n = 1;
  817. $(document).on( "click", ".btn-reset", function(event){
  818. var forma = $(this).parents("form");
  819. forma.find("input[type=text]").val("");
  820. forma.find("select").prop("selectedIndex",0);
  821. //forma.submit();
  822. forma.prop("action", "reporte_horarioprofesores.php?tab="+n);
  823. forma.submit();
  824. });
  825. $(document).on( "click", ".btn-enviar", function(event){
  826. n = $(this).data("campo");
  827. console.log("N:"+n);
  828. switch(n){
  829. case 1:
  830. $("#desc").val($("#filter_desc1").val());
  831. $("#clave").val($("#filter_clave1").val());
  832. $("#area").val("");
  833. $("#carrera").val("");
  834. break;
  835. case 2:
  836. if($("#filter_area2").val()==0){
  837. invalidDatalist("#filter_area2", true);
  838. return;
  839. }
  840. $("#desc").val($("#filter_desc2").val());
  841. $("#clave").val($("#filter_clave2").val());
  842. $("#area").val($("#filter_area2").val());
  843. $("#carrera").val("");
  844. break;
  845. case 3:
  846. if($("#filter_carrera").val()==0){
  847. invalidDatalist("#filter_carrera", true);
  848. return;
  849. }
  850. $("#desc").val($("#filter_desc3").val());
  851. $("#clave").val($("#filter_clave3").val());
  852. $("#area").val($("#filter_area3").val());
  853. $("#carrera").val($("#filter_carrera").val());
  854. break;
  855. case 4:
  856. /*if($("#filter_carrera4").val()!=0 && $("#filter_carrera4").val()!=""){
  857. $("#area").val($("#filter_area4").val());
  858. return;
  859. }*/
  860. $("#desc").val($("#filter_desc4").val());
  861. $("#clave").val("");
  862. $("#area").val($("#filter_area4").val());
  863. $("#carrera").val("");
  864. break;
  865. }
  866. $("#formaProf").prop("action", "reporte_horarioprofesores.php?tab="+n);
  867. $("#formaProf").submit();
  868. });
  869. $('.text-submit').keydown(function(event) {
  870. var btn = $(this).parents(".tab-pane").find(".btn-enviar");
  871. // enter has keyCode = 13, change it if you want to use another button
  872. if (event.keyCode == 13) {
  873. btn.click()
  874. }
  875. });
  876. $('#myTab a').on('click', function (e) {
  877. invalidDatalist("#filter_carrera", false);
  878. invalidDatalist("#filter_area", false);
  879. })
  880. $(document).on( "click", ".btn-xls", function(event){
  881. var pag = $(this).data("xls");
  882. $("#formaXls").prop("action", "./export/"+pag);
  883. $("#formaXls").submit();
  884. });
  885. $(document).on( "click", ".open-pdf", function(event){
  886. $("#usr_id").val($(this).data("id"));
  887. $('#modalFecha').modal("show");
  888. //$("#pdfForm").submit();
  889. });
  890. $(document).on( "click", ".btn-fecha", function(event){
  891. $("#fecha_pdf").val($("#filter_fecha").val());
  892. $("#tipo_pdf").val( $('#modalFecha input[name="tipo"]:checked').val() );
  893. $("#pdfForm").submit();
  894. });
  895. $(document).ready(function(){
  896. setDatalist("#periodo", <?php echo $_SESSION["periodo_id"]; ?>);
  897. $('#tab<?php echo $tab;?>-tab').tab('show');
  898. $(document).on('click', '#dlPeriodo ul li' ,function(){
  899. $("#formaPeriodo").submit();
  900. });
  901. $(".date-picker" ).datepicker({ dateFormat: "dd/mm/yy" });
  902. $(".date-picker" ).datepicker( $.datepicker.regional[ "es" ] );
  903. $(".modal-open").click(function(){
  904. $("#errorBox").collapse('hide');
  905. $("#errorBox_text").html("");
  906. var id = $(this).parents("tr").data("id");
  907. $.ajax({
  908. url: './action/usuario_select.php',
  909. type: 'POST',
  910. dataType: 'json',
  911. data: { id: id },
  912. success: function(result) {
  913. if(result["error"]!= "" && result["error"] !== undefined){
  914. $("#errorBox").collapse('show');
  915. $("#errorBox_text").html(result["error"]);
  916. $('#messageBox')[0].scrollIntoView({ block: "end" });
  917. }else{
  918. $("#modal .usuario-nombre").text(result["apellidos"]+" "+result["nombre"]);
  919. $("#modal .usuario-clave").text(result["clave"]);
  920. $("#modal .usuario-ingreso").text(result["ingreso"]);
  921. $("#modal .usuario-estado").text(result["estado"]);
  922. $("#modal .usr-foto").prop("src", "../img/fotos/"+result["foto"]);
  923. $("#modal #btn-horario").data("id", id);
  924. var contactoHTML ="<ul type='square'>";
  925. for(var i=0; i < result["contacto"].length; i++){
  926. //if(contactoHTML != "") contactoHTML+= " | ";
  927. contactoHTML += "<li class='text-nowrap'><b>"+result["contacto"][i]["desc"]+": </b> "+result["contacto"][i]["valor"]+"</li>";
  928. }
  929. contactoHTML +="</ul>";
  930. $("#modal #contacto_list").html(contactoHTML);
  931. if(result["contacto"].length == 0){
  932. $("#contacto_list").hide();
  933. }else{
  934. $("#contacto_list").show();
  935. }
  936. if(result["esProfesor"] == 1){
  937. $("#modal .usuario-profesor-block").removeClass("d-none");
  938. $("#modal .usuario-categoria").text(result["categoria"]);
  939. }else{
  940. $("#modal .usuario-profesor-block").addClass("d-none");
  941. }
  942. if(result["esProfesor"] == 1 && result["esAdministrativo"] == 1){
  943. $('#usuario-tipo').text("Profesor | Administrativo");
  944. }else if(result["esProfesor"] == 1){
  945. $('#usuario-tipo').text("Profesor");
  946. }else if(result["esAdministrativo"] == 1){
  947. $('#usuario-tipo').text("Administrativo");
  948. }
  949. $('#modal').modal("show");
  950. }
  951. },
  952. error: function(jqXHR, textStatus, errorThrown ){
  953. $("#errorBox").collapse('show');
  954. $("#errorBox_text").html(errorThrown);
  955. }
  956. });//ajax
  957. });//click
  958. });
  959. </script>
  960. </body>
  961. </html>