Skip to content

Commit ef854f1

Browse files
committedMar 5, 2016
Fixes the bug mentioned in nbdd0121/MW-FlowThread#11
1 parent bca7eb9 commit ef854f1

File tree

2 files changed

+23
-10
lines changed

2 files changed

+23
-10
lines changed
 

‎Hooks.php

+21-9
Original file line numberDiff line numberDiff line change
@@ -17,19 +17,31 @@ public static function onGetPreferences(\User $user, &$preferences) {
1717
return true;
1818
}
1919

20-
public static function onSkinBuildSidebar(\Skin $skin, &$bar) {
21-
$relevUser = $skin->getRelevantUser();
22-
if ($relevUser) {
23-
$bar['sidebar-section-extension'][] =
24-
array(
20+
public static function onBaseTemplateToolbox(\BaseTemplate &$baseTemplate, array &$toolbox) {
21+
if (isset($baseTemplate->data['nav_urls']['viewavatar'])
22+
&& $baseTemplate->data['nav_urls']['viewavatar']) {
23+
$toolbox['viewavatar'] = $baseTemplate->data['nav_urls']['viewavatar'];
24+
$toolbox['viewavatar']['id'] = 't-viewavatar';
25+
}
26+
}
27+
28+
public static function onSkinTemplateOutputPageBeforeExec(&$skinTemplate, &$tpl) {
29+
30+
$user = $skinTemplate->getRelevantUser();
31+
32+
if ($user) {
33+
$nav_urls = $tpl->get('nav_urls');
34+
35+
$nav_urls['viewavatar'] = [
2536
'text' => wfMsg('sidebar-viewavatar'),
2637
'href' => \SpecialPage::getTitleFor('ViewAvatar')->getLocalURL(array(
27-
'user' => $relevUser->getName(),
38+
'user' => $user->getName(),
2839
)),
29-
'id' => 'n-viewavatar',
30-
'active' => '',
31-
);
40+
];
41+
42+
$tpl->set('nav_urls', $nav_urls);
3243
}
44+
3345
return true;
3446
}
3547
}

‎extension.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@
1616
},
1717
"Hooks": {
1818
"GetPreferences": "Avatar\\Hooks::onGetPreferences",
19-
"SkinBuildSidebar": "Avatar\\Hooks::onSkinBuildSidebar"
19+
"BaseTemplateToolbox": "Avatar\\Hooks::onBaseTemplateToolbox",
20+
"SkinTemplateOutputPageBeforeExec": "Avatar\\Hooks::onSkinTemplateOutputPageBeforeExec"
2021
},
2122
"ResourceModules": {
2223
"ext.avatar.upload": {

0 commit comments

Comments
 (0)
Please sign in to comment.