horario_profesor_log.php 1.2 KB

12345678910111213141516171819202122232425262728293031323334
  1. <?php
  2. require_once "{$_SERVER['DOCUMENT_ROOT']}/class/database.php";
  3. $rawInput = file_get_contents('php://input');
  4. $input = json_decode($rawInput, true);
  5. if (!$rawInput || !isset($input['profesor_id'], $input['log_id']) || $_SERVER['REQUEST_METHOD'] !== 'POST') {
  6. http_response_code(400);
  7. echo json_encode(['error' => 'Request error.']);
  8. die();
  9. }
  10. $periodos = array_map(fn($array) => $array['id_periodo_sgu'], $db
  11. ->join('periodo', 'periodo.periodo_id = horario_view.periodo_id')
  12. ->join('horario_profesor', 'horario_profesor.horario_id = horario_view.horario_id')
  13. ->where('profesor_id', $input['profesor_id'])
  14. ->groupBy('id_periodo_sgu')
  15. ->orderBy('id_periodo_sgu', 'DESC')
  16. ->get('horario_view', 5, 'id_periodo_sgu'));
  17. $clave_profesor = $db->where('profesor_id', $input['profesor_id'])->getOne('profesor', 'profesor_clave')['profesor_clave'];
  18. $horarios = [];
  19. $rest = new Horarios();
  20. foreach ($periodos as $periodo) {
  21. $horarios = array_merge($horarios, $rest->get(data: ['idPeriodo' => $periodo, 'claveProfesor' => $clave_profesor, 'fecha' => date('Y-m-d')]));
  22. }
  23. $db
  24. ->where('log_id', $input['log_id'])
  25. ->update("log_registro", ['horario_web' => json_encode($horarios)]);