- Implemented the full order lifecycle, secure customer tracker, automatic acceptance emails, configurable status templates, and guest/account CRM management.
Key areas: [OrderStatusService.php](/Users/tyemeclifford/Documents/GH/fatbottomgrille/app/Services/OrderStatusService.php), [AdminController.php](/Users/tyemeclifford/Documents/GH/fatbottomgrille/app/Controllers/AdminController.php), and [Database.php](/Users/tyemeclifford/Documents/GH/fatbottomgrille/app/Core/Database.php). SQLite migration applied successfully. PHP/JS syntax, integration workflows, rendered pages, database integrity, and tracker authorization all passed. Invalid tracker tokens correctly return 403.
This commit is contained in:
+19
-1
@@ -1,4 +1,23 @@
|
||||
(() => {
|
||||
const savedTheme = window.localStorage.getItem("fatbottom-theme");
|
||||
const preferredTheme = window.matchMedia?.("(prefers-color-scheme: light)").matches ? "light" : "dark";
|
||||
document.documentElement.dataset.theme = savedTheme || preferredTheme;
|
||||
|
||||
const syncThemeButtons = () => {
|
||||
document.querySelectorAll("[data-theme-toggle]").forEach((button) => {
|
||||
button.textContent = document.documentElement.dataset.theme === "light" ? "Dark Mode" : "Light Mode";
|
||||
});
|
||||
};
|
||||
syncThemeButtons();
|
||||
document.querySelectorAll("[data-theme-toggle]").forEach((button) => {
|
||||
button.addEventListener("click", () => {
|
||||
const next = document.documentElement.dataset.theme === "light" ? "dark" : "light";
|
||||
document.documentElement.dataset.theme = next;
|
||||
window.localStorage.setItem("fatbottom-theme", next);
|
||||
syncThemeButtons();
|
||||
});
|
||||
});
|
||||
|
||||
const navToggle = document.querySelector(".nav-toggle");
|
||||
const nav = document.querySelector(".site-nav");
|
||||
if (navToggle && nav) {
|
||||
@@ -82,4 +101,3 @@
|
||||
|
||||
initializeSquare();
|
||||
})();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user