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' ) ) ) {
