Add theme presets, gradient backgrounds, and macOS-style window chrome

Replaces the old light/dark toggle with 10 fixed color themes (plus
Black & Grey and White) that drive a coordinated gradient palette across
the whole admin UI, a Google Fonts picker, and a native-page dark-mode
stylesheet that now covers modals and plugin/theme card grids. Fixes
several background/gradient seams where the sidebar, toolbar, and content
frame were each painting their own independent copy of the page gradient
instead of sharing one continuous plane.

Also adds a macOS-style traffic-light title bar to every page (close,
minimize, maximize) and a persistent bottom taskbar so a minimized page
can be restored from anywhere, plus a Plugins management page.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
This commit is contained in:
nixpanel
2026-07-03 11:49:15 -05:00
co-authored by Claude Sonnet 5
parent db07e21f9e
commit 4a547d2c50
26 changed files with 1816 additions and 223 deletions
+5 -3
View File
@@ -24,6 +24,7 @@ class SubApps
"aurora-admin-roles" => ["title" => "Role Editor", "entry" => "role-editor"],
"aurora-admin-activity-log" => ["title" => "Activity Log", "entry" => "activity-log"],
"aurora-admin-database" => ["title" => "Database Explorer", "entry" => "database-explorer"],
"aurora-admin-plugins" => ["title" => "Installed Plugins", "entry" => "plugins"],
];
private static $hook_suffixes = [];
@@ -38,11 +39,12 @@ class SubApps
public static function register_menus()
{
foreach (self::PAGES as $slug => $page) {
$parent = $slug === "aurora-admin-plugins" ? "plugins.php" : "aurora-admin";
$hook = add_submenu_page(
"aurora-admin",
$parent,
__($page["title"], "aurora-admin"),
__($page["title"], "aurora-admin"),
"manage_options",
$slug === "aurora-admin-plugins" ? "activate_plugins" : "manage_options",
$slug,
[self::class, "render"]
);
@@ -53,7 +55,7 @@ class SubApps
public static function hide_from_native_submenu()
{
foreach (array_keys(self::PAGES) as $slug) {
remove_submenu_page("aurora-admin", $slug);
remove_submenu_page($slug === "aurora-admin-plugins" ? "plugins.php" : "aurora-admin", $slug);
}
}