/
githubmirror
/
joomla-cms
Обзор
Документация
Войти
/
githubmirror
/
joomla-cms
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
5.4-dev
components/com_users/src/View/Remind/HtmlView.php
127 строк
3 KB
Christian Heel
[5.4] Fix deprecated direct property access of model state (#45704)
11 авг 2025, 13:10
Не верифицирован
11 авг 2025, 13:10
595008c
Код
Авторство
О чём код?
<?php /** * @package Joomla.Site * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Site\View\Remind; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\Component\Users\Site\Model\RemindModel; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Remind view class for Users. * * @since 1.5 */ class HtmlView extends BaseHtmlView { /** * The Form object * * @var \Joomla\CMS\Form\Form */ protected $form; /** * The page parameters * * @var \Joomla\Registry\Registry|null */ protected $params; /** * The model state * * @var \Joomla\Registry\Registry */ protected $state; /** * The page class suffix * * @var string * @since 4.0.0 */ protected $pageclass_sfx = ''; /** * Method to display the view. * * @param string $tpl The template file to include * * @return void * * @since 1.5 * @throws \Exception */ public function display($tpl = null) { /** @var RemindModel $model */ $model = $this->getModel(); $this->form = $model->getForm(); $this->state = $model->getState(); $this->params = $this->state->get('params'); // Check for errors. if (\count($errors = $model->getErrors())) { throw new GenericDataException(implode("\n", $errors), 500); } // Check for layout override $active = Factory::getApplication()->getMenu()->getActive(); if (isset($active->query['layout'])) { $this->setLayout($active->query['layout']); } // Escape strings for HTML output $this->pageclass_sfx = htmlspecialchars($this->params->get('pageclass_sfx', ''), ENT_COMPAT, 'UTF-8'); $this->prepareDocument(); parent::display($tpl); } /** * Prepares the document. * * @return void * * @since 1.6 * @throws \Exception */ protected function prepareDocument() { // Because the application sets a default page title, // we need to get it from the menu item itself $menu = Factory::getApplication()->getMenu()->getActive(); if ($menu) { $this->params->def('page_heading', $this->params->get('page_title', $menu->title)); } else { $this->params->def('page_heading', Text::_('COM_USERS_REMIND')); } $this->setDocumentTitle($this->params->get('page_title', '')); if ($this->params->get('menu-meta_description')) { $this->getDocument()->setDescription($this->params->get('menu-meta_description')); } if ($this->params->get('robots')) { $this->getDocument()->setMetaData('robots', $this->params->get('robots')); } } }