MarcoAurelio has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/391554 )

Change subject: [WIP/DNM] Convert BatchUserRights to use extension registration
......................................................................

[WIP/DNM] Convert BatchUserRights to use extension registration

Bug: T174879
Change-Id: I22f6b5e09701f2892ec8a5c6add44978fe5366df
---
A .phpcs.xml
M BatchUserRights.php
M BatchUserRights_body.php
M composer.json
A extension.json
5 files changed, 88 insertions(+), 45 deletions(-)


  git pull 
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/BatchUserRights 
refs/changes/54/391554/1

diff --git a/.phpcs.xml b/.phpcs.xml
new file mode 100644
index 0000000..957fab0
--- /dev/null
+++ b/.phpcs.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0"?>
+<ruleset>
+  <rule ref="./vendor/mediawiki/mediawiki-codesniffer/MediaWiki">
+    <exclude name="MediaWiki.Commenting.FunctionComment.MissingParamComment" />
+    <exclude name="MediaWiki.Files.ClassMatchesFilename.NotMatch" />
+    <exclude 
name="MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment" />
+  </rule>
+  <rule ref="MediaWiki.NamingConventions.ValidGlobalName">
+    <properties>
+      <property name="ignoreList" type="array" value="$wmfRealm" />
+    </properties>
+  </rule>
+  <file>.</file>
+  <arg name="extensions" value="php,php5,inc" />
+  <arg name="encoding" value="UTF-8" />
+</ruleset>
diff --git a/BatchUserRights.php b/BatchUserRights.php
index 2779a92..fa53888 100644
--- a/BatchUserRights.php
+++ b/BatchUserRights.php
@@ -9,30 +9,18 @@
  * @author Sean Colombo
  * @link http://www.mediawiki.org/wiki/Extension:BatchUserRights Documentation
  */
-if ( !defined( 'MEDIAWIKI' ) ) {
-       die();
+
+if ( function_exists( 'wfLoadExtension' ) ) {
+       wfLoadExtension( 'BatchUserRights' );
+       // Keep i18n globals so mergeMessageFileList.php doesn't break
+       $wgMessagesDirs['BatchUserRights'] = __DIR__ . '/i18n';
+       $wgExtensionMessagesFiles['BatchUserRightsAlias'] = __DIR__ . 
'/BatchUserRights.alias.php';
+       wfWarn(
+               'Deprecated PHP entry point used for the BatchUserRights 
extension. ' .
+               'Please use wfLoadExtension instead, ' .
+               'see https://www.mediawiki.org/wiki/Extension_registration for 
more details.'
+       );
+       return;
+} else {
+       die( 'This version of the BatchUserRights extension requires MediaWiki 
1.25+' );
 }
-
-// Extension credits that will show up on Special:Version
-$wgExtensionCredits['specialpage'][] = array(
-       'path' => __FILE__,
-       'name' => 'BatchUserRights',
-       'version' => '1.2.0',
-       'author' => '[http://www.seancolombo.com Sean Colombo]',
-       'descriptionmsg' => 'batchuserrights-desc',
-       'url' => 'https://www.mediawiki.org/wiki/Extension:BatchUserRights',
-);
-
-set_time_limit( 0 );
-// New user right, required to access Special:BatchUserRights
-$wgAvailableRights[] = 'batchuserrights';
-$wgGroupPermissions['bureaucrat']['batchuserrights'] = true;
-
-// User groups which can be added through Special:BatchUserRights
-$wgBatchUserRightsGrantableGroups = array();
-
-// Set up the new special page
-$wgMessagesDirs['BatchUserRights'] = __DIR__ . '/i18n';
-$wgExtensionMessagesFiles['BatchUserRightsAliases'] = __DIR__ . 
'/BatchUserRights.alias.php';
-$wgAutoloadClasses['SpecialBatchUserRights'] = __DIR__ . 
'/BatchUserRights_body.php';
-$wgSpecialPages['BatchUserRights'] = 'SpecialBatchUserRights';
diff --git a/BatchUserRights_body.php b/BatchUserRights_body.php
index ae403e2..08b5efd 100644
--- a/BatchUserRights_body.php
+++ b/BatchUserRights_body.php
@@ -62,7 +62,7 @@
                                $reason = $request->getVal( 'user-reason' );
                                $tok = $request->getVal( 'wpEditToken' );
                                if ( $user->matchEditToken( $tok ) ) {
-                                       $addgroup = array();
+                                       $addgroup = [];
                                        foreach ( 
$wgBatchUserRightsGrantableGroups as $group ) {
                                                // This batch form is only for 
adding user groups, we don't remove any.
                                                if ( $request->getCheck( 
"wpGroup-$group" ) ) {
@@ -88,7 +88,7 @@
                                        // Loop through each target user and 
apply the update.
                                        foreach ( $usernames as $username ) {
                                                $username = trim( $username );
-                                               if( $username !== '' ) {
+                                               if ( $username !== '' ) {
                                                        $out->addHTML( 
$this->msg(
                                                                
'batchuserrights-single-progress-update',
                                                                count( 
$addgroup ),
@@ -132,7 +132,7 @@
 
                // Validate input set...
                $changeable = $this->changeableGroups();
-               $addable = array_merge( $changeable['add'], $this->isself ? 
$changeable['add-self'] : array() );
+               $addable = array_merge( $changeable['add'], $this->isself ? 
$changeable['add-self'] : [] );
 
                $addgroup = array_unique(
                        array_intersect( (array)$addgroup, $addable )
@@ -155,9 +155,9 @@
                wfDebug( 'oldGroups: ' . print_r( $oldGroups, true ) );
                wfDebug( 'newGroups: ' . print_r( $newGroups, true ) );
                if ( $user instanceof User ) {
-                       $removegroup = array();
+                       $removegroup = [];
                        // hmmm
-                       Hooks::run( 'UserRights', array( &$user, $addgroup, 
$removegroup ) );
+                       Hooks::run( 'UserRights', [ &$user, $addgroup, 
$removegroup ] );
                }
 
                if ( $newGroups != $oldGroups ) {
@@ -173,10 +173,10 @@
                $logEntry->setPerformer( $this->getUser() );
                $logEntry->setTarget( $user->getUserPage() );
                $logEntry->setComment( $reason );
-               $logEntry->setParameters( array(
+               $logEntry->setParameters( [
                        '4::oldgroups' => $oldGroups,
                        '5::newgroups' => $newGroups,
-               ) );
+               ] );
                $logid = $logEntry->insert();
                $logEntry->publish( $logid );
        }
@@ -250,13 +250,13 @@
         */
        protected function showEditUserGroupsForm() {
                $this->getOutput()->addHTML(
-                       Xml::openElement( 'form', array( 'method' => 'post', 
'action' => $this->getPageTitle()->getLocalURL(), 'name' => 'editGroup', 'id' 
=> 'mw-userrights-form2' ) ) .
+                       Xml::openElement( 'form', [ 'method' => 'post', 
'action' => $this->getPageTitle()->getLocalURL(), 'name' => 'editGroup', 'id' 
=> 'mw-userrights-form2' ] ) .
                        Html::hidden( 'wpEditToken', 
$this->getUser()->getEditToken() ) .
                        Xml::openElement( 'fieldset' ) .
-                       Xml::element( 'legend', array(), $this->msg( 
'userrights-editusergroup' )->text() ) .
+                       Xml::element( 'legend', [], $this->msg( 
'userrights-editusergroup' )->text() ) .
                        $this->msg( 'batchuserrights-intro' )->parseAsBlock() .
                        Xml::tags( 'p', null, $this->groupCheckboxes() ) .
-                       Xml::openElement( 'table', array( 'border' => '0', 'id' 
=> 'mw-userrights-table-outer' ) ) .
+                       Xml::openElement( 'table', [ 'border' => '0', 'id' => 
'mw-userrights-table-outer' ] ) .
                                '<tr>
                                        <td class="mw-label">' .
                                                Xml::label( $this->msg( 
'batchuserrights-names' )->text(), 'wpUsernames' ) .
@@ -270,13 +270,13 @@
                                                Xml::label( $this->msg( 
'userrights-reason' )->text(), 'wpReason' ) .
                                        '</td>
                                        <td class="mw-input">' .
-                                               Xml::input( 'user-reason', 60, 
false, array( 'id' => 'wpReason', 'maxlength' => 255 ) ) .
+                                               Xml::input( 'user-reason', 60, 
false, [ 'id' => 'wpReason', 'maxlength' => 255 ] ) .
                                        '</td>
                                </tr>
                                <tr>
                                        <td></td>
                                        <td class="mw-submit">' .
-                                               Xml::submitButton( $this->msg( 
'saveusergroups' )->text(), array( 'name' => 'saveusergroups', 'accesskey' => 
's' ) ) .
+                                               Xml::submitButton( $this->msg( 
'saveusergroups' )->text(), [ 'name' => 'saveusergroups', 'accesskey' => 's' ] 
) .
                                        '</td>
                                </tr>' .
                        Xml::closeElement( 'table' ) . "\n" .
@@ -310,17 +310,17 @@
 
                        /* Wikia change begin - @author: Marooned */
                        /* Because of "return all" in changeableGroups() hook 
UserrightsChangeableGroups is not invoked - this hook is to fill this gap */
-                       Hooks::run( 'UserRights::groupCheckboxes', array( 
$group, &$disabled, &$irreversible ) );
+                       Hooks::run( 'UserRights::groupCheckboxes', [ $group, 
&$disabled, &$irreversible ] );
                        /* Wikia change end */
 
-                       $attr = $disabled ? array( 'disabled' => 'disabled' ) : 
array();
+                       $attr = $disabled ? [ 'disabled' => 'disabled' ] : [];
                        $attr['title'] = $group;
                        $text = $irreversible
                                ? $this->msg( 'userrights-irreversible-marker', 
User::getGroupMember( $group ) )->escaped()
                                : User::getGroupMember( $group );
                        $checkbox = Xml::checkLabel( $text, "wpGroup-$group",
                                "wpGroup-$group", $set, $attr );
-                       $checkbox = $disabled ? Xml::tags( 'span', array( 
'class' => 'mw-userrights-disabled' ), $checkbox ) : $checkbox;
+                       $checkbox = $disabled ? Xml::tags( 'span', [ 'class' => 
'mw-userrights-disabled' ], $checkbox ) : $checkbox;
 
                        if ( $disabled ) {
                                $unsettable_col .= "$checkbox<br />\n";
@@ -330,7 +330,7 @@
                }
 
                if ( $column ) {
-                       $ret .= Xml::openElement( 'table', array( 'border' => 
'0', 'class' => 'mw-userrights-groups' ) ) .
+                       $ret .= Xml::openElement( 'table', [ 'border' => '0', 
'class' => 'mw-userrights-groups' ] ) .
                                '<tr>
 ';
                        if ( $settable_col !== '' ) {
diff --git a/composer.json b/composer.json
index 392434c..bce6c76 100644
--- a/composer.json
+++ b/composer.json
@@ -2,15 +2,18 @@
        "require-dev": {
                "jakub-onderka/php-parallel-lint": "0.9.2",
                "jakub-onderka/php-console-highlighter": "0.3.2",
+               "mediawiki/mediawiki-codesniffer": "14.1.0",
                "mediawiki/minus-x": "0.2.0"
        },
        "scripts": {
+               "fix": [
+                       "phpcbf",
+                       "minus-x fix ."
+               ],
                "test": [
                        "parallel-lint . --exclude vendor --exclude 
node_modules",
+                       "phpcs -p -s",
                        "minus-x check ."
-               ],
-               "fix": [
-                       "minus-x fix ."
                ]
        }
 }
diff --git a/extension.json b/extension.json
new file mode 100644
index 0000000..d960f7b
--- /dev/null
+++ b/extension.json
@@ -0,0 +1,36 @@
+{
+       "name": "BatchUserRights",
+       "version": "1.2.0",
+       "author": "[http://www.seancolombo.com Sean Colombo]",
+       "url": "https://www.mediawiki.org/wiki/Extension:BatchUserRights";,
+       "descriptionmsg": "batchuserrights-desc",
+       "type": "specialpage",
+       "AvailableRights": [
+               "batchuserrights"
+       ],
+       "GroupPermissions": {
+               "bureaucrat": {
+                       "batchuserrights": true
+               }
+       },
+       "SpecialPages": {
+               "BatchUserRights": "SpecialBatchUserRights"
+       },
+       "MessagesDirs": {
+               "BatchUserRights": [
+                       "i18n"
+               ]
+       },
+       "ExtensionMessagesFiles": {
+               "BatchUserRightsAliases": "BatchUserRights.alias.php"
+       },
+       "AutoloadClasses": {
+               "SpecialBatchUserRights": "BatchUserRights_body.php"
+       },
+       "config": {
+               "BatchUserRightsGrantableGroups": {
+                       "value": []
+               }
+       },
+       "manifest_version": 2
+}

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I22f6b5e09701f2892ec8a5c6add44978fe5366df
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/BatchUserRights
Gerrit-Branch: master
Gerrit-Owner: MarcoAurelio <[email protected]>

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

Reply via email to