<?php
header('Content-Type: application/json');
$ruta = "../";
require_once("../include/bd_pdo.php");

$dias = array("domingo", "lunes", "martes", "miércoles", "jueves", "viernes", "sábado");

try {
    if(empty($_POST['profesor_id']))
        throw new Exception("No se ha especificado un profesor");
        
    // RECORD LAST QUERY
    $horarios = $db->query("SELECT * FROM fs_horario(_periodo_id => ?, _last => true, _profesor_id => ?) ORDER BY MATERIA", [
        $_POST['periodo_id'],
        $_POST['profesor_id'],
    ]);
    
    $horarios = array_map(function ($horario) use ($dias, $db) {
        $horario['profesores'] = array_map(
            fn ($profesor) =>
            $db->where("id", $profesor)->getOne("fs_profesor"),
            explode(",", substr($horario['profesores'], 1, -1))
        );
        $horario['dia'] = $dias[$horario['dia']];
        return $horario;
    }, $horarios);
    die(json_encode([
        "status" => "success",
        "data" => $horarios,
        // "data" => [],
    ]));
} catch (Exception $e) {
    die(json_encode([
        "status" => "error",
        "message" => $e->getMessage(),
        "query" => $db->getLastQuery(),
    ]));
}
