Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F4750
addtabs.diff
Public
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Authored By
•
bzimport
Nov 21 2014, 10:06 PM
2014-11-21 22:06:33 (UTC+0)
Size
2 KB
Referenced Files
None
Subscribers
None
addtabs.diff
View Options
Index: includes/SkinTemplate.php
===================================================================
--- includes/SkinTemplate.php (revision 57833)
+++ includes/SkinTemplate.php (working copy)
@@ -694,7 +694,7 @@
* @private
*/
function buildContentActionUrls() {
- global $wgContLang, $wgLang, $wgOut, $wgUser, $wgRequest, $wgArticle;
+ global $wgContLang, $wgLang, $wgOut, $wgUser, $wgRequest, $wgArticle. $wgAdditionalNamespaceDefinitions;
wfProfileIn( __METHOD__ );
@@ -707,6 +707,13 @@
if( $this->iscontent ) {
$subjpage = $this->mTitle->getSubjectPage();
+
+ $extra_selected = true; // default: true, if they have extra, we will set it
+ if( isset($wgAdditionalNamespaceDefinitions[$ns]) ) {
+ $subjpage = Title::makeTitle($wgAdditionalNamespaceDefinitions[$ns][0], $this->mTitle->getText());
+ $extra_selected = ($ns==$wgAdditionalNamespaceDefinitions[$ns][0]);
+ }
+
$talkpage = $this->mTitle->getTalkPage();
$nskey = $this->mTitle->getNamespaceKey();
@@ -716,6 +723,12 @@
!$this->mTitle->isTalkPage() && !$prevent_active_tabs,
'', true
);
+
+ $extra_selected = true; // same use as for the main namespace.
+ if( isset($wgAdditionalNamespaceDefinitions[$ns]) ) {
+ $talkpage = Title::makeTitle($wgAdditionalNamespaceDefinitions[$ns]['talk'], $this->mTitle->getText());
+ $extra_selected = ($ns==$wgAdditionalNamespaceDefinitions[$ns]['talk']);
+ }
$content_actions['talk'] = $this->tabAction(
$talkpage,
@@ -724,6 +737,21 @@
'',
true
);
+
+ //This is the loop for all additional tabs.
+ if( isset($wgAdditionalNamespaceDefinitions[$ns]) ) {
+ $parent = $wgAdditionalNamespaceDefinitions[$ns][0];
+ foreach($wgAdditionalNamespaceDefinitions[$ns] as $type => $subns) {
+ if($type!==0 && $type!='talk') { //This are here already
+ $content_actions[$type] = $this->tabAction(
+ Title::makeTitle($subns, $this->mTitle->getText()),
+ $parent.'-'.$type,
+ ($ns==$subns) && !$prevent_active_tabs,
+ '',
+ true);
+ }
+ }
+ }
wfProfileIn( __METHOD__ . '-edit' );
if ( $this->mTitle->quickUserCan( 'edit' ) && ( $this->mTitle->exists() || $this->mTitle->quickUserCan( 'create' ) ) ) {
File Metadata
Details
Attached
Mime Type
text/x-diff
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
4315
Default Alt Text
addtabs.diff (2 KB)
Attached To
Mode
T15228: Adding custom inter-namespace tabs
Attached
Detach File
Event Timeline
Log In to Comment