<?php
require_once "../config.php";
require_once "../auth.php";
require_login();

include "header.php";

/* ==========================================================
   Filtering
========================================================== */

if ($ROLE == "user") {
    // user เห็นเฉพาะของตัวเอง
    $filter = "WHERE logs.user_id = $USER_ID";
} else {

    // admin + staff สามารถเลือก user ได้
    $selected_user = isset($_GET['uid']) ? intval($_GET['uid']) : 0;

    if ($selected_user > 0) {
        $filter = "WHERE logs.user_id = $selected_user";
    } else {
        $filter = ""; // ทั้งหมด
    }
}

?>

<style>
.log-card {
    border-radius: 12px;
    background: #fff;
    padding: 15px;
    border: 1px solid #e0e0e0;
    transition: .2s;
}
.log-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 18px rgba(0,0,0,0.12);
}
.log-icon {
    font-size: 40px;
    color: #0d6efd;
}
.log-time {
    font-size: 13px;
    color: #888;
}
.user-list-box {
    padding: 10px;
    border-radius: 10px;
    border: 1px solid #e0e0e0;
    background: #fff;
}
</style>

<h3><i class="bi bi-clock-history"></i> ประวัติการแจ้งเตือน</h3>
<hr>

<?php if ($ROLE != 'user'): ?>
<!-- ==================== USER LIST ==================== -->

<h5><i class="bi bi-people"></i> เลือกผู้ใช้</h5>

<div class="row mb-4">

<?php
$users = $conn->query("SELECT id, fullname FROM users ORDER BY fullname");
while ($u = $users->fetch_assoc()):
?>

<div class="col-md-3">
    <a href="logs.php?uid=<?= $u['id'] ?>" class="text-decoration-none text-dark">
        <div class="user-list-box mb-2 <?= ($selected_user==$u['id'])?'border-primary':'' ?>">
            <strong><?= $u['fullname'] ?></strong>
        </div>
    </a>
</div>

<?php endwhile; ?>
</div>

<?php endif; ?>

<!-- ==================== LOG LIST ==================== -->

<?php
$sql = "
    SELECT logs.*, users.fullname, beacons.location, beacons.uuid
    FROM logs
    LEFT JOIN users ON logs.user_id = users.id
    LEFT JOIN beacons ON logs.beacon_id = beacons.id
    $filter
    ORDER BY logs.id DESC
    LIMIT 200
";

$res = $conn->query($sql);
?>

<div class="row g-3">

<?php
if ($res->num_rows == 0):
?>
    <div class="alert alert-info">ไม่พบประวัติแจ้งเตือน</div>

<?php
endif;

while ($l = $res->fetch_assoc()):
?>

<div class="col-md-6 col-lg-4">

    <div class="log-card">

        <div class="d-flex">
            <div><i class="bi bi-bell log-icon"></i></div>

            <div class="ms-3 flex-grow-1">
                <strong><?= htmlspecialchars($l['message']) ?></strong><br>

                <?php if ($ROLE != 'user'): ?>
                <small class="text-muted">ผู้ใช้: <?= $l['fullname'] ?></small><br>
                <?php endif; ?>

                <?php if ($l['location']): ?>
                <small>ตำแหน่ง Beacon: <?= $l['location'] ?></small><br>
                <?php endif; ?>

                <div class="log-time">
                    <i class="bi bi-clock"></i>
                    <?= date("d/m/Y H:i", strtotime($l['created_at'])) ?>
                </div>
            </div>
        </div>

    </div>

</div>

<?php endwhile; ?>

</div>

<?php include "../footer.php"; ?>
