<?php
require_once 'config.php';

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

// الحصول على معرف المستخدم الحالي
$userId = $_SESSION['user_id'];

// معالجة النموذج عند الإرسال
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $currentPassword = $_POST['current_password'];
    $newPassword = $_POST['new_password'];
    $confirmPassword = $_POST['confirm_password'];
    
    // التحقق من البيانات
    $errors = [];
    
    if (empty($currentPassword)) {
        $errors[] = 'كلمة المرور الحالية مطلوبة';
    }
    
    if (empty($newPassword)) {
        $errors[] = 'كلمة المرور الجديدة مطلوبة';
    } elseif (strlen($newPassword) < 6) {
        $errors[] = 'يجب أن تكون كلمة المرور الجديدة 6 أحرف على الأقل';
    }
    
    if ($newPassword !== $confirmPassword) {
        $errors[] = 'كلمة المرور الجديدة وتأكيدها غير متطابقين';
    }
    
    // التحقق من كلمة المرور الحالية
    if (empty($errors)) {
        $query = "SELECT password FROM users WHERE id = :id";
        $user = fetchOne($query, [':id' => $userId]);
        
        if (!$user || !password_verify($currentPassword, $user['password'])) {
            $errors[] = 'كلمة المرور الحالية غير صحيحة';
        }
    }
    
    // إذا لم تكن هناك أخطاء، قم بتحديث كلمة المرور
    if (empty($errors)) {
        $hashedPassword = password_hash($newPassword, PASSWORD_DEFAULT);
        
        $query = "UPDATE users SET password = :password WHERE id = :id";
        $params = [
            ':password' => $hashedPassword,
            ':id' => $userId
        ];
        
        try {
            $db->prepare($query)->execute($params);
            
            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-key me-2"></i> تغيير كلمة المرور</h1>
    <div>
        <a href="<?php echo SITE_URL; ?>/profile.php" class="btn btn-secondary">
            <i class="fas fa-arrow-right"></i> العودة إلى الملف الشخصي
        </a>
    </div>
</div>

<div class="row">
    <div class="col-md-6 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-lock me-2"></i> تغيير كلمة المرور</h5>
            </div>
            <div class="card-body">
                <form method="post" action="">
                    <div class="mb-3">
                        <label for="current_password" class="form-label">كلمة المرور الحالية</label>
                        <input type="password" class="form-control" id="current_password" name="current_password" required>
                    </div>
                    
                    <div class="mb-3">
                        <label for="new_password" class="form-label">كلمة المرور الجديدة</label>
                        <input type="password" class="form-control" id="new_password" name="new_password" required>
                        <div class="form-text text-muted">يجب أن تكون كلمة المرور 6 أحرف على الأقل</div>
                    </div>
                    
                    <div class="mb-3">
                        <label for="confirm_password" class="form-label">تأكيد كلمة المرور الجديدة</label>
                        <input type="password" class="form-control" id="confirm_password" name="confirm_password" required>
                    </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';
?>
