<?php
// POST handling before any output
require_once __DIR__ . '/../includes/auth.php';
require_once __DIR__ . '/../includes/csrf.php';
require_once __DIR__ . '/../includes/settings.php';
auth_require_admin();

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    csrf_verify();
    foreach (($_POST['settings'] ?? []) as $key => $value) {
        $row = db_row('SELECT `key`,`type` FROM app_settings WHERE `key`=:k', ['k'=>$key]);
        if (!$row) {
            setting_set($key, $value, 'string');
            continue;
        }
        setting_set($key, $value, $row['type']);
    }
    header('Location: settings.php?msg=saved'); exit;
}

$page_title = 'Settings';
require __DIR__ . '/_guard.php';
?>

<style>
.set-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;margin-bottom:1.25rem;}
.set-empty{text-align:center;padding:2rem 1rem;color:var(--ink-muted);}
.set-empty .ic{font-size:2rem;margin-bottom:.5rem;}
</style>

<?php
$settings_section = 'general';
require __DIR__ . '/_settings_open.php';
?>

<div class="settings-page-head">
    <h1>General</h1>
    <p class="crumb">Site-wide configuration. Most settings live in the categories on the left.</p>
</div>

<?php if (isset($_GET['msg']) && $_GET['msg']==='saved'): ?>
    <div class="alert alert-success" data-autohide>Settings saved.</div>
<?php endif; ?>

<div class="set-card">
    <div class="set-empty">
        <div class="ic">⚙</div>
        <p style="margin:0 0 .5rem;font-size:.95rem;color:var(--ink);">No general site-wide options yet.</p>
        <p style="margin:0;font-size:.85rem;">
            Use the sidebar to manage <a href="payment-fees.php">payment fees</a>,
            <a href="plans.php">plans</a>,
            <a href="categories.php">categories</a>,
            and other settings.
        </p>
    </div>
</div>

<?php require __DIR__ . '/_settings_close.php'; ?>

<?php require __DIR__ . '/_footer.php'; ?>