From b18ce642ef66dc6a376a913226ec08a1c999d726 Mon Sep 17 00:00:00 2001 From: Ryan Cramer Date: Wed, 30 Nov 2022 09:42:08 -0500 Subject: [PATCH] Add hookable getPage() method to PageFrontEdit module --- .../Page/PageFrontEdit/PageFrontEdit.module | 24 +++++++++++++++---- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/wire/modules/Page/PageFrontEdit/PageFrontEdit.module b/wire/modules/Page/PageFrontEdit/PageFrontEdit.module index 7d9e0164..7b6a6681 100644 --- a/wire/modules/Page/PageFrontEdit/PageFrontEdit.module +++ b/wire/modules/Page/PageFrontEdit/PageFrontEdit.module @@ -11,8 +11,8 @@ * @property string $editRegionAttr * @property string $editRegionTag * @property bool|int $inlineLimitPage Limit editor to current page only - * * @property array $inlineAllowFieldtypes + * @method Page getPage() Get page being edited (3.0.208+) * */ @@ -22,7 +22,7 @@ class PageFrontEdit extends WireData implements Module { return array( 'title' => 'Front-End Page Editor', 'summary' => 'Enables front-end editing of page fields.', - 'version' => 4, + 'version' => 5, 'author' => 'Ryan Cramer', 'license' => 'MPL 2.0', 'icon' => 'cube', @@ -58,10 +58,10 @@ class PageFrontEdit extends WireData implements Module { /** * Page this front-end editor is for * - * @var Page + * @var Page|null * */ - protected $page; + protected $page = null; /** * Whether or not the editor should be applied for any requested fields @@ -132,7 +132,8 @@ class PageFrontEdit extends WireData implements Module { */ public function ready() { - $page = $this->wire()->page; + $page = $this->getPage(); + if(!$page) $page = $this->wire()->page; // check if we should allow editor for current page if($page->template->name === 'admin') return; @@ -189,6 +190,19 @@ class PageFrontEdit extends WireData implements Module { } } + /** + * Get the page being edited or null if not yet set + * + * #pw-hooker + * + * @return Page|null + * @since 3.0.208 + * + */ + public function ___getPage() { + return $this->page; + } + /** * Set the page being edited *