<?php
// index.php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

$pageTitle = 'إدارة الهيئة التدريسية';
include '../../includes/header.php';

if (session_status() == PHP_SESSION_NONE) { session_start(); }
checkLogin();

if (!isset($_SESSION['user_id'])) {
    header('Location: ../../index.php');
    exit();
}

$db = getDB();
$faculty_members = [];

// متغيرات البحث والفلترة
$search_term = $_GET['search'] ?? '';
$college_filter = $_GET['college_filter'] ?? '';
$rank_filter = $_GET['rank_filter'] ?? '';

// الإحصائيات
$total_faculty = 0;
$total_salaries = 0;

try {
    // 1. جلب الإحصائيات العامة
    $stat_sql = "SELECT COUNT(*) as count, SUM(Salary) as total_salary FROM faculty";
    // نستخدم دالة select إذا كانت متاحة (النمط المعتاد في كودك)
    if (method_exists($db, 'select')) {
        $stats = $db->select($stat_sql);
        $total_faculty = $stats[0]['count'] ?? 0;
        $total_salaries = $stats[0]['total_salary'] ?? 0;
    }

    // 2. جلب قائمة الكليات للفلتر
    $colleges_list = [];
    if (method_exists($db, 'select')) {
        $colleges_list = $db->select("SELECT DISTINCT College_ID, College FROM colleges ORDER BY College ASC");
    }

    // 3. بناء استعلام جلب التدريسيين مع الفلاتر
    $sql = "SELECT * FROM faculty WHERE 1=1";
    $params = [];

    // إضافة شرط البحث
    if (!empty($search_term)) {
        $sql .= " AND (Teacher LIKE ? OR Department LIKE ?)";
        $params[] = '%' . $search_term . '%';
        $params[] = '%' . $search_term . '%';
    }

    // إضافة فلتر الكلية
    if (!empty($college_filter)) {
        $sql .= " AND College_ID = ?";
        $params[] = $college_filter;
    }

    // إضافة فلتر الرتبة
    if (!empty($rank_filter)) {
        $sql .= " AND Rank = ?";
        $params[] = $rank_filter;
    }

    $sql .= " ORDER BY College ASC, Department ASC, Teacher ASC";
    
    // تنفيذ الاستعلام
    if (method_exists($db, 'select')) {
        $faculty_members = $db->select($sql, $params);
    } else {
        // Fallback إذا كان الكلاس مختلفاً
        $stmt = $db->prepare($sql);
        $stmt->execute($params);
        $faculty_members = $stmt->fetchAll(PDO::FETCH_ASSOC);
    }

} catch (Exception $e) {
    $_SESSION['error_message'] = 'حدث خطأ: ' . $e->getMessage();
}

// قائمة الرتب للفلتر
$ranks_list = ['مدرس مساعد', 'مدرس', 'أستاذ مساعد', 'أستاذ'];
?>

<div class="content-area">
    <div class="page-header d-flex justify-content-between align-items-center mb-4">
        <div>
            <h2 class="page-title">الهيئة التدريسية</h2>
            <p class="page-subtitle">قائمة الأساتذة والمحاضرين.</p>
        </div>
        <?php if (hasPermission('add_faculty')): ?>
            <a href="add_faculty.php" class="btn btn-primary"><i class="fas fa-user-plus me-2"></i>إضافة تدريسي</a>
        <?php endif; ?>
    </div>

    <div class="row g-3 mb-4">
        <div class="col-md-6 col-lg-4">
            <div class="card shadow-sm border-0 border-start border-4 border-primary">
                <div class="card-body">
                    <h6>إجمالي التدريسيين</h6>
                    <h3 class="fw-bold"><?php echo number_format($total_faculty); ?></h3>
                </div>
            </div>
        </div>
        <div class="col-md-6 col-lg-4">
            <div class="card shadow-sm border-0 border-start border-4 border-success">
                <div class="card-body">
                    <h6>مجموع الرواتب</h6>
                    <h3 class="fw-bold"><?php echo number_format($total_salaries); ?> <small class="fs-6 text-muted">د.ع</small></h3>
                </div>
            </div>
        </div>
    </div>

    <div class="card shadow-sm">
        <div class="card-body">
            
            <form method="GET" class="row g-2 mb-4">
                <div class="col-md-4">
                    <input type="text" name="search" class="form-control" placeholder="بحث بالاسم أو القسم..." value="<?php echo htmlspecialchars($search_term); ?>">
                </div>
                
                <div class="col-md-3">
                    <select name="college_filter" class="form-select" onchange="this.form.submit()">
                        <option value="">-- كل الكليات --</option>
                        <?php foreach ($colleges_list as $col): ?>
                            <option value="<?php echo $col['College_ID']; ?>" <?php echo ($college_filter == $col['College_ID']) ? 'selected' : ''; ?>>
                                <?php echo htmlspecialchars($col['College']); ?>
                            </option>
                        <?php endforeach; ?>
                    </select>
                </div>

                <div class="col-md-3">
                    <select name="rank_filter" class="form-select" onchange="this.form.submit()">
                        <option value="">-- كل الرتب --</option>
                        <?php foreach ($ranks_list as $r): ?>
                            <option value="<?php echo $r; ?>" <?php echo ($rank_filter == $r) ? 'selected' : ''; ?>>
                                <?php echo $r; ?>
                            </option>
                        <?php endforeach; ?>
                    </select>
                </div>

                <div class="col-md-2">
                    <a href="index.php" class="btn btn-secondary w-100">إعادة تعيين</a>
                </div>
            </form>

            <div class="table-responsive">
                <table class="table table-hover align-middle table-striped">
                    <thead class="table-light">
                        <tr>
                            <th style="width: 50px;">#</th>
                            <th style="width: 60px;">الصورة</th>
                            <th>اسم التدريسي</th>
                            <th>الشهادة & الرتبة</th>
                            <th>التخصص</th>
                            <th>الكلية & القسم</th>
                            <th>الراتب</th>
                            <th class="text-center" style="width: 150px;">إجراءات</th>
                        </tr>
                    </thead>
                    <tbody>
                        <?php if (!empty($faculty_members)): ?>
                            <?php foreach ($faculty_members as $member): ?>
                                <tr>
                                    <td><?php echo $member['Teacher_ID']; ?></td>
                                    
                                    <td>
                                        <?php if (!empty($member['Teacher_pic'])): ?>
                                            <img src="data:image/jpeg;base64,<?php echo base64_encode($member['Teacher_pic']); ?>" class="rounded-circle border" style="width: 40px; height: 40px; object-fit: cover;">
                                        <?php else: ?>
                                            <div class="rounded-circle bg-light border d-flex align-items-center justify-content-center text-secondary" style="width: 40px; height: 40px;"><i class="fas fa-user"></i></div>
                                        <?php endif; ?>
                                    </td>

                                    <td>
                                        <div class="fw-bold text-dark"><?php echo htmlspecialchars($member['Teacher']); ?></div>
                                        <div class="small text-muted">
                                            <?php echo ($member['Gender'] != 'Male') ? 'ذكر' : 'أنثى'; ?>
                                        </div>
                                    </td>
                                    
                                    <td>
                                        <span class="badge bg-dark mb-1"><?php echo htmlspecialchars($member['Certificate']); ?></span><br>
                                        <span class="badge bg-info text-dark"><?php echo htmlspecialchars($member['Rank']); ?></span>
                                    </td>

                                    <td>
                                        <div class="small"><?php echo htmlspecialchars($member['specialization']); ?></div>
                                    </td>

                                    <td>
                                        <div class="small fw-bold"><?php echo htmlspecialchars($member['College']); ?></div>
                                        <div class="small text-muted"><?php echo htmlspecialchars($member['Department']); ?></div>
                                    </td>
                                    
                                    <td><span class="text-success fw-bold"><?php echo number_format($member['Salary']); ?></span></td>

                                    <td class="text-center">
                                        <div class="btn-group">
                                            <a href="faculty_docs.php?id=<?php echo $member['Teacher_ID']; ?>" class="btn btn-sm btn-outline-info" title="عرض التفاصيل والوثائق"><i class="fas fa-eye"></i></a>
                                            <?php if (hasPermission('edit_college') || hasPermission('edit_faculty')): ?>
                                                <a href="edit_faculty.php?id=<?php echo $member['Teacher_ID']; ?>" class="btn btn-sm btn-outline-primary" title="تعديل"><i class="fas fa-edit"></i></a>
                                                
                                                <button type="button" class="btn btn-sm btn-outline-danger" title="حذف"
                                                        onclick="openDeleteModal(<?php echo $member['Teacher_ID']; ?>, '<?php echo addslashes($member['Teacher']); ?>')">
                                                    <i class="fas fa-trash"></i>
                                                </button>
                                            <?php endif; ?>
                                        </div>
                                    </td>
                                </tr>
                            <?php endforeach; ?>
                        <?php else: ?>
                            <tr><td colspan="8" class="text-center py-5 text-muted">لا توجد بيانات مطابقة للفلاتر.</td></tr>
                        <?php endif; ?>
                    </tbody>
                </table>
            </div>
        </div>
    </div>
</div>

<div class="modal fade" id="deleteModal" tabindex="-1" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header bg-danger text-white">
                <h5 class="modal-title">تأكيد حذف التدريسي</h5>
                <button type="button" class="btn-close btn-close-white" data-bs-dismiss="modal" aria-label="Close"></button>
            </div>
            <div class="modal-body">
                <p>هل أنت متأكد من رغبتك في حذف التدريسي: <strong id="deleteName"></strong>؟</p>
                <p class="text-danger small">هذا الإجراء نهائي ولا يمكن التراجع عنه.</p>
            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">إلغاء</button>
                <a href="#" id="deleteLink" class="btn btn-danger">نعم، حذف</a>
            </div>
        </div>
    </div>
</div>

<script>
    function openDeleteModal(id, name) {
        document.getElementById('deleteName').textContent = name;
        document.getElementById('deleteLink').href = 'delete_faculty.php?id=' + id;
        var myModal = new bootstrap.Modal(document.getElementById('deleteModal'));
        myModal.show();
    }
</script>

<?php include '../../includes/footer.php'; ?>