40090-vm/admin.php
Flatlogic Bot d6311a3a5e 1.0
2026-05-26 10:05:49 +00:00

170 lines
8.7 KiB
PHP

<?php
declare(strict_types=1);
require_once __DIR__ . '/includes/app.php';
$pageTitle = 'Inquiry Desk';
$pageDescription = 'Preview list and detail view for strategic inquiries submitted through the first MVP slice.';
$pageRobots = 'noindex, nofollow';
$activePage = '';
$inquiries = list_inquiries();
$selectedReference = trim((string) ($_GET['reference'] ?? ''));
$selectedId = isset($_GET['id']) ? (int) $_GET['id'] : null;
$selectedInquiry = null;
if ($selectedReference !== '' || ($selectedId !== null && $selectedId > 0)) {
$selectedInquiry = find_inquiry($selectedId, $selectedReference !== '' ? $selectedReference : null);
}
if (!$selectedInquiry && $inquiries !== []) {
$selectedInquiry = $inquiries[0];
}
require __DIR__ . '/includes/header.php';
?>
<section class="page-section pt-4 pt-lg-5">
<div class="container">
<div class="hero-shell page-intro">
<div class="row g-4 align-items-center">
<div class="col-lg-8">
<span class="section-kicker">Preview desk</span>
<h1 class="page-title">Qualified inquiry queue and detail view.</h1>
<p class="lead-copy mb-0">This admin-style page gives the first delivery an internal operational surface: a list of saved inquiries and a focused detail panel for review.</p>
</div>
<div class="col-lg-4">
<div class="surface-card hero-panel h-100">
<span class="signal-chip signal-chip--primary mb-3">Queue snapshot</span>
<div class="metric-stack">
<div class="meta-stack mb-3">
<span class="meta-label">Entries</span>
<strong><?= h((string) count($inquiries)) ?></strong>
</div>
<div class="meta-stack">
<span class="meta-label">Storage mode</span>
<strong><?= using_preview_storage() ? 'Preview session' : 'Database' ?></strong>
</div>
</div>
</div>
</div>
</div>
</div>
<?php if (using_preview_storage()): ?>
<div class="notice-banner notice-banner--warning mb-4">
<strong>Preview mode:</strong> the queue is reading from the current browser session because the database connection is rejecting access right now.
</div>
<?php endif; ?>
<div class="admin-layout">
<section class="table-shell p-3">
<div class="d-flex justify-content-between align-items-center gap-3 mb-3">
<div>
<span class="section-kicker">Inquiry list</span>
<h2 class="section-title mb-0">Current queue</h2>
</div>
<a class="btn btn-outline-brand btn-sm" href="partnership.php">New inquiry</a>
</div>
<?php if ($inquiries === []): ?>
<div class="empty-panel">
<span class="signal-chip signal-chip--gold mb-3">Empty state</span>
<h3 class="detail-title">No inquiries yet</h3>
<p class="empty-copy">Submit the first strategic brief to see the list and detail layout in action.</p>
<a class="btn btn-brand mt-2" href="partnership.php">Open inquiry desk</a>
</div>
<?php else: ?>
<div class="table-responsive">
<table class="table queue-table align-middle">
<thead>
<tr>
<th>Reference</th>
<th>Contact</th>
<th>Interest</th>
<th>Status</th>
</tr>
</thead>
<tbody>
<?php foreach ($inquiries as $inquiry):
$isActive = $selectedInquiry && ($selectedInquiry['reference_code'] === $inquiry['reference_code']);
?>
<tr class="<?= $isActive ? 'queue-row--active' : '' ?>">
<td>
<a class="queue-link" href="<?= h(page_url('admin.php', ['reference' => $inquiry['reference_code']])) ?>"><?= h($inquiry['reference_code']) ?></a>
<div class="note-muted"><?= h(format_date_label($inquiry['created_at'] ?? '')) ?></div>
</td>
<td>
<strong><?= h($inquiry['contact_name']) ?></strong>
<div class="note-muted"><?= h($inquiry['organization_name']) ?></div>
</td>
<td>
<div class="queue-summary"><?= h($inquiry['interest_area']) ?></div>
<div class="note-muted"><?= h($inquiry['inquiry_type']) ?></div>
</td>
<td><span class="status-badge status-badge--new"><?= h($inquiry['status'] ?? 'New') ?></span></td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
</div>
<?php endif; ?>
</section>
<aside class="surface-card p-3">
<?php if (!$selectedInquiry): ?>
<div class="empty-panel h-100 d-flex flex-column justify-content-center">
<span class="signal-chip signal-chip--gold mb-3">No selection</span>
<h3 class="detail-title">Select an inquiry</h3>
<p class="empty-copy">Pick a queue item to inspect the detailed context for review.</p>
</div>
<?php else: ?>
<div class="d-flex justify-content-between align-items-start gap-3 mb-3">
<div>
<span class="section-kicker">Detail view</span>
<h2 class="section-title mb-1"><?= h($selectedInquiry['organization_name']) ?></h2>
<p class="meta-inline mb-0"><?= h($selectedInquiry['contact_name']) ?> · <?= h($selectedInquiry['email']) ?></p>
</div>
<span class="status-badge status-badge--new"><?= h($selectedInquiry['status'] ?? 'New') ?></span>
</div>
<div class="copy-inline mb-3">
<span class="signal-chip signal-chip--gold" id="selectedReference"><?= h($selectedInquiry['reference_code']) ?></span>
<button class="btn btn-subtle btn-sm" type="button" data-copy-target="#selectedReference">Copy</button>
</div>
<div class="detail-grid">
<div class="meta-block">
<span class="meta-label">Inquiry type</span>
<div class="detail-title"><?= h($selectedInquiry['inquiry_type']) ?></div>
</div>
<div class="meta-block">
<span class="meta-label">Interest area</span>
<div class="detail-title"><?= h($selectedInquiry['interest_area']) ?></div>
</div>
<div class="detail-meta">
<div class="meta-block">
<span class="meta-label">Preferred date</span>
<strong><?= h(format_date_label($selectedInquiry['target_date'] ?? '')) ?></strong>
</div>
<div class="meta-block">
<span class="meta-label">Scale</span>
<strong><?= h($selectedInquiry['event_scale'] ?? 'To be discussed') ?></strong>
</div>
<div class="meta-block">
<span class="meta-label">Location</span>
<strong><?= h($selectedInquiry['preferred_location'] ?? 'To be discussed') ?></strong>
</div>
<div class="meta-block">
<span class="meta-label">Phone / WhatsApp</span>
<strong><?= h($selectedInquiry['phone'] ?: 'Not provided') ?></strong>
</div>
</div>
<div class="meta-block">
<span class="meta-label">Brief summary</span>
<p class="detail-copy mb-0"><?= nl2br(h($selectedInquiry['notes'])) ?></p>
</div>
</div>
<?php endif; ?>
</aside>
</div>
</div>
</section>
<?php require __DIR__ . '/includes/footer.php'; ?>