<?php
session_start();
require_once '../config/database.php';

// Only admins
if (!isset($_SESSION['user_id']) || $_SESSION['user_role'] !== 'admin') {
    header('Location: ../login.php');
    exit();
}

// Process form submission
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    try {
        $enabled = isset($_POST['zashof_enabled']) ? '1' : '0';
        $api_key = trim($_POST['zashof_api_key']);
        $base_url = rtrim(trim($_POST['zashof_base_url']), '/');
        
        // Validate required fields
        if ($enabled === '1' && empty($api_key)) {
            throw new Exception("API Key is required when Zashof Payment is enabled");
        }
        
        if ($enabled === '1' && empty($base_url)) {
            throw new Exception("Base URL is required when Zashof Payment is enabled");
        }
        
        // Auto-generate endpoint URLs based on base URL
        $create_charge_url = $base_url . '/create-charge';
        $verify_payment_url = $base_url . '/verify-payments';
        
        // Update settings
        $settings = [
            'zashof_enabled' => $enabled,
            'zashof_api_key' => $api_key,
            'zashof_base_url' => $base_url,
            'zashof_create_charge_url' => $create_charge_url,
            'zashof_verify_payment_url' => $verify_payment_url
        ];
        
        foreach ($settings as $key => $value) {
            $stmt = $pdo->prepare("
                INSERT INTO settings (setting_key, setting_value) 
                VALUES (?, ?) 
                ON DUPLICATE KEY UPDATE setting_value = VALUES(setting_value)
            ");
            $stmt->execute([$key, $value]);
        }
        
        $success_message = "Settings saved successfully!";
    } catch (Exception $e) {
        $error_message = "Error saving settings: " . $e->getMessage();
    }
}

// Load current settings
try {
    $stmt = $pdo->query("SELECT setting_key, setting_value FROM settings WHERE setting_key LIKE 'zashof_%'");
    $settings = $stmt->fetchAll(PDO::FETCH_KEY_PAIR);
} catch (Exception $e) {
    $settings = [];
    $error_message = "Error loading settings: " . $e->getMessage();
}

// Set default values
$settings['zashof_base_url'] = $settings['zashof_base_url'] ?? 'https://pay.zashof.com/api';
?>
<!DOCTYPE html>
<html lang="bn">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Zashof পেমেন্ট সেটিংস</title>
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet">
    <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet">
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-dark bg-primary">
    <div class="container-fluid">
        <a class="navbar-brand" href="index.php"><i class="fas fa-graduation-cap"></i> স্কুল ম্যানেজমেন্ট সিস্টেম</a>
        <div class="navbar-nav ms-auto">
            <a class="nav-link" href="index.php"><i class="fas fa-home"></i> ড্যাশবোর্ড</a>
            <a class="nav-link" href="../logout.php"><i class="fas fa-sign-out-alt"></i> লগআউট</a>
        </div>
    </div>
</nav>

<div class="container-fluid mt-4">
    <div class="row">
        <div class="col-md-8 mx-auto">
            <div class="card">
                <div class="card-header">
                    <h5><i class="fas fa-cog"></i> Zashof পেমেন্ট সেটিংস</h5>
                </div>
                <div class="card-body">
                    <?php if (isset($success_message)): ?>
                        <div class="alert alert-success">
                            <i class="fas fa-check-circle"></i> <?= htmlspecialchars($success_message) ?>
                        </div>
                    <?php endif; ?>
                    
                    <?php if (isset($error_message)): ?>
                        <div class="alert alert-danger">
                            <i class="fas fa-exclamation-triangle"></i> <?= htmlspecialchars($error_message) ?>
                        </div>
                    <?php endif; ?>
                    
                    <form method="POST">
                        <div class="mb-3 form-check form-switch">
                            <input type="checkbox" class="form-check-input" id="zashof_enabled" name="zashof_enabled" <?= (isset($settings['zashof_enabled']) && $settings['zashof_enabled'] == '1') ? 'checked' : '' ?>>
                            <label class="form-check-label" for="zashof_enabled">Zashof পেমেন্ট গেটওয়ে সক্রিয় করুন</label>
                        </div>
                        
                        <div class="mb-3">
                            <label for="zashof_api_key" class="form-label">API Key</label>
                            <input type="text" class="form-control" id="zashof_api_key" name="zashof_api_key" value="<?= htmlspecialchars($settings['zashof_api_key'] ?? '') ?>">
                            <div class="form-text">আপনার Zashof API key প্রবেশ করান</div>
                        </div>
                        
                        <div class="mb-3">
                            <label for="zashof_base_url" class="form-label">Base URL</label>
                            <input type="url" class="form-control" id="zashof_base_url" name="zashof_base_url" value="<?= htmlspecialchars($settings['zashof_base_url']) ?>">
                            <div class="form-text">Zashof API এর বেস URL</div>
                        </div>
                        
                        <div class="alert alert-info">
                            <h6><i class="fas fa-info-circle"></i> নির্দেশনা</h6>
                            <ul>
                                <li>API Key এবং Base URL সঠিকভাবে প্রবেশ করান</li>
                                <li>সঠিক API Key ছাড়া পেমেন্ট কাজ করবে না</li>
                                <li>পরীক্ষা করার জন্য "সেটিংস সংরক্ষণ করুন" ক্লিক করুন</li>
                            </ul>
                        </div>
                        
                        <div class="d-grid gap-2">
                            <button type="submit" class="btn btn-primary">
                                <i class="fas fa-save"></i> সেটিংস সংরক্ষণ করুন
                            </button>
                            <a href="index.php" class="btn btn-secondary">
                                <i class="fas fa-arrow-left"></i> ড্যাশবোর্ডে ফিরে যান
                            </a>
                        </div>
                    </form>
                </div>
            </div>
            
            <div class="card mt-4">
                <div class="card-header">
                    <h5><i class="fas fa-info-circle"></i> কনফিগারেশন তথ্য</h5>
                </div>
                <div class="card-body">
                    <h6>বর্তমান কনফিগারেশন:</h6>
                    <ul>
                        <li><strong>সক্রিয়:</strong> <?= (isset($settings['zashof_enabled']) && $settings['zashof_enabled'] == '1') ? 'হ্যাঁ' : 'না' ?></li>
                        <li><strong>API Key:</strong> <?= !empty($settings['zashof_api_key']) ? substr($settings['zashof_api_key'], 0, 10) . '...' . substr($settings['zashof_api_key'], -5) : 'সেট করা হয়নি' ?></li>
                        <li><strong>Base URL:</strong> <?= htmlspecialchars($settings['zashof_base_url']) ?></li>
                    </ul>
                    
                    <h6>ইন্টিগ্রেশন বিস্তারিত:</h6>
                    <ul>
                        <li>শিক্ষার্থীরা Zashof এর মাধ্যমে bKash Personal দিয়ে পেমেন্ট করতে পারবে</li>
                        <li>"আমার ফি" পেজে বকেয়া থাকলে পেমেন্ট বাটন দেখাবে</li>
                        <li>সফল পেমেন্টের পর ফি রেকর্ড স্বয়ংক্রিয়ভাবে আপডেট হবে</li>
                        <li>লেনদেন ID ভবিষ্যতের জন্য সংরক্ষণ করা হবে</li>
                    </ul>
                </div>
            </div>
        </div>
    </div>
</div>

<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script>
</body>
</html>