1
0
mirror of https://github.com/processwire/processwire.git synced 2025-08-14 02:34:24 +02:00

Add getPage() method back into ProcessPageView

This commit is contained in:
Ryan Cramer
2021-12-24 11:39:34 -05:00
parent 4344df336b
commit 16f33704fa
2 changed files with 19 additions and 8 deletions

View File

@@ -725,25 +725,25 @@ class LanguageSupport extends WireData implements Module, ConfigurableModule {
$language = $event->arguments(0); $language = $event->arguments(0);
$field = $event->arguments(1); $field = $event->arguments(1);
$value = $event->arguments(2); $value = $event->arguments(2);
$languages = $this->wire()->languages;
$event->return = $page; $event->return = $page;
if(!is_object($language)) { if(!is_object($language)) {
if(ctype_digit("$language")) $language = (int) $language; if(ctype_digit("$language")) $language = (int) $language;
$language = $this->wire('languages')->get($language); $language = $languages ? $languages->get($language) : null;
} }
if(!$language instanceof Language) throw new WireException('Unknown language set to Page::setLanguageValue'); if(!$language instanceof Language) throw new WireException('Unknown language set to Page::setLanguageValue');
if($field == 'name') { if($field === 'name' || $field === 'status') {
// set page name // set page name or status
$languages = $this->wire()->languages;
if($languages && !$languages->hasPageNames()) { if($languages && !$languages->hasPageNames()) {
throw new WireException("Please install LanguageSupportPageNames module before attempting to set multi-language names/paths/URLs."); throw new WireException("Please install LanguageSupportPageNames module before attempting to set multi-language names/paths/status/URLs.");
} }
if($language->isDefault()) { if($language->isDefault()) {
$page->set("name", $value); $page->set($field, $value);
} else { } else {
$page->set("name$language->id", $value); $page->set("$field$language->id", $value);
} }
} else { } else {

View File

@@ -107,7 +107,7 @@ class ProcessPageView extends Process {
$pages->setOutputFormatting(true); $pages->setOutputFormatting(true);
if($timerKey) Debug::timer($timerKey); if($timerKey) Debug::timer($timerKey);
$page = $request->getPage(); $page = $this->getPage();
if($timerKey) Debug::saveTimer($timerKey, ($page && $page->id ? $page->path : '')); if($timerKey) Debug::saveTimer($timerKey, ($page && $page->id ? $page->path : ''));
if($page && $page->id) { if($page && $page->id) {
@@ -117,6 +117,17 @@ class ProcessPageView extends Process {
} }
} }
/**
* Get requested page
*
* @return NullPage|Page
* @throws WireException
*
*/
public function getPage() {
return $this->wire()->pages->request()->getPage();
}
/** /**
* Render Page * Render Page
* *