<?php
session_start();
if (!isset($_SESSION['user'])) {
    header("Location: ../auth/login.php");
    exit;
}

require_once('../config/db.php');

// استدعاء الهيدر لتعريف دالة الترجمة والمتغيرات الأساسية
include('../includes/header.php'); 

if (!isset($_GET['payment_id']) || !isset($_GET['student_id'])) {
    die(__('error_payment_or_student_missing'));
}

$payment_id = $_GET['payment_id'];
$student_id = $_GET['student_id'];

// جلب بيانات الدفعة الحالية مع اسم الطالب
$stmt = $conn->prepare("
    SELECT p.*, s.full_name 
    FROM payments p 
    JOIN students s ON p.student_id = s.id 
    WHERE p.id = ? AND p.student_id = ?
");
$stmt->execute([$payment_id, $student_id]);
$payment = $stmt->fetch();

if (!$payment) {
    die(__('error_payment_not_found'));
}

$errors = [];
$success = false;

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $amount_paid = $_POST['amount_paid'] ?? '';
    $discount = $_POST['discount'] ?? '';
    $payment_date = $_POST['payment_date'] ?? '';
    $payment_method = $_POST['payment_method'] ?? '';

    // التحقق من صحة البيانات
    if (!is_numeric($amount_paid) || $amount_paid < 0) {
        $errors[] = __('error_invalid_amount_paid');
    }

    if (!is_numeric($discount) || $discount < 0) {
        $errors[] = __('error_invalid_discount');
    }

    if (empty($payment_date)) {
        $errors[] = __('error_payment_date_required');
    }

    if (empty($errors)) {
        $updateStmt = $conn->prepare("UPDATE payments SET amount_paid = ?, discount = ?, payment_date = ?, payment_method = ? WHERE id = ? AND student_id = ?");
        $updated = $updateStmt->execute([$amount_paid, $discount, $payment_date, $payment_method, $payment_id, $student_id]);

        if ($updated) {
            $success = true;
            $payment['amount_paid'] = $amount_paid;
            $payment['discount'] = $discount;
            $payment['payment_date'] = $payment_date;
            $payment['payment_method'] = $payment_method;
        } else {
            $errors[] = __('error_update_failed');
        }
    }
}
?>

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css" />
<link href="https://fonts.googleapis.com/css2?family=Cairo:wght@400;600;700;800&display=swap" rel="stylesheet">

<style>
    body { font-family: 'Cairo', sans-serif; background-color: #f8fafc; }
    .edit-card { border-radius: 1.5rem; }
    .input-group-icon {
        position: absolute;
        inset-y: 0;
        <?= $dir == 'rtl' ? 'right: 0; padding-right: 1rem;' : 'left: 0; padding-left: 1rem;' ?>
        display: flex;
        align-items: center;
        color: #94a3b8;
        pointer-events: none;
    }
    .form-input {
        <?= $dir == 'rtl' ? 'padding-right: 2.75rem !important;' : 'padding-left: 2.75rem !important;' ?>
        transition: all 0.2s ease;
    }
    .form-input:focus {
        border-color: #4f46e5;
        box-shadow: 0 0 0 4px rgba(79, 70, 229, 0.1);
    }
</style>

<?php include('../includes/navbar.php'); ?>

<div class="min-h-screen pb-16 flex items-center justify-center" dir="<?= $dir ?>">
    <div class="max-w-lg w-full px-4">
        
        <div class="text-center mb-8">
            <div class="inline-flex items-center justify-center w-16 h-16 bg-indigo-100 text-indigo-600 rounded-2xl mb-4">
                <i class="fas fa-edit text-2xl"></i>
            </div>
            <h2 class="text-3xl font-black text-gray-800"><?= __('edit_payment_title') ?></h2>
            <p class="text-gray-500 mt-2"><?= __('for_student') ?>: <span class="text-indigo-600 font-bold"><?= htmlspecialchars($payment['full_name']) ?></span></p>
        </div>

        <div class="bg-white edit-card shadow-2xl border border-gray-100 overflow-hidden">
            
            <?php if ($success): ?>
                <div class="bg-emerald-50 border-b border-emerald-100 text-emerald-700 p-4 flex items-center justify-center">
                    <i class="fas fa-check-circle <?= $dir == 'rtl' ? 'ml-2' : 'mr-2' ?>"></i>
                    <span class="font-bold"><?= __('success_update_message') ?></span>
                </div>
            <?php endif; ?>

            <?php if (!empty($errors)): ?>
                <div class="bg-red-50 border-b border-red-100 text-red-700 p-4">
                    <?php foreach ($errors as $error): ?>
                        <div class="flex items-center text-sm font-bold mb-1">
                            <i class="fas fa-times-circle <?= $dir == 'rtl' ? 'ml-2' : 'mr-2' ?>"></i> <?= htmlspecialchars($error) ?>
                        </div>
                    <?php endforeach; ?>
                </div>
            <?php endif; ?>

            <form action="edit_payment.php?payment_id=<?= $payment_id ?>&student_id=<?= $student_id ?>" method="POST" class="p-8 space-y-5">
                
                <div>
                    <label class="block text-sm font-bold text-gray-700 mb-2"><?= __('amount_paid_label') ?></label>
                    <div class="relative">
                        <div class="input-group-icon"><i class="fas fa-money-bill-wave"></i></div>
                        <input type="number" step="0.01" name="amount_paid" 
                               value="<?= htmlspecialchars($payment['amount_paid']) ?>" required
                               class="form-input w-full py-3 rounded-xl border-gray-200 focus:ring-0">
                    </div>
                </div>

                <div>
                    <label class="block text-sm font-bold text-gray-700 mb-2"><?= __('discount_label') ?></label>
                    <div class="relative">
                        <div class="input-group-icon"><i class="fas fa-percent"></i></div>
                        <input type="number" step="0.01" name="discount" 
                               value="<?= htmlspecialchars($payment['discount']) ?>" required
                               class="form-input w-full py-3 rounded-xl border-gray-200 focus:ring-0">
                    </div>
                </div>

                <div>
                    <label class="block text-sm font-bold text-gray-700 mb-2"><?= __('payment_date_label') ?></label>
                    <div class="relative">
                        <div class="input-group-icon"><i class="fas fa-calendar-day"></i></div>
                        <input type="date" name="payment_date" 
                               value="<?= htmlspecialchars($payment['payment_date']) ?>" required
                               class="form-input w-full py-3 rounded-xl border-gray-200 focus:ring-0">
                    </div>
                </div>

                <div>
                    <label class="block text-sm font-bold text-gray-700 mb-2"><?= __('payment_method_label') ?></label>
                    <div class="relative">
                        <div class="input-group-icon"><i class="fas fa-wallet"></i></div>
                        <select name="payment_method" required
                                 class="form-input w-full py-3 rounded-xl border-gray-200 focus:ring-0 appearance-none bg-white">
                            <option value="نقداً" <?= $payment['payment_method'] == 'نقداً' ? 'selected' : '' ?>><?= __('method_cash') ?></option>
                            <option value="فيزا" <?= $payment['payment_method'] == 'فيزا' ? 'selected' : '' ?>><?= __('method_visa') ?></option>
                            <option value="كليك" <?= $payment['payment_method'] == 'كليك' ? 'selected' : '' ?>><?= __('method_cliq') ?></option>
                        </select>
                    </div>
                </div>

                <div class="grid grid-cols-2 gap-4 pt-4">
                    <a href="view_payments.php?student_id=<?= $student_id ?>" 
                       class="flex items-center justify-center bg-gray-100 hover:bg-gray-200 text-gray-600 font-bold py-3 rounded-xl transition">
                        <?= __('cancel_btn') ?>
                    </a>
                    <button type="submit" 
                            class="flex items-center justify-center bg-indigo-600 hover:bg-indigo-700 text-white font-bold py-3 rounded-xl shadow-lg shadow-indigo-100 transition transform active:scale-95">
                        <i class="fas fa-save <?= $dir == 'rtl' ? 'ml-2' : 'mr-2' ?>"></i> <?= __('save_changes_btn') ?>
                    </button>
                </div>
            </form>
        </div>
    </div>
</div>

<?php include('../includes/footer.php'); ?>