mirror of
https://gerrit.wikimedia.org/r/mediawiki/skins/MinervaNeue
synced 2024-11-15 18:29:50 +00:00
b899286650
The Growth extension would like to override the the profile link in the main menu. We can replace the MenuEntry from group, but modifications of each component shouldn't be allowed. That approach is too much error prone. Furthermore it won't allow us to change how the Login/Logout link works. The Menu/Group accepts IMenuEntry objects, instead of building complicated Login/Logout menu entry, let's encapsulate all that logic into small, well-contained AuthMenuEntry object. Now, as we have the AuthMenuEntry, we can add an `overrideProfileURL' method to allow the profile url modifications. That approach will allow modify profile links, and "how to modify links" logic in one place. Changes: - extracted Definitions::insertLogInOutMenuItem() body into new AuthMenuEntry class - renamed some variables like $logoutUrl for better readability - introduced `AuthMenuEntry::overrideProfileUrl()` method that allows modification of the Profile url, label and tracking code. Bug: T222834 Change-Id: Ib7356acbd3373c7a4b591c9c133d7d02a55239b0 |
||
---|---|---|
.. | ||
menu | ||
skins | ||
MinervaHooks.php | ||
MinervaUI.php | ||
ResourceLoaderLessVarFileModule.php | ||
ServiceWiring.php | ||
SkinOptions.php |