<?php
require_once 'config.php';

// التحقق من تسجيل الدخول
requireLogin();

// الحصول على بيانات المستخدم الحالي
$userId = $_SESSION['user_id'];
$query = "SELECT * FROM users WHERE id = :id";
$user = fetchOne($query, [':id' => $userId]);

if (!$user) {
    setAlert('danger', 'المستخدم غير موجود');
    header('Location: ' . SITE_URL . '/index.php');
    exit;
}

// معالجة النموذج عند الإرسال
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $fullName = trim($_POST['full_name']);
    $email = trim($_POST['email']);
    
    // التحقق من البيانات
    $errors = [];
    
    if (empty($fullName)) {
        $errors[] = 'الاسم الكامل مطلوب';
    }
    
    if (empty($email)) {
        $errors[] = 'البريد الإلكتروني مطلوب';
    } elseif (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
        $errors[] = 'البريد الإلكتروني غير صالح';
    }
    
    // التحقق من تكرار البريد الإلكتروني
    if ($email !== $user['email']) {
        $query = "SELECT COUNT(*) as count FROM users WHERE email = :email AND id != :id";
        $result = fetchOne($query, [':email' => $email, ':id' => $userId]);
        
        if ($result['count'] > 0) {
            $errors[] = 'البريد الإلكتروني مستخدم بالفعل';
        }
    }
    
    // إذا لم تكن هناك أخطاء، قم بتحديث البيانات
    if (empty($errors)) {
        $query = "UPDATE users SET full_name = :full_name, email = :email WHERE id = :id";
        $params = [
            ':full_name' => $fullName,
            ':email' => $email,
            ':id' => $userId
        ];
        
        try {
            $db->prepare($query)->execute($params);
            
            // تحديث بيانات الجلسة
            $_SESSION['user_name'] = $fullName;
            
            setAlert('success', 'تم تحديث الملف الشخصي بنجاح');
            header('Location: ' . SITE_URL . '/profile.php');
            exit;
        } catch (PDOException $e) {
            $errors[] = 'حدث خطأ أثناء تحديث البيانات: ' . $e->getMessage();
        }
    }
    
    // عرض الأخطاء
    if (!empty($errors)) {
        foreach ($errors as $error) {
            setAlert('danger', $error);
        }
    }
}

// عنوان الصفحة
$pageTitle = 'الملف الشخصي';

// تضمين ملف الهيدر
include 'includes/header.php';
?>

<div class="d-flex justify-content-between align-items-center mb-4">
    <h1 class="h3 mb-0"><i class="fas fa-user-circle me-2"></i> الملف الشخصي</h1>
    <div>
        <a href="<?php echo SITE_URL; ?>/change-password.php" class="btn btn-secondary">
            <i class="fas fa-key"></i> تغيير كلمة المرور
        </a>
    </div>
</div>

<div class="row">
    <div class="col-md-8 mx-auto">
        <div class="card shadow-sm">
            <div class="card-header bg-primary text-white">
                <h5 class="card-title mb-0"><i class="fas fa-edit me-2"></i> تعديل البيانات الشخصية</h5>
            </div>
            <div class="card-body">
                <form method="post" action="">
                    <div class="mb-3">
                        <label for="full_name" class="form-label">الاسم الكامل</label>
                        <input type="text" class="form-control" id="full_name" name="full_name" value="<?php echo htmlspecialchars($user['full_name']); ?>" required>
                    </div>
                    
                    <div class="mb-3">
                        <label for="email" class="form-label">البريد الإلكتروني</label>
                        <input type="email" class="form-control" id="email" name="email" value="<?php echo htmlspecialchars($user['email']); ?>" required>
                    </div>
                    
                    <div class="mb-3">
                        <label for="role" class="form-label">الدور</label>
                        <input type="text" class="form-control" id="role" value="<?php echo htmlspecialchars($user['role']); ?>" readonly>
                        <div class="form-text text-muted">لا يمكن تغيير الدور من هنا</div>
                    </div>
                    
                    <div class="d-grid">
                        <button type="submit" class="btn btn-primary">
                            <i class="fas fa-save me-2"></i> حفظ التغييرات
                        </button>
                    </div>
                </form>
            </div>
        </div>
    </div>
</div>

<?php
// تضمين ملف الفوتر
include 'includes/footer.php';
?>
