querySingle('SELECT h.materia, r.fecha_nueva, r.hora_nueva, r.fecha_clase, h.horario_hora, h.facultad_id, h.facultad, f.clave_dependencia, s.salon_id, s.salon_array, r.motivo_cancelacion, ta.tipoaula_supervisor , ta.tipoaula_nombre from reposicion_solicitud r inner join horario_view h on h.horario_id = r.horario_id inner join facultad f on f.facultad_id = h.facultad_id inner join tipoaula ta on ta.tipoaula_id = r.tipoaula_id left join salon_view s on r.salon_id = s.salon_id where r.reposicion_solicitud_id = :id_repo', [':id_repo' => $id_repo] ); if($reposicion_rs["salon_id"] == "" || $reposicion_rs["salon_id"] == NULL){ $salon_desc = "Pendiente"; }else{ $salon_json = json_decode($reposicion_rs["salon_array"], true); if($salon_json[0]== "UNIVERSIDAD LA SALLE"){ unset($salon_json[0]); } $salon_desc = join(" / ",$salon_json); } //Obtiene correos $correos_rs = $db->query('SELECT p.profesor_nombre, p.profesor_correo, u.usuario_nombre as jefe_nombre, u.usuario_correo as jefe_correo, coor.usuario_nombre as coordinador_nombre, coor.usuario_correo as coordinador_correo from reposicion_solicitud rs inner join profesor p on rs.profesor_id =p.profesor_id inner join usuario u on u.usuario_id = rs.usuario_id inner join horario_view hv on hv.horario_id = rs.horario_id inner join usuario coor on hv.facultad_id = coor.facultad_id and coor.rol_id = :rol_coord where rs.reposicion_solicitud_id = :id_repo', [':rol_coord' => COORDINADOR, ':id_repo' => $id_repo] ); //print_r($correos_rs); exit(); $prof_correos=array(); $jefe_correos=[]; $coord_correos=[]; foreach($correos_rs as $correo){ if( count($prof_correos)==0 && $correo["profesor_correo"]!=""){ if( !isset($prof_correos["correo"]) || !in_array($correo["profesor_correo"], $prof_correos["correo"]) ){ array_push($prof_correos, $correo["profesor_correo"]); } } if( count($jefe_correos)==0 && $correo["jefe_correo"]!=""){ if(!isset($jefe_correos["correo"]) || !in_array($correo["jefe_correo"], $jefe_correos["correo"])){ array_push($jefe_correos, $correo["jefe_correo"]); } } if( count($coord_correos)==0 && $correo["coordinador_correo"]!=""){ if(!isset($coord_correos["correo"]) || !in_array($correo["coordinador_correo"], $coord_correos["correo"])){ array_push($coord_correos, $correo["coordinador_correo"]); } } } $correosSup_rs = $db->querySingle("SELECT DISTINCT sup.usuario_correo as coordinador_correo FROM horario_supervisor hs inner join usuario sup on sup.usuario_id =hs.usuario_id where :facultad = ANY(hs.facultad_id_array) and hs.turno_inicio <= :hora and hs.turno_fin >= :hora", [':facultad'=>$reposicion_rs["facultad_id"], ':hora'=>$reposicion_rs["hora_nueva"]] ); if($edo == 4){//cancelación $motivo = ""; if(isset($_POST["motivo"]) && $_POST["motivo"] != "") $motivo = trim($_POST["motivo"]); $db->querySingle('SELECT fu_reposicion_cancela(:id, :motivo)', [':id' => $id_repo, ':motivo' => $motivo] ); }else{ if(!empty($salon)){ $db->querySingle('SELECT fu_reposicion_solicitud(:id, NULL, NULL, NULL, :sal, :edo, NULL, NULL, NULL, NULL)', [':id' => $id_repo, ':sal' => $salon, ':edo' => $edo] ); }else{ $db->querySingle('SELECT fu_reposicion_solicitud(:id, NULL, NULL, NULL, NULL, :edo, NULL, NULL, NULL, NULL)', [':id' => $id_repo, ':edo' => $edo] ); } } $fecha_clase = date('d/m/Y', strtotime($reposicion_rs["fecha_clase"])); $fecha_nueva = date('d/m/Y', strtotime($reposicion_rs["fecha_nueva"])); $hora_tmp = explode(":",$reposicion_rs["horario_hora"]); $hora_clase = $hora_tmp[0].":".$hora_tmp[1]; $hora_tmp = explode(":",$reposicion_rs["hora_nueva"]); $hora_nueva = $hora_tmp[0].":".$hora_tmp[1]; $asunto = ""; $texto = ""; $to = ""; switch($edo){ case 2://Correo a supervisor $asunto = "Reposición nueva - ".$reposicion_rs["clave_dependencia"]." ".$reposicion_rs["facultad"]; //crear plantilla $texto = "
Se creó una reposición nueva para: ".$reposicion_rs["clave_dependencia"]." ".$reposicion_rs["facultad"].".
"; $texto .= "".mb_strtoupper($reposicion_rs["materia"])." del día ".$fecha_clase." a las ".$hora_clase." hrs. se propone reponer el ".$fecha_nueva." a las ".$hora_nueva." hrs."; if(!$reposicion_rs["tipoaula_supervisor"]){ $texto .= " en el salón: ".$salon_desc."
"; }else{ $texto .= " en un salón de tipo: ".$reposicion_rs["tipoaula_nombre"].""; } $texto .= "Ingresa al sistema PAAD para autorizarla.
"; $to = join(",", $correosSup_rs); $ok = 0; break; case 3://Correo a coordinador, profesor y jefe $asunto = "Reposición autorizada - ".$reposicion_rs["materia"]; $texto = "La resposición de la clase de ".$reposicion_rs["materia"]." del día ".$fecha_clase." a las ".$hora_clase." hrs. está autorizada para realizarse el día ".$fecha_nueva." a las ".$hora_nueva." hrs. en: $salon_desc
"; $to = join(",", $coord_correos).",".join(",", $prof_correos).",".join(",", $jefe_correos); $ok = 0; break; case 4://Correo a coordinador, profesor y jefe $asunto = "Reposición declinada - ".$reposicion_rs["materia"]; $texto = "La resposición de la clase de ".$reposicion_rs["materia"]." planeada para el día ".$fecha_nueva." a las ".$hora_nueva." hrs. ha sido declinada por el siguiente motivo:
"; $texto .= "".$reposicion_rs["motivo_cancelacion"]."
"; $to = join(",", $coord_correos).",".join(",", $prof_correos).",".join(",", $jefe_correos); $ok = 1; break; } if($to!= "" && ENVIO_CORREOS){ $texto = '