From cc09a4fee9fe3586d40a8e87aaaae7ffac4f70f9 Mon Sep 17 00:00:00 2001 From: Matias Griese Date: Sun, 30 Sep 2018 12:19:16 +0300 Subject: [PATCH] Do not redirect to `/admin` for login if admin page does not exist --- CHANGELOG.md | 1 + admin.php | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 75ed09d5..6f23bc8d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ 1. [](#improved) * Use `Url:post()` to get the `$_POST` variable (allows common security checks/filtering for the POST data) * Make all form fields to extend field.html.twig + * Do not redirect to `/admin` for login if admin page does not exist # v1.8.9 ## 08/23/2018 diff --git a/admin.php b/admin.php index 7f03a845..c524c7f1 100644 --- a/admin.php +++ b/admin.php @@ -434,7 +434,13 @@ class AdminPlugin extends Plugin throw new \RuntimeException('Page Not Found', 404); } } else { - $this->grav->redirect($this->admin_route); + // Not Found and not logged in: Display login page. + $login_file = $this->grav['locator']->findResource('plugins://admin/pages/admin/login.md'); + $page = new Page(); + $page->init(new \SplFileInfo($login_file)); + $page->slug(basename($this->route)); + unset($this->grav['page']); + $this->grav['page'] = $page; } }