diff --git a/app/config/routes.ini b/app/config/routes.ini index 0b250d4..992c0e0 100644 --- a/app/config/routes.ini +++ b/app/config/routes.ini @@ -46,6 +46,9 @@ POST /tag/create=TagController->create ; parsedown preview POST /parsedown/preview=ParsedownPreview->view +; toggle-theme +POST /toggle-theme = ThemeController->toggle + ; dashboard GET /dashboard=DashboardController->index diff --git a/app/controllers/ThemeController.php b/app/controllers/ThemeController.php new file mode 100644 index 0000000..81beeb8 --- /dev/null +++ b/app/controllers/ThemeController.php @@ -0,0 +1,13 @@ +get('SESSION.theme') ?: 'light'; + $new_theme = ($current === 'light') ? 'dark' : 'light'; + $f3->set('SESSION.theme', $new_theme); + + $f3->reroute($f3->get('HEADERS.Referer') ?: '/'); + } +} \ No newline at end of file diff --git a/ui/templates/layout.html b/ui/templates/layout.html index 65d6ccf..0a06759 100644 --- a/ui/templates/layout.html +++ b/ui/templates/layout.html @@ -1,5 +1,5 @@ - +
@@ -52,6 +52,13 @@