123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- <?php
- $ruta = "../";
- require_once "../class/c_login.php";
- if (!isset($_SESSION['user']))
- die(json_encode(['error' => 'No se ha iniciado sesión']));
- $user = unserialize($_SESSION['user']);
- $ruta = "../";
- require_once "../include/bd_pdo.php";
- // if method is get
- header("Content-Type: application/json");
- if ($_SERVER['REQUEST_METHOD'] === 'GET') {
- $user->print_to_log("Acceso a reposiciones");
- $reposiciones = $db
- ->where('periodo_id', $_GET['periodo_id'] ?? null)
- ->where('profesor_id', $_GET['profesor_id'] ?? [])
- ->get("reposicion");
- echo json_encode([
- 'status' => 'success',
- 'reposiciones' => $reposiciones
- ]);
- } elseif ($_SERVER['REQUEST_METHOD'] === 'POST') {
- $user->print_to_log("Creación de reposición", new: $params);
- try {
- $requiredParams = ['horario_id', 'fecha', 'hora', 'duracion_id', 'descripcion', 'profesor_id', 'salon', 'unidad', 'periodo_id', 'fecha_clase'];
- // Filter params based on requiredParams
- $params = array_filter($_POST, function ($key) use ($requiredParams) {
- return in_array($key, $requiredParams);
- }, ARRAY_FILTER_USE_KEY);
- // Check if all required params are present
- if (count($params) !== count($requiredParams)) {
- throw new Exception('Falta uno o más parámetros requeridos');
- }
- $db->insert("reposicion", $params);
- // Return success response
- echo json_encode([
- "status" => "success",
- "message" => "Reposición creada correctamente",
- ]);
- } catch (Exception $e) {
- // Return error response
- echo json_encode([
- "status" => "error",
- "message" => "No se pudo crear la reposición",
- "error" => $e->getMessage(),
- ]);
- }
- }
|