Mwjames has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/60379


Change subject: SMWHooks::addRefreshTab clean-up
......................................................................

SMWHooks::addRefreshTab clean-up

+ Remove addRefreshTab() because hook SkinTemplateTabs was removed in 1.18
+ Remove GLOBALS; use $skinTemplate->getUser()/->msg() instead
+ Add test

Change-Id: Ib82b7332fc4dd60391dec8ad74080298f3b0e05c
---
M SemanticMediaWiki.hooks.php
M includes/Setup.php
M tests/phpunit/includes/HooksTest.php
3 files changed, 43 insertions(+), 35 deletions(-)


  git pull 
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/SemanticMediaWiki 
refs/changes/79/60379/1

diff --git a/SemanticMediaWiki.hooks.php b/SemanticMediaWiki.hooks.php
index 8af0cab..501bc27 100644
--- a/SemanticMediaWiki.hooks.php
+++ b/SemanticMediaWiki.hooks.php
@@ -202,34 +202,11 @@
         * @return boolean
         */
        public static function showBrowseLink( $skintemplate ) {
+
                if ( $skintemplate->data['isarticle'] ) {
                        $browselink = SMWInfolink::newBrowsingLink( wfMessage( 
'smw_browselink' )->text(),
                                                        
$skintemplate->data['titleprefixeddbkey'], false );
                        echo '<li id="t-smwbrowselink">' . 
$browselink->getHTML() . '</li>';
-               }
-               return true;
-       }
-
-       /**
-        * @see https://www.mediawiki.org/wiki/Manual:Hooks/SkinTemplateTabs
-        * This is here for compatibility with MediaWiki 1.17. Once we can 
require 1.18, we can ditch this code :)
-        *
-        * @since 0.1
-        *
-        * @param SkinTemplate $skinTemplate
-        * @param array $contentActions
-        *
-        * @return boolean
-        */
-       public static function addRefreshTab( SkinTemplate $skinTemplate, array 
&$contentActions ) {
-               global $wgUser;
-
-               if ( $wgUser->isAllowed( 'purge' ) ) {
-                       $contentActions['purge'] = array(
-                               'class' => false,
-                               'text' => wfMessage( 'smw_purge' )->text(),
-                               'href' => 
$skinTemplate->getTitle()->getLocalUrl( array( 'action' => 'purge' ) )
-                       );
                }
 
                return true;
@@ -246,10 +223,15 @@
         *
         * @return boolean
         */
-       public static function addStructuredRefreshTab( SkinTemplate 
&$skinTemplate, array &$links ) {
-               $actions = $links['actions'];
-               self::addRefreshTab( $skinTemplate, $actions );
-               $links['actions'] = $actions;
+       public static function onSkinTemplateNavigation( SkinTemplate 
&$skinTemplate, array &$links ) {
+
+               if ( $skinTemplate->getUser()->isAllowed( 'purge' ) ) {
+                       $links['actions']['purge'] = array(
+                               'class' => false,
+                               'text' => $skinTemplate->msg( 'smw_purge' 
)->text(),
+                               'href' => 
$skinTemplate->getTitle()->getLocalUrl( array( 'action' => 'purge' ) )
+                       );
+               }
 
                return true;
        }
@@ -426,11 +408,11 @@
         * @return true
         */
        public static function onResourceLoaderGetConfigVars( &$vars ) {
-               $vars['smw'] = array(
+               $vars['smw-config'] = array(
                        'version' => SMW_VERSION,
-                       'options' => array(
-                               'QMaxLimit' => $GLOBALS['smwgQMaxLimit'],
-                               'QMaxInlineLimit' => 
$GLOBALS['smwgQMaxInlineLimit'],
+                       'settings' => array(
+                               'smwgQMaxLimit' => $GLOBALS['smwgQMaxLimit'],
+                               'smwgQMaxInlineLimit' => 
$GLOBALS['smwgQMaxInlineLimit'],
                        )
                );
 
diff --git a/includes/Setup.php b/includes/Setup.php
index b8fd9e7..d1ba54c 100644
--- a/includes/Setup.php
+++ b/includes/Setup.php
@@ -78,8 +78,8 @@
        $wgHooks['ArticleFromTitle'][] = 'SMWHooks::onArticleFromTitle'; // 
special implementations for property/type articles
        $wgHooks['ParserFirstCallInit'][] = 'SMWHooks::onParserFirstCallInit';
 
-       $wgHooks['SkinTemplateTabs'][] = 'SMWHooks::addRefreshTab'; // basic 
tab addition
-       $wgHooks['SkinTemplateNavigation'][] = 
'SMWHooks::addStructuredRefreshTab'; // structured version for "Vector"-type 
skins
+       // Alter the structured navigation links in SkinTemplates
+       $wgHooks['SkinTemplateNavigation'][] = 
'SMWHooks::onSkinTemplateNavigation';
 
        //UnitTests
        $wgHooks['UnitTestsList'][] = 'SMWHooks::registerUnitTests';
diff --git a/tests/phpunit/includes/HooksTest.php 
b/tests/phpunit/includes/HooksTest.php
index 4943c64..e0ad9df 100644
--- a/tests/phpunit/includes/HooksTest.php
+++ b/tests/phpunit/includes/HooksTest.php
@@ -301,6 +301,33 @@
        }
 
        /**
+        * @test SMWHooks::onSkinTemplateNavigation
+        *
+        * @since 1.9
+        */
+       public function testOnSkinTemplateNavigation() {
+               $skinTemplate = new \SkinTemplate();
+               $skinTemplate->getContext()->setLanguage( \Language::factory( 
'en' ) );
+               $links = array();
+
+               $result = SMWHooks::onSkinTemplateNavigation( $skinTemplate, 
$links );
+               $this->assertTrue( $result );
+       }
+
+
+       /**
+        * @test SMWHooks::onResourceLoaderGetConfigVars
+        *
+        * @since 1.9
+        */
+       public function testOnResourceLoaderGetConfigVars() {
+               $vars = array();
+
+               $result = SMWHooks::onResourceLoaderGetConfigVars( $vars );
+               $this->assertTrue( $result );
+       }
+
+       /**
         * Test SMWHooks::registerUnitTests
         *
         * Files are normally registered manually in registerUnitTests(). This 
test
@@ -355,5 +382,4 @@
                        }
                }
        }
-
 }

-- 
To view, visit https://gerrit.wikimedia.org/r/60379
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib82b7332fc4dd60391dec8ad74080298f3b0e05c
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/SemanticMediaWiki
Gerrit-Branch: master
Gerrit-Owner: Mwjames <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to