<?php
// Nustatome laiko zoną
date_default_timezone_set("Europe/Vilnius");

// Savaitės dienų pavadinimai lietuviškai
$weekdays_lt = ["Sekmadienis", "Pirmadienis", "Antradienis", "Trečiadienis", "Ketvirtadienis", "Penktadienis", "Šeštadienis"];

// CSV failų nuskaitymo funkcija
function readCSV($filename) {
    $data = [];
    if (($handle = fopen($filename, "r")) !== FALSE) {
        while (($row = fgetcsv($handle, 1000, ",")) !== FALSE) {
            $data[] = array_map('trim', $row); // Pašaliname nereikalingus tarpus
        }
        fclose($handle);
    }
    return $data;
}

// Nuskaitome "laikas.csv" ir "pamokos.csv"
$laikai = readCSV("laikas.csv");
$pamokos = readCSV("pamokos.csv");

// Dabartinis laikas ir data
$current_time = date("H:i");
$current_date = date("Y-m-d");
$current_weekday = $weekdays_lt[date("w")];

// Tikriname, kuri pamoka šiuo metu vyksta
$aktyvi_pamoka = null;
$aktyvi_pamoka_stulpeliai = [];
$pamokos_numeris = "";
$pradzios_laikas = "";
$pabaigos_laikas = "";

foreach ($laikai as $index => $eilute) {
    if (count($eilute) < 3) continue; // Jei nėra bent 3 stulpelių, praleidžiame

    $pradzia = trim($eilute[0]);
    $pabaiga = trim($eilute[1]);

    if ($current_time >= $pradzia && $current_time < $pabaiga) {
        $aktyvi_pamoka = $eilute;
        $aktyvi_pamoka_stulpeliai = array_slice($eilute, 2); // Paimame stulpelių numerius
        $pamokos_numeris = $index + 1; // Kadangi indeksai prasideda nuo 0, pridedame 1
        $pradzios_laikas = $pradzia;
        $pabaigos_laikas = $pabaiga;
        break;
    }
}

// Funkcija, kuri generuoja HTML lentelę BE pradžios ir pabaigos laiko
function renderTable($pamokos, $aktyvi_pamoka_stulpeliai) {
    if (empty($aktyvi_pamoka_stulpeliai)) return;

    echo "<table border='1' cellpadding='5' cellspacing='0'>";
    echo "<tr><th>Klasė</th><th>Dalykas</th><th>Kabinetas</th><th>Mokytojas</th></tr>";

    foreach ($pamokos as $eilute) {
        // Pirmas stulpelis turi būti ne tuščias (klasės pavadinimas)
        $pirmas_stulpelis_index = (int)$aktyvi_pamoka_stulpeliai[0] - 1;
        if (empty($eilute[$pirmas_stulpelis_index])) continue;

        echo "<tr>";
        foreach ($aktyvi_pamoka_stulpeliai as $index) {
            $tikras_index = (int)$index - 1; // Pritaikome nuline bazę
            echo "<td>" . (isset($eilute[$tikras_index]) ? htmlspecialchars($eilute[$tikras_index]) : "") . "</td>";
        }
        echo "</tr>";
    }
    echo "</table>";
}
?>
<!DOCTYPE html>
<html lang="lt">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Šiuo metu vykstanti pamoka</title>
    <meta http-equiv="refresh" content="30"> <!-- Atnaujinimas kas 30 sek. -->
    <style>
        table { width: 100%; border-collapse: collapse; margin-top: 20px; }
        th, td { border: 1px solid black; padding: 8px; text-align: center; }
        th { background-color: #f2f2f2; }
    </style>
</head>
<body>
    <h1 align="center"><?php echo "$current_weekday,  $current_date,   $current_time"; ?></h1>

    <?php if ($aktyvi_pamoka): ?>
        <h2 align="center"> <?php echo "$pamokos_numeris pamoka ($pradzios_laikas - $pabaigos_laikas)"; ?></h2>
        <?php renderTable($pamokos, $aktyvi_pamoka_stulpeliai); ?>
    <?php else: ?>
        <h2>Šiuo metu pamokos nėra</h2>
    <?php endif; ?>
</body>
</html>
