<?php
/**
 * View Teacher Schedule
 * 
 * Displays the complete schedule for a specific teacher to verify VoIP alignment
 */

require_once('config/database.php');

$teacher_id = $_GET['teacher_id'] ?? null;

if (!$teacher_id) {
    // If no teacher ID provided, show a list of teachers to choose from
    $teachers = $pdo->query("SELECT id, first_name, last_name FROM teachers WHERE status = 'active' ORDER BY first_name, last_name")->fetchAll();
    ?>
    <!DOCTYPE html>
    <html lang="bn">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>শিক্ষক নির্বাচন করুন - স্কুল ম্যানেজমেন্ট সিস্টেম</title>
        <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet">
        <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet">
        <style>
            body {
                font-family: 'SolaimanLipi', 'Arial Unicode MS', sans-serif;
            }
        </style>
    </head>
    <body>
        <div class="container mt-4">
            <div class="card">
                <div class="card-header bg-gradient">
                    <h4 class="mb-0"><i class="fas fa-users me-2"></i> শিক্ষক নির্বাচন করুন</h4>
                </div>
                <div class="card-body">
                    <p class="lead">শিক্ষকের সময়সূচী দেখতে নিচের তালিকা থেকে একজন শিক্ষক নির্বাচন করুন:</p>
                    
                    <?php if (empty($teachers)): ?>
                        <div class="alert alert-info text-center">
                            <i class="fas fa-info-circle me-2"></i> কোন সক্রিয় শিক্ষক পাওয়া যায়নি।
                        </div>
                    <?php else: ?>
                        <div class="row">
                            <?php foreach ($teachers as $teacher): ?>
                                <div class="col-md-6 col-lg-4 mb-3">
                                    <div class="card">
                                        <div class="card-body">
                                            <h5 class="card-title">
                                                <i class="fas fa-user me-2"></i>
                                                <?php echo htmlspecialchars($teacher['first_name'] . ' ' . $teacher['last_name']); ?>
                                            </h5>
                                            <a href="?teacher_id=<?php echo $teacher['id']; ?>" class="btn btn-primary btn-sm">
                                                <i class="fas fa-calendar me-1"></i> সময়সূচী দেখুন
                                            </a>
                                        </div>
                                    </div>
                                </div>
                            <?php endforeach; ?>
                        </div>
                    <?php endif; ?>
                    
                    <div class="mt-4">
                        <a href="teachers/routine.php" class="btn btn-secondary">
                            <i class="fas fa-arrow-left me-2"></i> ক্লাস রুটিনে ফিরুন
                        </a>
                        <a href="teachers/voip_check.php" class="btn btn-success">
                            <i class="fas fa-phone-volume me-2"></i> VoIP চেক
                        </a>
                    </div>
                </div>
            </div>
        </div>
        
        <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
    </body>
    </html>
    <?php
    exit();
}

// Get teacher information
$teacherStmt = $pdo->prepare("SELECT first_name, last_name, phone FROM teachers WHERE id = ?");
$teacherStmt->execute([$teacher_id]);
$teacher = $teacherStmt->fetch();

if (!$teacher) {
    die("Teacher not found with ID: $teacher_id");
}

// Get teacher's schedule
$scheduleStmt = $pdo->prepare("
    SELECT t.*, 
           c.name as class_name, 
           c.section as class_section,
           s.name as subject_name, 
           s.code as subject_code,
           t.day_of_week
    FROM timetable t
    JOIN classes c ON t.class_id = c.id
    JOIN subjects s ON t.subject_id = s.id
    WHERE t.teacher_id = ? AND t.status = 'active'
    AND t.academic_year IN (
        SELECT session_name FROM academic_sessions WHERE status = 'active'
    )
    ORDER BY 
        CASE t.day_of_week
            WHEN 'sunday' THEN 1
            WHEN 'monday' THEN 2
            WHEN 'tuesday' THEN 3
            WHEN 'wednesday' THEN 4
            WHEN 'thursday' THEN 5
            WHEN 'friday' THEN 6
            WHEN 'saturday' THEN 7
        END,
        t.start_time
");

$scheduleStmt->execute([$teacher_id]);
$schedule = $scheduleStmt->fetchAll();

// Day mapping to Bengali
$days_bn = [
    'sunday' => 'রবিবার',
    'monday' => 'সোমবার',
    'tuesday' => 'মঙ্গলবার',
    'wednesday' => 'বুধবার',
    'thursday' => 'বৃহস্পতিবার',
    'friday' => 'শুক্রবার',
    'saturday' => 'শনিবার'
];
?>

<!DOCTYPE html>
<html lang="bn">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>শিক্ষকের সম্পূর্ণ সময়সূচী - স্কুল ম্যানেজমেন্ট সিস্টেম</title>
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet">
    <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet">
    <style>
        body {
            font-family: 'SolaimanLipi', 'Arial Unicode MS', sans-serif;
        }
        .schedule-table th {
            background-color: #006747;
            color: white;
        }
        .schedule-card {
            border-left: 4px solid #006747;
        }
        .highlight-row {
            background-color: #e8f5e8;
        }
    </style>
</head>
<body>
    <div class="container mt-4">
        <div class="card schedule-card">
            <div class="card-header bg-gradient">
                <h4 class="mb-0"><i class="fas fa-calendar-alt me-2"></i> শিক্ষকের সম্পূর্ণ সময়সূচী</h4>
            </div>
            <div class="card-body">
                <div class="row mb-4">
                    <div class="col-md-6">
                        <h5><i class="fas fa-user me-2"></i> শিক্ষক: <?php echo htmlspecialchars($teacher['first_name'] . ' ' . $teacher['last_name']); ?></h5>
                        <p><i class="fas fa-phone me-2"></i> ফোন: <?php echo htmlspecialchars($teacher['phone'] ?? 'N/A'); ?></p>
                    </div>
                    <div class="col-md-6 text-md-end">
                        <h5><i class="fas fa-clock me-2"></i> বর্তমান সময়: <?php echo date('Y-m-d H:i:s'); ?></h5>
                        <p><i class="fas fa-calendar-day me-2"></i> আজকের দিন: <?php echo $days_bn[strtolower(date('l'))]; ?></p>
                    </div>
                </div>

                <?php if (empty($schedule)): ?>
                    <div class="alert alert-info text-center">
                        <i class="fas fa-info-circle me-2"></i> এই শিক্ষকের জন্য কোন সময়সূচী পাওয়া যায়নি।
                    </div>
                <?php else: ?>
                    <div class="table-responsive">
                        <table class="table table-striped table-bordered schedule-table">
                            <thead>
                                <tr>
                                    <th>দিন</th>
                                    <th>সময়</th>
                                    <th>ক্লাস</th>
                                    <th>বিষয়</th>
                                    <th>রুম</th>
                                </tr>
                            </thead>
                            <tbody>
                                <?php foreach ($schedule as $class): 
                                    $isToday = (strtolower(date('l')) === $class['day_of_week']);
                                    $now = strtotime(date('H:i:s'));
                                    $classStart = strtotime($class['start_time']);
                                    $classEnd = strtotime($class['end_time']);
                                    $isNow = ($now >= $classStart && $now <= $classEnd);
                                ?>
                                    <tr class="<?php echo ($isToday && $isNow) ? 'table-success highlight-row' : ''; ?>">
                                        <td>
                                            <strong><?php echo $days_bn[$class['day_of_week']] ?? $class['day_of_week']; ?></strong>
                                            <?php if ($isToday): ?>
                                                <span class="badge bg-success ms-1">আজকে</span>
                                            <?php endif; ?>
                                        </td>
                                        <td><?php echo date('g:i A', strtotime($class['start_time'])); ?> - <?php echo date('g:i A', strtotime($class['end_time'])); ?></td>
                                        <td><?php echo htmlspecialchars($class['class_name'] . ' ' . $class['class_section']); ?></td>
                                        <td><?php echo htmlspecialchars($class['subject_name'] . ' (' . $class['subject_code'] . ')'); ?></td>
                                        <td><?php echo htmlspecialchars($class['room_number'] ?? 'N/A'); ?></td>
                                    </tr>
                                <?php endforeach; ?>
                            </tbody>
                        </table>
                    </div>

                    <div class="alert alert-info mt-4">
                        <h6><i class="fas fa-info-circle me-2"></i> VoIP নোটিফিকেশন সম্পর্কে:</h6>
                        <ul>
                            <li>শুধুমাত্র স্কুল ঘন্টা (৭:০০ পূর্বাহ্ন - ৬:০০ অপরাহ্ন) এর মধ্যে ক্লাসগুলির জন্য VoIP নোটিফিকেশন পাঠানো হবে</li>
                            <li>ক্লাস শুরুর ঠিক সময় বা কয়েক মিনিটের মধ্যে VoIP নোটিফিকেশন ট্রিগার হবে</li>
                            <li>ক্লাস না থাকলে কোনো নোটিফিকেশন হবে না</li>
                            <li>সমস্ত নোটিফিকেশন বাংলাতে হবে</li>
                        </ul>
                    </div>
                <?php endif; ?>

                <div class="mt-3">
                    <a href="teachers/routine.php" class="btn btn-primary">
                        <i class="fas fa-arrow-left me-2"></i> ক্লাস রুটিনে ফিরুন
                    </a>
                    <a href="teachers/voip_check.php" class="btn btn-success">
                        <i class="fas fa-phone-volume me-2"></i> VoIP চেক
                    </a>
                    <div class="dropdown d-inline-block ms-2">
                        <button class="btn btn-info dropdown-toggle" type="button" id="teacherDropdown" data-bs-toggle="dropdown">
                            <i class="fas fa-exchange-alt me-2"></i> অন্য শিক্ষক
                        </button>
                        <div class="dropdown-menu">
                            <?php
                            $otherTeachers = $pdo->query("SELECT id, first_name, last_name FROM teachers WHERE status = 'active' AND id != $teacher_id ORDER BY first_name, last_name")->fetchAll();
                            foreach ($otherTeachers as $otherTeacher) {
                                echo '<a class="dropdown-item" href="?teacher_id=' . $otherTeacher['id'] . '">' . 
                                     htmlspecialchars($otherTeacher['first_name'] . ' ' . $otherTeacher['last_name']) . '</a>';
                            }
                            ?>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>

    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
</body>
</html>