mirror of
https://gerrit.wikimedia.org/r/mediawiki/skins/MinervaNeue
synced 2024-11-17 19:21:39 +00:00
7f47dff5e5
For all mainMenu icons pull from OOUI icon packs. We make the necessary changes to Definitions.php, ToolbarBuilder and LogoutMenuEntry to ensure to update icon glyph names. There are caching implications for icons that show to anonymous users - these have been fixed for grade A browsers running JS by appending the new class to impacted elements. Grade C browsers being served cached HTML will not benefit from this emporary fix as available solutions are costly. As a result these users will not see icons until the cache expires (maximum of 4 weeks but likely 1 week) or is flushed via action=purge. This is acceptable given the amount of impacted users and the fact that icons are not essential for using the main menu. Note: The communityportal.svg icon while in the resources folder was not referenced anywhere in the codebase so its removal is safe. Please note the same icon in skins.minerva.mainMenu.advanced.icons which is used for the community portal menu item. Bug: T244444 Change-Id: I0f929f2f3b11362e02f0d02f57b90b34b5c93d24
41 lines
1.5 KiB
PHP
41 lines
1.5 KiB
PHP
<?php
|
|
/**
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License along
|
|
* with this program; if not, write to the Free Software Foundation, Inc.,
|
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
*/
|
|
|
|
namespace MediaWiki\Minerva\Menu\Entries;
|
|
|
|
use MessageLocalizer;
|
|
use SpecialPage;
|
|
|
|
final class LogOutMenuEntry extends SingleMenuEntry {
|
|
/**
|
|
* @param MessageLocalizer $messageLocalizer
|
|
* @param array $authLinksQuery
|
|
* @param string $iconType 'before' or 'element'.
|
|
* @param string $classes CSS class names.
|
|
*/
|
|
public function __construct(
|
|
MessageLocalizer $messageLocalizer, array $authLinksQuery, $iconType = 'before', $classes = ''
|
|
) {
|
|
$text = $messageLocalizer->msg( 'mobile-frontend-main-menu-logout' )->escaped();
|
|
$url = SpecialPage::getTitleFor( 'Userlogout' )->getLocalURL( $authLinksQuery );
|
|
parent::__construct( 'logout', $text, $url, $classes );
|
|
$this->trackClicks( 'logout' );
|
|
$this->setIcon( 'logOut', $iconType );
|
|
}
|
|
|
|
}
|