<?php
$servername = "localhost";
$username = "u66301280010";
$password = "@2566";
$dbname = "u66301280010";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
}

// Variable to hold success or error messages
$activity_message = "";
$attendance_message = "";

// Handle activity creation
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['activity_name']) && isset($_POST['activity_date'])) {
    $activity_name = $_POST['activity_name'];
    $activity_date = $_POST['activity_date'];

    $sql = "INSERT INTO activities1 (activity_name, activity_date) VALUES (?, ?)";
    $stmt = $conn->prepare($sql);
    if ($stmt === false) {
        die("Error preparing the SQL statement: " . $conn->error);
    }
    $stmt->bind_param("ss", $activity_name, $activity_date);

    if ($stmt->execute()) {
        $activity_message = "Activity created successfully!";
    } else {
        $activity_message = "Error: " . $stmt->error;
    }

    $stmt->close();
}

// Fetch activities
$activities_result = $conn->query("SELECT * FROM activities1");

// Handle attendance check and save
$studentData = "";
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['student_id']) && isset($_POST['activity_id']) && !isset($_POST['attendance_status'])) {
    $student_id = $_POST['student_id'];
    $activity_id = $_POST['activity_id'];
    
    $sql = "SELECT * FROM student WHERE studentCode = ?";
    $stmt = $conn->prepare($sql);
    if ($stmt === false) {
        die("Error preparing the SQL statement: " . $conn->error);
    }
    $stmt->bind_param("s", $student_id);
    $stmt->execute();
    $result = $stmt->get_result();
    
    if ($result->num_rows > 0) {
        while($row = $result->fetch_assoc()) {
            $studentData = "<tr>
                                <td>" . $row["studentCode"] . "</td>
                                <td>" . $row["firstname"] . " " . $row["surname"] . "</td>
                                <td>
                                    <input type='radio' name='attendance_status' value='มา' required> มา
                                    <input type='radio' name='attendance_status' value='มาสาย' required> มาสาย
                                    <input type='radio' name='attendance_status' value='ลา' required> ลา
                                    <input type='radio' name='attendance_status' value='ขาด' required> ขาด
                                </td>
                            </tr>
                            <input type='hidden' name='student_id' value='" . $student_id . "'>
                            <input type='hidden' name='activity_id' value='" . $activity_id . "'>";
        }
    } else {
        $studentData = "<tr><td colspan='3'>No results found</td></tr>";
    }
    
    $stmt->close();
}

if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['attendance_status']) && isset($_POST['student_id']) && isset($_POST['activity_id'])) {
    $attendance_status = $_POST['attendance_status'];
    $student_id = $_POST['student_id'];
    $activity_id = $_POST['activity_id'];
    $date = date("Y-m-d"); // บันทึกวันที่ปัจจุบัน
    
    $sql = "INSERT INTO attendance1 (student_id, activity_id, status, date) VALUES (?, ?, ?, ?)";
    $stmt = $conn->prepare($sql);
    if ($stmt === false) {
        die("Error preparing the SQL statement: " . $conn->error);
    }
    $stmt->bind_param("siss", $student_id, $activity_id, $attendance_status, $date);
    
    if ($stmt->execute()) {
        $attendance_message = "ข้อมูลถูก Upload ไปยัง Database แล้ว!"; // แสดงข้อความยืนยัน
    } else {
        $attendance_message = "เกิดข้อผิดพลาดในการ Upload ข้อมูล: " . $stmt->error; // แสดงข้อความข้อผิดพลาด
    }
    
    $stmt->close();
}

$conn->close();
?>

<!DOCTYPE html>
<html>
<head>
    <title>Activity Management</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            background-color: #f2f2f2;
            margin: 0;
            padding: 0;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column;
            height: 100vh;
        }
        .container {
            background-color: white;
            padding: 20px;
            border-radius: 5px;
            box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
            text-align: center;
            width: 100%;
            max-width: 600px;
            margin-bottom: 20px;
        }
        h2 {
            text-align: center;
            color: #333;
            margin-bottom: 20px;
        }
        form {
            display: flex;
            flex-direction: column;
            align-items: center;
        }
        label {
            margin: 10px 0 5px;
            font-weight: bold;
        }
        input[type="text"], input[type="date"], input[type="submit"], select {
            padding: 10px;
            margin: 5px 0;
            border: 1px solid #ccc;
            border-radius: 5px;
            width: 100%;
            max-width: 300px;
        }
        input[type="submit"] {
            background-color: #007BFF;
            color: white;
            cursor: pointer;
        }
        input[type="submit"]:hover {
            background-color: #0056b3;
        }
        table {
            width: 100%;
            border-collapse: collapse;
            margin-top: 20px;
        }
        th, td {
            padding: 10px;
            text-align: left;
            border-bottom: 1px solid #ddd;
        }
        th {
            background-color: #f2f2f2;
        }
        .message {
            text-align: center;
            color: green;
            font-weight: bold;
            border: 1px solid #4CAF50;
            padding: 10px;
            border-radius: 5px;
            background-color: #d4edda;
            margin-top: 20px;
            display: inline-block;
        }
        .error {
            text-align: center;
            color: red;
            font-weight: bold;
            border: 1px solid #f44336;
            padding: 10px;
            border-radius: 5px;
            background-color: #f8d7da;
            margin-top: 20px;
            display: inline-block;
        }
        .center {
            text-align: center;
        }
    </style>
</head>
<body>
    <div class="container">
        <h2>Create Activity</h2>
        <form method="post">
            <label for="activity_name">Activity Name:</label>
            <input type="text" id="activity_name" name="activity_name" required>
            <br>
            <label for="activity_date">Activity Date:</label>
            <input type="date" id="activity_date" name="activity_date" required>
            <br>
            <input type="submit" value="Create Activity">
        </form>
        <?php if (!empty($activity_message)) { ?>
            <div class="<?php echo strpos($activity_message, 'successfully') !== false ? 'message' : 'error'; ?>">
                <?php echo $activity_message; ?>
            </div>
        <?php } ?>
    </div>
    <div class="container">
        <h2>Check Attendance</h2>
        <form method="post">
            <label for="activity_id">Select Activity:</label>
            <select id="activity_id" name="activity_id" required>
                <?php while($activity = $activities_result->fetch_assoc()) { ?>
                    <option value="<?php echo $activity['id']; ?>"><?php echo $activity['activity_name']; ?></option>
                <?php } ?>
            </select>
            <br>
            <label for="student_id">Student ID:</label>
            <input type="text" id="student_id" name="student_id" required>
            <input type="submit" value="Search">
        </form>
        
        <?php if (!empty($studentData)) { ?>
            <form method="post">
                <table border="1">
                    <tr>
                        <th>Student ID</th>
                        <th>Name</th>
                        <th>Attendance</th>
                    </tr>
                    <?php echo $studentData; ?>
                </table>
                <br>
                <input type="submit" value="Save Attendance">
            </form>
        <?php } ?>
        
