solicitud_autoriza.php 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196
  1. <?php
  2. /*
  3. Cambia de estado la reposición
  4. */
  5. $pag = "../solicitudes_autorizar.php";
  6. $ruta = "../";
  7. require_once "../class/c_login.php";
  8. require_once "../class/manda_correo.php";
  9. define("COORDINADOR", 9);
  10. define("SUPERVISOR", 7);
  11. define("ENVIO_CORREOS", true);
  12. // check if the session is started
  13. if (!isset($_SESSION['user']))
  14. die('No se ha iniciado sesión');
  15. $user = unserialize($_SESSION['user']);
  16. $pag = "../reposiciones_autorizar.php";
  17. if(!isset($_POST["id"]) || !isset($_POST["edo"]) ){
  18. header("Location: ".$pag."?error=0");
  19. exit();
  20. }
  21. $id_sol = filter_input(INPUT_POST, "id", FILTER_SANITIZE_NUMBER_INT);//limpia texto
  22. $edo = filter_input(INPUT_POST, "edo", FILTER_SANITIZE_NUMBER_INT);//limpia texto
  23. $tipo = filter_input(INPUT_POST, "tipo", FILTER_SANITIZE_NUMBER_INT);//limpia texto
  24. if(isset($_POST["salon"]) && $_POST["salon"] != "")
  25. $salon = filter_input(INPUT_POST, "salon", FILTER_SANITIZE_NUMBER_INT);//limpia texto
  26. //--------------
  27. //Obtiene datos de salón asignado
  28. $salon_desc = "Pendiente";
  29. if(!empty($salon)){
  30. $salon_rs = $db->querySingle('SELECT s.salon_id, s.salon_array FROM salon_view s where s.salon_id = :id_salon',
  31. [':id_salon' => $salon]
  32. );
  33. if($salon_rs["salon_id"] == "" || $salon_rs["salon_id"] == NULL){
  34. $salon_desc = "Pendiente";
  35. }else{
  36. $salon_json = json_decode($salon_rs["salon_array"], true);
  37. if($salon_json[0]== "UNIVERSIDAD LA SALLE"){
  38. unset($salon_json[0]);
  39. }
  40. $salon_desc = join(" / ",$salon_json);
  41. }
  42. }
  43. $solicitud_rs = $db->querySingle('SELECT * from fs_solicitud(:id, NULL, NULL, NULL, NULL, NULL, NULL, NULL)', [':id' => $id_sol]);
  44. if($edo == 4){//cancelación
  45. $motivo = "";
  46. if(isset($_POST["motivo"]) && $_POST["motivo"] != "")
  47. $motivo = trim($_POST["motivo"]);
  48. $db->querySingle('SELECT fu_solicitud_cancela(:id, :motivo)',
  49. [':id' => $id_sol, ':motivo' => $motivo]
  50. );
  51. }else{
  52. if(!empty($salon)){
  53. //fu_solicitud(p_solicitud_id, p_fecha_clase , p_fecha_nueva, p_hora_nueva, p_prof_id , p_desc, p_edo, p_alumnos, p_tipoaula , p_salon, p_duracion , p_horario_id , p_bloque, p_ciclo, p_motivo, p_supervisor_id )
  54. $db->querySingle('SELECT fu_solicitud(:id, NULL, NULL, NULL, NULL, NULL, :edo, NULL, NULL,:sal, NULL, NULL, NULL, NULL, NULL, NULL)',
  55. [':id' => $id_sol, ':sal' => $salon, ':edo' => $edo]
  56. );
  57. }else{
  58. $db->querySingle('SELECT fu_solicitud(:id, NULL, NULL, NULL, NULL, NULL, :edo, NULL, NULL,NULL, NULL, NULL, NULL, NULL, NULL, NULL)',
  59. [':id' => $id_sol, ':edo' => $edo]
  60. );
  61. }
  62. }
  63. //fecha_nueva, fecha_clase
  64. $fecha_nueva = $solicitud_rs["fecha_nueva"];
  65. $hora_nueva = $solicitud_rs["hora_nueva"];
  66. $fecha_clase = $solicitud_rs["fecha_clase"];
  67. $hora_clase = $solicitud_rs["horario_hora"];
  68. echo $fecha_nueva;
  69. if(!empty($fecha_nueva)){
  70. $dia_new = date('w', strtotime($fecha_nueva));
  71. $fecha_nueva = DateTime::createFromFormat('Y-m-d', $fecha_nueva)->format('d/m/Y')." ".$hora_nueva;
  72. }
  73. if(!empty($fecha_clase)){
  74. $dia_falta = date('w', strtotime($fecha_clase));
  75. $fecha_clase = DateTime::createFromFormat('d/m/Y', $fecha_clase)->format('Y-m-d');
  76. }
  77. switch($edo){
  78. case 2://Correo a supervisor
  79. switch($tipo){
  80. case 1://Reposición
  81. $asunto = "Solicitud - Reposición nueva ".$solicitud_rs["clave_dependencia"]." ".$solicitud_rs["facultad"];
  82. $texto = "<p>Se creó una nueva solicitud de reposición para: <b>".$solicitud_rs["clave_dependencia"]." ".$solicitud_rs["facultad"]."</b>.</p>";
  83. $texto .= "<p><b>".mb_strtoupper($solicitud_rs["materia_nombre"])."</b> del día <b>".$fecha_clase." a las ".$hora_clase." hrs. </b> se propone reponer el <b>".$fecha_nueva." a las ".$hora_nueva." hrs.</b>";
  84. break;
  85. case 2:
  86. $asunto = "Solicitud - Cambio de salón ".$solicitud_rs["clave_dependencia"]." ".$solicitud_rs["facultad"];
  87. $texto = "<p>Se creó una nueva solicitud de cambio de salón.</p>";
  88. $texto .= "<p>El día <b>".$fecha_nueva." a las ".$hora_nueva." hrs. </b>";
  89. break;
  90. case 3:
  91. $asunto = "Solicitud - Asignación de espacio ".$solicitud_rs["clave_dependencia"]." ".$solicitud_rs["facultad"];
  92. $texto = "<p>Se creó una nueva solicitud de asignación de salón.</p>";
  93. $texto .= "<p>El día <b>".$fecha_nueva." a las ".$hora_nueva." hrs. </b>";
  94. break;
  95. case 4:
  96. $asunto = "Solicitud - Cambio permanente ".$solicitud_rs["clave_dependencia"]." ".$solicitud_rs["facultad"];
  97. $texto = "<p>Se creó una nueva solicitud de asignación de salón permanente.</p>";
  98. $texto .= "<p><b>".mb_strtoupper($solicitud_rs["materia_nombre"])."</b> a partir del día <b>".$fecha_clase." a las ".$hora_orig." hrs. </b> se propone cambiar para el <b>".$fecha_nueva." a las ".$hora_nueva." hrs.</b>";
  99. break;
  100. }
  101. //$texto .= "<p>Ingresa al <a href='https://paad.lci.ulsa.mx'>sistema PAAD</a> para autorizarla.</p>";
  102. MandaCorreos::enviarCorreo($db, $asunto, $texto, $user->facultad["facultad_id"], MandaCorreos::SUPERVISOR);
  103. $ok = 0;
  104. break;
  105. case 3://Correo a coordinador, profesor y jefe
  106. switch($tipo){
  107. case 1://Reposición
  108. $asunto = "Reposición nueva autorizada ".$solicitud_rs["materia"];
  109. $texto = "<p>Se autorizó la solicitud de reposición.</p>";
  110. $texto .= "<p><b>".mb_strtoupper($solicitud_rs["materia_nombre"])."</b> del día <b>".$fecha_clase." a las ".$hora_clase." hrs. se repondrá el <b>".$fecha_nueva." a las ".$hora_nueva." hrs. en ".$salon_desc."</b>";
  111. break;
  112. case 2:
  113. $asunto = "Cambio de salón autorizado";
  114. $texto = "<p>Se autorizó la solicitud de cambio de salón.</p>";
  115. $texto .= "<p>El día <b>".$fecha_nueva." a las ".$hora_nueva." hrs. en ".$salon_desc."</b>";
  116. break;
  117. case 3:
  118. $asunto = "Asignación de espacio autorizada";
  119. $texto = "<p>Se autorizó la asignación de salón.</p>";
  120. $texto .= "<p>El día <b>".$fecha_nueva." a las ".$hora_nueva." hrs. en ".$salon_desc."</b>";
  121. break;
  122. case 4:
  123. $asunto = "Cambio permanente autorizado ".$solicitud_rs["materia_nombre"];
  124. $texto = "<p>Se autorizó cambio de salón permanente.</p>";
  125. $texto .= "<p><b>".mb_strtoupper($solicitud_rs["materia_nombre"])."</b> a partir del día <b>".$fecha_clase."</b> la clase será el <b>".$fecha_nueva." a las ".$hora_nueva." hrs. en ".$salon_desc."</b>";
  126. break;
  127. }
  128. $ok = 0;
  129. $db->querySingle('SELECT fu_reposicion_solicitud_supervisor(:id, :sup)',
  130. [':id' => $id_sol, ':sup'=>$user->user["id"]]
  131. );
  132. MandaCorreos::enviarCorreo($db, $asunto, $texto, $user->facultad["facultad_id"], MandaCorreos::COORDINADOR| MandaCorreos::PROFESOR| MandaCorreos::JEFE);
  133. break;
  134. case 4://Correo a coordinador, profesor y jefe
  135. switch($tipo){
  136. case 1://Reposición
  137. $asunto = "Reposición declinada ".$solicitud_rs["materia"];
  138. $texto = "<p>La reposición de <b>".mb_strtoupper($solicitud_rs["materia_nombre"])."</b> del día <b>".$fecha_clase." a las ".$hora_clase." hrs.</b> programada para el <b>".$fecha_nueva." a las ".$hora_nueva." hrs.</b> ha sido declinada por el siguiente motivo</p>";
  139. break;
  140. case 2:
  141. $asunto = "Cambio de salón declinado";
  142. $texto = "<p>La solicitud de cambio de salón para el día <b>".$fecha_nueva." a las ".$hora_nueva." hrs.</b> ha sido declinada por el siguiente motivo</p>";
  143. break;
  144. case 3:
  145. $asunto = "Asignación de espacio declinada";
  146. $texto = "<p>La asignación de salón para el día <b>".$fecha_nueva." a las ".$hora_nueva." hrs.</b> ha sido declinada por el siguiente motivo</p>";
  147. break;
  148. case 4:
  149. $asunto = "Cambio permanente declinado ".$solicitud_rs["materia_nombre"];
  150. $texto = "<p>El cambio de salón permanente de <b>".mb_strtoupper($solicitud_rs["materia_nombre"])."</b> del día <b>".$fecha_clase." a las ".$hora_clase." hrs.</b> programada para el <b>".$fecha_nueva." a las ".$hora_nueva." hrs.</b> ha sido declinada por el siguiente motivo</p>";
  151. break;
  152. }
  153. $texto .= "<p style='font-style:italic; padding-left:25px'>".$solicitud_rs["motivo"]."</p>";
  154. $ok = 1;
  155. $db->querySingle('SELECT fu_reposicion_solicitud_supervisor(:id, :sup)',
  156. [':id' => $id_sol, ':sup'=>$user->user["id"]]
  157. );
  158. MandaCorreos::enviarCorreo($db, $asunto, $texto, $user->facultad["facultad_id"], MandaCorreos::COORDINADOR| MandaCorreos::PROFESOR| MandaCorreos::JEFE);
  159. break;
  160. }
  161. /*
  162. $log->appendLog($_SESSION["usuario_id"], $_SESSION["usuario_nombre"]." ".$_SESSION["usuario_apellidos"], $desc_log);
  163. */
  164. header("Location: ".$pag."?ok=".$ok);
  165. exit();
  166. ?>