<?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();

$db = getDB();
$errors = [];
$success_msg = '';

// جلب قائمة الأقسام للقائمة المنسدلة
$departments_list = [];
try {
    $dept_sql = "SELECT Departement_ID, Departement FROM departemenets ORDER BY Departement ASC";
    if (method_exists($db, 'select')) {
        $departments_list = $db->select($dept_sql);
    } else {
        $stmt = $db->prepare($dept_sql);
        $stmt->execute();
        $departments_list = $stmt->fetchAll(PDO::FETCH_ASSOC);
    }
} catch (Exception $e) {
    $errors[] = 'خطأ في جلب الأقسام: ' . $e->getMessage();
}

// معالجة الإرسال
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $hall_name = trim($_POST['hall_name'] ?? '');
    $department_id = trim($_POST['department_id'] ?? '');
    $capacity = trim($_POST['capacity'] ?? '');
    $type = trim($_POST['type'] ?? ''); // 0 للقاعة، 1 للمختبر

    // التحقق من الحقول
    if (empty($hall_name)) $errors[] = 'يرجى إدخال اسم القاعة أو المختبر.';
    if (empty($department_id)) $errors[] = 'يرجى اختيار القسم.';
    if ($capacity === '') $errors[] = 'يرجى إدخال السعة الاستيعابية.';
    if ($type === '') $errors[] = 'يرجى اختيار النوع (قاعة أم مختبر).';

    if (empty($errors)) {
        try {
            $pdo = method_exists($db, 'getConnection') ? $db->getConnection() : $db;
            
            // إدخال البيانات إلى جدول halls
            $sql = "INSERT INTO halls (Hall_Name, Department_ID, Capacity, Type) 
                    VALUES (:name, :dept_id, :capacity, :type)";
            
            $stmt = $pdo->prepare($sql);
            
            $stmt->bindParam(':name', $hall_name);
            $stmt->bindParam(':dept_id', $department_id, PDO::PARAM_INT);
            $stmt->bindParam(':capacity', $capacity, PDO::PARAM_INT);
            $stmt->bindParam(':type', $type, PDO::PARAM_INT);
            
            if ($stmt->execute()) {
                $success_msg = 'تمت الإضافة بنجاح!';
            } else {
                $errors[] = 'حدث خطأ أثناء حفظ البيانات.';
            }
        } catch (Exception $e) {
            $errors[] = 'خطأ في قاعدة البيانات: ' . $e->getMessage();
        }
    }
}
?>

<div class="content-area">
    <div class="page-header mb-4">
        <h2 class="page-title">إضافة قاعة أو مختبر</h2>
        <nav aria-label="breadcrumb">
            <ol class="breadcrumb">
                <li class="breadcrumb-item"><a href="show_halls.php">القاعات والمختبرات</a></li>
                <li class="breadcrumb-item active">إضافة جديد</li>
            </ol>
        </nav>
    </div>

    <div class="card shadow-sm">
        <div class="card-header bg-primary text-white">
            <h5 class="mb-0"><i class="fas fa-door-open me-2"></i> بيانات القاعة / المختبر</h5>
        </div>
        <div class="card-body p-4">
            
            <?php if (!empty($errors)): ?>
                <div class="alert alert-danger">
                    <ul class="mb-0">
                        <?php foreach ($errors as $error) echo "<li>" . htmlspecialchars($error) . "</li>"; ?>
                    </ul>
                </div>
            <?php endif; ?>

            <?php if ($success_msg): ?>
                <div class="alert alert-success"><?php echo $success_msg; ?></div>
            <?php endif; ?>

            <form method="POST" action="">
                <div class="row g-3">
                    <div class="col-md-6">
                        <label class="form-label">الاسم أو الرمز (Hall/Lab Name) <span class="text-danger">*</span></label>
                        <input type="text" class="form-control" name="hall_name" placeholder="مثال: قاعة 1، مختبر الحاسوب A" required>
                    </div>

                    <div class="col-md-6">
                        <label class="form-label">النوع (Type) <span class="text-danger">*</span></label>
                        <select class="form-select" name="type" required>
                            <option value="" disabled selected>-- اختر النوع --</option>
                            <option value="0">قاعة دراسية (Hall)</option>
                            <option value="1">مختبر (Lab)</option>
                        </select>
                    </div>

                    <div class="col-md-6">
                        <label class="form-label">القسم التابع له (Department) <span class="text-danger">*</span></label>
                        <select class="form-select" name="department_id" required>
                            <option value="" disabled selected>-- اختر القسم --</option>
                            <?php foreach ($departments_list as $dept): ?>
                                <option value="<?php echo $dept['Departement_ID']; ?>">
                                    <?php echo htmlspecialchars($dept['Departement']); ?>
                                </option>
                            <?php endforeach; ?>
                        </select>
                    </div>

                    <div class="col-md-6">
                        <label class="form-label">السعة الاستيعابية (Capacity) <span class="text-danger">*</span></label>
                        <input type="number" class="form-control" name="capacity" placeholder="عدد المقاعد / الطلاب" min="1" required>
                    </div>
                </div>

                <div class="mt-4 d-flex justify-content-end gap-2">
                    <a href="show_halls.php" class="btn btn-secondary">إلغاء</a>
                    <button type="submit" class="btn btn-primary px-5"><i class="fas fa-save me-2"></i>حفظ</button>
                </div>
            </form>
        </div>
    </div>
</div>

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