From 5c3455624685fc40afb1da0ce4c8d54bc5d076c6 Mon Sep 17 00:00:00 2001 From: Andy Miller Date: Mon, 20 Mar 2017 10:19:37 -0600 Subject: [PATCH] Fix for page-level debugger override changing the option site-wide --- CHANGELOG.md | 1 + system/src/Grav/Common/Page/Page.php | 19 ++++++++++++++----- .../Common/Service/PageServiceProvider.php | 5 +++++ 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e345ca4f9..b53fb1bd7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ 1. [](#bugfix) * Simplified modular/twig processing logic and fixed an issue with system process config [#1351](https://github.com/getgrav/grav/issues/1351) + * Fix for page-level debugger override changing the option site-wide # v1.2.0-rc.2 ## 03/17/2017 diff --git a/system/src/Grav/Common/Page/Page.php b/system/src/Grav/Common/Page/Page.php index d6637f753..fdcfe1f36 100644 --- a/system/src/Grav/Common/Page/Page.php +++ b/system/src/Grav/Common/Page/Page.php @@ -146,11 +146,6 @@ class Page $this->extension($extension); } - // some debugger logic - if (isset($this->debugger) && $this->debugger == false) { - Grav::instance()['debugger']->enabled(false); - } - // extract page language from page extension $language = trim(basename($this->extension(), 'md'), '.') ?: null; $this->language($language); @@ -1383,6 +1378,20 @@ class Page return $this->process; } + /** + * Returns the state of the debugger override etting for this page + * + * @return mixed + */ + public function debugger() + { + if (isset($this->debugger) && $this->debugger == false) { + return false; + } else { + return true; + } + } + /** * Function to merge page metadata tags and build an array of Metadata objects * that can then be rendered in the page. diff --git a/system/src/Grav/Common/Service/PageServiceProvider.php b/system/src/Grav/Common/Service/PageServiceProvider.php index 0db18a298..c57c8d1e0 100644 --- a/system/src/Grav/Common/Service/PageServiceProvider.php +++ b/system/src/Grav/Common/Service/PageServiceProvider.php @@ -34,6 +34,11 @@ class PageServiceProvider implements ServiceProviderInterface $page = $pages->dispatch($path); + // some debugger override logic + if ($page->debugger() == false) { + Grav::instance()['debugger']->enabled(false); + } + // Redirection tests if ($page) { /** @var Language $language */