Joomla показывает системное сообщение после выхода из системы

Я создал пункт меню для выхода из системы, используя стандартный пункт меню пользователя joomla под названием "Выход". В пункте меню он показывает мне эту ссылку:

index.php? option = com_users&view = login &layout = logout &task = user.menulogout

(перенаправление выхода настроено на ссылку на пункт меню в моем домене)

в

компоненты / com_users / контроллеры / user.php

Я нашел это:

public function menulogout()
{
    // Get the ItemID of the page to redirect after logout
    $app    = JFactory::getApplication();
    $itemid = $app->getMenu()->getActive()->params->get('logout');

    // Get the language of the page when multilang is on
    if (JLanguageMultilang::isEnabled())
    {
        if ($itemid)
        {
            $db = JFactory::getDbo();
            $query = $db->getQuery(true)
                ->select('language')
                ->from($db->quoteName('#__menu'))
                ->where('client_id = 0')
                ->where('id =' . $itemid);

            $db->setQuery($query);

            try
            {
                $language = $db->loadResult();
            }
            catch (RuntimeException $e)
            {
                return;
            }

            if ($language !== '*')
            {
                $lang = '&lang=' . $language;
            }
            else
            {
                $lang = '';
            }

            // URL to redirect after logout
            $url = 'index.php?Itemid=' . $itemid . $lang;
        }
        else
        {
            // Logout is set to default. Get the home page ItemID
            $lang_code = $app->input->cookie->getString(JApplicationHelper::getHash('language'));
            $item      = $app->getMenu()->getDefault($lang_code);
            $itemid    = $item->id;

            // Redirect to Home page after logout
            $url = 'index.php?Itemid=' . $itemid;
        }
    }
    else
    {
        // URL to redirect after logout, default page if no ItemID is set
        $url = $itemid ? 'index.php?Itemid=' . $itemid : JUri::root();
    }

    // Logout and redirect
    $this->setRedirect('index.php?option=com_users&task=user.logout&' . JSession::getFormToken() . '=1&return=' . base64_encode($url));

}

теперь я попытался разместить найденный мной код сообщения на https://docs.joomla.org/Display_error_messages_and_notices/de

JFactory::getApplication()->enqueueMessage('Logout successful', 'message');

почти везде в этом коде menulogout(). Но сообщение никогда не отображается, когда я выхожу из системы.

Есть идеи?

0 ответов

Другие вопросы по тегам