- Implemented the dark photo-based theme.

Moved all images to public/assets/images.
Added darkened photography across heroes, specials, menu cards, 
authentication, story, checkout, and footer.
Replaced placeholder branding with the supplied logo.
Preserved configurable menu item images.
Updated desktop and mobile styling for readable cream/gold text.
This commit is contained in:
Ty Clifford
2026-06-10 16:11:29 -04:00
parent 16235369cb
commit 34ca1be9b7
35 changed files with 554 additions and 134 deletions
+3 -3
View File
@@ -24,7 +24,7 @@
<?php if (password_verify('ChangeMe123!', (string) $currentUser['password_hash'])): ?>
<div class="notice admin-security-notice">
<strong>Security reminder:</strong> the initial administrator password is still active.
Change it from <a href="/account">My Account</a> before deployment.
Change it from <a href="<?= e(url('/account')) ?>">My Account</a> before deployment.
</div>
<?php endif; ?>
@@ -35,7 +35,7 @@
<span class="eyebrow">Live queue</span>
<h2>Recent Orders</h2>
</div>
<a class="button button-small" href="/admin/orders">View All Orders</a>
<a class="button button-small" href="<?= e(url('/admin/orders')) ?>">View All Orders</a>
</div>
<div class="table-wrap">
<table>
@@ -46,7 +46,7 @@
<?php endif; ?>
<?php foreach ($recentOrders as $order): ?>
<tr>
<td><a href="/admin/order?id=<?= (int) $order['id'] ?>"><?= e($order['order_number']) ?></a></td>
<td><a href="<?= e(url('/admin/order')) ?>?id=<?= (int) $order['id'] ?>"><?= e($order['order_number']) ?></a></td>
<td><?= e($order['customer_name']) ?><small><?= e($order['customer_phone']) ?></small></td>
<td><?= e(store_datetime((string) $order['placed_at'], 'g:i A')) ?></td>
<td><span class="status-pill status-<?= e($order['status']) ?>"><?= e(ucfirst((string) $order['status'])) ?></span></td>
+5 -6
View File
@@ -1,6 +1,6 @@
<div class="admin-page-actions">
<p>Categories and items appear on the storefront as soon as they are active.</p>
<a class="button button-ghost" href="/admin/export/menu.pdf">Download Styled PDF</a>
<a class="button button-ghost" href="<?= e(url('/admin/export/menu.pdf')) ?>">Download Styled PDF</a>
</div>
<div class="admin-stack">
@@ -18,7 +18,7 @@
<span class="status-dot <?= $category['active'] ? 'is-on' : '' ?>"><?= $category['active'] ? 'Active' : 'Hidden' ?></span>
<span class="edit-label">Edit</span>
</summary>
<form class="inline-editor form-stack" action="/admin/category/save" method="post">
<form class="inline-editor form-stack" action="<?= e(url('/admin/category/save')) ?>" method="post">
<?= csrf_field() ?>
<input type="hidden" name="id" value="<?= (int) $category['id'] ?>">
<div class="form-grid">
@@ -35,7 +35,7 @@
</div>
<details class="new-record">
<summary>+ Add Category</summary>
<form class="inline-editor form-stack" action="/admin/category/save" method="post">
<form class="inline-editor form-stack" action="<?= e(url('/admin/category/save')) ?>" method="post">
<?= csrf_field() ?>
<div class="form-grid">
<label>Name<input type="text" name="name" required></label>
@@ -65,7 +65,7 @@
<span class="status-dot <?= $item['active'] ? 'is-on' : '' ?>"><?= $item['active'] ? 'Active' : 'Hidden' ?></span>
<span class="edit-label">Edit</span>
</summary>
<form class="inline-editor form-stack" action="/admin/item/save" method="post">
<form class="inline-editor form-stack" action="<?= e(url('/admin/item/save')) ?>" method="post">
<?= csrf_field() ?>
<input type="hidden" name="id" value="<?= (int) $item['id'] ?>">
<div class="form-grid form-grid-three">
@@ -96,7 +96,7 @@
</div>
<details class="new-record">
<summary>+ Add Menu Item</summary>
<form class="inline-editor form-stack" action="/admin/item/save" method="post">
<form class="inline-editor form-stack" action="<?= e(url('/admin/item/save')) ?>" method="post">
<?= csrf_field() ?>
<div class="form-grid form-grid-three">
<label>Name<input type="text" name="name" required></label>
@@ -122,4 +122,3 @@
</details>
</section>
</div>
+1 -1
View File
@@ -5,7 +5,7 @@
<div class="admin-detail-grid newsletter-grid">
<section class="admin-panel">
<div class="admin-panel-heading"><div><span class="eyebrow">Send an update</span><h2>New Newsletter</h2></div></div>
<form class="form-stack" action="/admin/newsletters/send" method="post">
<form class="form-stack" action="<?= e(url('/admin/newsletters/send')) ?>" method="post">
<?= csrf_field() ?>
<label>Subject line<input type="text" name="subject" maxlength="140" required placeholder="This weekend at Fat Bottom Grille"></label>
<label>Message<textarea name="content" rows="12" required placeholder="Share a new special, schedule update, or note from the kitchen..."></textarea></label>
+3 -3
View File
@@ -1,6 +1,6 @@
<div class="detail-heading">
<div>
<a class="back-link" href="/admin/orders">&larr; Back to orders</a>
<a class="back-link" href="<?= e(url('/admin/orders')) ?>">&larr; Back to orders</a>
<div class="detail-title-row">
<h2><?= e($order['order_number']) ?></h2>
<span class="status-pill status-<?= e($order['status']) ?>"><?= e(ucfirst((string) $order['status'])) ?></span>
@@ -51,7 +51,7 @@
<aside>
<section class="admin-panel">
<div class="admin-panel-heading"><h2>Update Order</h2></div>
<form class="form-stack" action="/admin/order" method="post">
<form class="form-stack" action="<?= e(url('/admin/order')) ?>" method="post">
<?= csrf_field() ?>
<input type="hidden" name="order_id" value="<?= (int) $order['id'] ?>">
<label>Status
@@ -78,7 +78,7 @@
</section>
<section class="admin-panel">
<div class="admin-panel-heading"><h2>Issue Refund</h2></div>
<form class="form-stack" action="/admin/order/refund" method="post">
<form class="form-stack" action="<?= e(url('/admin/order/refund')) ?>" method="post">
<?= csrf_field() ?>
<input type="hidden" name="order_id" value="<?= (int) $order['id'] ?>">
<label>Amount
+3 -3
View File
@@ -1,6 +1,6 @@
<section class="admin-panel">
<div class="admin-panel-heading admin-toolbar">
<form class="admin-filters" action="/admin/orders" method="get">
<form class="admin-filters" action="<?= e(url('/admin/orders')) ?>" method="get">
<input type="search" name="q" value="<?= e($query) ?>" placeholder="Order, customer, or email">
<select name="status">
<option value="">All statuses</option>
@@ -10,7 +10,7 @@
</select>
<button class="button button-small" type="submit">Filter</button>
</form>
<a class="button button-small button-ghost" href="/admin/export/orders.csv">Export CSV</a>
<a class="button button-small button-ghost" href="<?= e(url('/admin/export/orders.csv')) ?>">Export CSV</a>
</div>
<div class="table-wrap">
<table>
@@ -30,7 +30,7 @@
<?php if ((int) $order['refunded_cents'] > 0): ?><small><?= money($order['refunded_cents']) ?> returned</small><?php endif; ?>
</td>
<td><?= money($order['total_cents']) ?></td>
<td><a class="button button-small button-ghost" href="/admin/order?id=<?= (int) $order['id'] ?>">Open</a></td>
<td><a class="button button-small button-ghost" href="<?= e(url('/admin/order')) ?>?id=<?= (int) $order['id'] ?>">Open</a></td>
</tr>
<?php endforeach; ?>
</tbody>
+4 -4
View File
@@ -1,4 +1,4 @@
<form class="admin-stack" action="/admin/settings" method="post">
<form class="admin-stack" action="<?= e(url('/admin/settings')) ?>" method="post">
<?= csrf_field() ?>
<section class="admin-panel">
<div class="admin-panel-heading"><div><span class="eyebrow">Public identity</span><h2>Business Information</h2></div></div>
@@ -70,7 +70,7 @@
<span class="status-dot <?= $tax['active'] ? 'is-on' : '' ?>"><?= $tax['active'] ? 'Active' : 'Disabled' ?></span>
<span class="edit-label">Edit</span>
</summary>
<form class="inline-editor form-stack" action="/admin/tax/save" method="post">
<form class="inline-editor form-stack" action="<?= e(url('/admin/tax/save')) ?>" method="post">
<?= csrf_field() ?><input type="hidden" name="id" value="<?= (int) $tax['id'] ?>">
<div class="form-grid">
<label>Name<input type="text" name="name" value="<?= e($tax['name']) ?>" required></label>
@@ -85,7 +85,7 @@
</div>
<details class="new-record">
<summary>+ Add Tax Rate</summary>
<form class="inline-editor form-stack" action="/admin/tax/save" method="post">
<form class="inline-editor form-stack" action="<?= e(url('/admin/tax/save')) ?>" method="post">
<?= csrf_field() ?>
<div class="form-grid">
<label>Name<input type="text" name="name" required></label>
@@ -101,7 +101,7 @@
<section class="admin-panel settings-followup">
<div class="admin-panel-heading"><div><span class="eyebrow">Optional database mode</span><h2>MySQL / MariaDB Migration</h2></div><span class="role-badge"><?= e(strtoupper((string) $config->get('database.driver', 'sqlite'))) ?> active</span></div>
<p class="muted">SQLite remains the default and requires no database server. This tool copies every application table and row into MySQL or MariaDB; switching drivers is optional.</p>
<form class="form-stack" action="/admin/migrate/mysql" method="post">
<form class="form-stack" action="<?= e(url('/admin/migrate/mysql')) ?>" method="post">
<?= csrf_field() ?>
<div class="form-grid form-grid-three">
<label>Host<input type="text" value="<?= e($config->get('database.mysql_host')) ?>" disabled></label>
+2 -2
View File
@@ -16,7 +16,7 @@
<p><?= e($special['description']) ?></p>
<div><strong><?= $special['price_cents'] !== null ? money($special['price_cents']) : 'No override' ?></strong><span class="status-dot <?= $special['active'] ? 'is-on' : '' ?>"><?= $special['active'] ? 'Active' : 'Hidden' ?></span></div>
</summary>
<form class="inline-editor form-stack" action="/admin/special/save" method="post">
<form class="inline-editor form-stack" action="<?= e(url('/admin/special/save')) ?>" method="post">
<?= csrf_field() ?>
<input type="hidden" name="id" value="<?= (int) $special['id'] ?>">
<div class="form-grid">
@@ -42,7 +42,7 @@
</div>
<details class="new-record">
<summary>+ Add Homepage Special</summary>
<form class="inline-editor form-stack" action="/admin/special/save" method="post">
<form class="inline-editor form-stack" action="<?= e(url('/admin/special/save')) ?>" method="post">
<?= csrf_field() ?>
<div class="form-grid">
<label>Title<input type="text" name="title" required></label>
+3 -4
View File
@@ -1,5 +1,5 @@
<div class="admin-page-actions">
<form class="admin-filters" action="/admin/users" method="get">
<form class="admin-filters" action="<?= e(url('/admin/users')) ?>" method="get">
<input type="search" name="q" value="<?= e($query) ?>" placeholder="Search name, email, or phone">
<button class="button button-small" type="submit">Search</button>
</form>
@@ -20,7 +20,7 @@
<span class="status-dot <?= $user['active'] ? 'is-on' : '' ?>"><?= $user['active'] ? 'Active' : 'Disabled' ?></span>
<span class="edit-label">Edit</span>
</summary>
<form class="inline-editor form-stack" action="/admin/user/save" method="post">
<form class="inline-editor form-stack" action="<?= e(url('/admin/user/save')) ?>" method="post">
<?= csrf_field() ?>
<input type="hidden" name="id" value="<?= (int) $user['id'] ?>">
<div class="form-grid">
@@ -43,7 +43,7 @@
</div>
<details class="new-record">
<summary>+ Add Staff Member</summary>
<form class="inline-editor form-stack" action="/admin/user/save" method="post">
<form class="inline-editor form-stack" action="<?= e(url('/admin/user/save')) ?>" method="post">
<?= csrf_field() ?>
<div class="form-grid form-grid-three">
<label>Full name<input type="text" name="full_name" required></label>
@@ -62,4 +62,3 @@
</form>
</details>
</section>