Follow-up r90749: use a new 'autopromote' action for the autopromote rights log entri...
authorAaron Schulz <aaron@users.mediawiki.org>
Sun, 26 Jun 2011 21:44:55 +0000 (21:44 +0000)
committerAaron Schulz <aaron@users.mediawiki.org>
Sun, 26 Jun 2011 21:44:55 +0000 (21:44 +0000)
includes/Autopromote.php
includes/DefaultSettings.php
includes/LogPage.php
includes/User.php
languages/messages/MessagesEn.php
maintenance/language/messages.inc

index d4f9b2f..fa54edb 100644 (file)
@@ -46,13 +46,13 @@ class Autopromote {
 
                if ( isset( $wgAutopromoteOnce[$event] ) && count( $wgAutopromoteOnce[$event] ) ) {
                        $currentGroups = $user->getGroups();
+                       $formerGroups = $user->getFormerGroups();
                        foreach ( $wgAutopromoteOnce[$event] as $group => $cond ) {
                                // Do not check if the user's already a member
                                if ( in_array( $group, $currentGroups ) ) {
                                        continue;
                                }
                                // Do not autopromote if the user has belonged to the group
-                               $formerGroups = $user->getFormerGroups();
                                if ( in_array( $group, $formerGroups ) ) {
                                        continue;
                                }
index 85a0a9e..86a93bb 100644 (file)
@@ -4846,34 +4846,35 @@ $wgLogHeaders = array(
  * Extensions with custom log types may add to this array.
  */
 $wgLogActions = array(
-       'block/block'       => 'blocklogentry',
-       'block/unblock'     => 'unblocklogentry',
-       'block/reblock'     => 'reblock-logentry',
-       'protect/protect'   => 'protectedarticle',
-       'protect/modify'    => 'modifiedarticleprotection',
-       'protect/unprotect' => 'unprotectedarticle',
-       'protect/move_prot' => 'movedarticleprotection',
-       'rights/rights'     => 'rightslogentry',
-       'rights/disable'    => 'disableaccount-logentry',
-       'delete/delete'     => 'deletedarticle',
-       'delete/restore'    => 'undeletedarticle',
-       'delete/revision'   => 'revdelete-logentry',
-       'delete/event'      => 'logdelete-logentry',
-       'upload/upload'     => 'uploadedimage',
-       'upload/overwrite'  => 'overwroteimage',
-       'upload/revert'     => 'uploadedimage',
-       'move/move'         => '1movedto2',
-       'move/move_redir'   => '1movedto2_redir',
-       'import/upload'     => 'import-logentry-upload',
-       'import/interwiki'  => 'import-logentry-interwiki',
-       'merge/merge'       => 'pagemerge-logentry',
-       'suppress/revision' => 'revdelete-logentry',
-       'suppress/file'     => 'revdelete-logentry',
-       'suppress/event'    => 'logdelete-logentry',
-       'suppress/delete'   => 'suppressedarticle',
-       'suppress/block'    => 'blocklogentry',
-       'suppress/reblock'  => 'reblock-logentry',
-       'patrol/patrol'     => 'patrol-log-line',
+       'block/block'        => 'blocklogentry',
+       'block/unblock'      => 'unblocklogentry',
+       'block/reblock'      => 'reblock-logentry',
+       'protect/protect'    => 'protectedarticle',
+       'protect/modify'     => 'modifiedarticleprotection',
+       'protect/unprotect'  => 'unprotectedarticle',
+       'protect/move_prot'  => 'movedarticleprotection',
+       'rights/rights'      => 'rightslogentry',
+       'rights/autopromote' => 'rightslogentry-autopromote',
+       'rights/disable'     => 'disableaccount-logentry',
+       'delete/delete'      => 'deletedarticle',
+       'delete/restore'     => 'undeletedarticle',
+       'delete/revision'    => 'revdelete-logentry',
+       'delete/event'       => 'logdelete-logentry',
+       'upload/upload'      => 'uploadedimage',
+       'upload/overwrite'   => 'overwroteimage',
+       'upload/revert'      => 'uploadedimage',
+       'move/move'          => '1movedto2',
+       'move/move_redir'    => '1movedto2_redir',
+       'import/upload'      => 'import-logentry-upload',
+       'import/interwiki'   => 'import-logentry-interwiki',
+       'merge/merge'        => 'pagemerge-logentry',
+       'suppress/revision'  => 'revdelete-logentry',
+       'suppress/file'      => 'revdelete-logentry',
+       'suppress/event'     => 'logdelete-logentry',
+       'suppress/delete'    => 'suppressedarticle',
+       'suppress/block'     => 'blocklogentry',
+       'suppress/reblock'   => 'reblock-logentry',
+       'patrol/patrol'      => 'patrol-log-line',
 );
 
 /**
index 4afa12f..7445631 100644 (file)
@@ -217,7 +217,7 @@ class LogPage {
                                $rv = wfMsgHtml( $wgLogActions[$key] );
                        } else {
                                $titleLink = self::getTitleLink( $type, $skin, $title, $params );
-                               if( $key == 'rights/rights' ) {
+                               if( preg_match( '/^rights\/(rights|autopromote)/', $key ) ) {
                                        if( $skin ) {
                                                $rightsnone = wfMsg( 'rightsnone' );
                                                foreach ( $params as &$param ) {
index c3dd8ea..6bd26a4 100644 (file)
@@ -1128,9 +1128,9 @@ class User {
                                $newGroups = array_merge( $oldGroups, $toPromote ); // all groups
 
                                $log = new LogPage( 'rights', false /* not in RC */ );
-                               $log->addEntry( 'rights',
+                               $log->addEntry( 'autopromote',
                                        $this->getUserPage(),
-                                       wfMsgForContent( 'rightsautocomment' ),
+                                       '', // no comment
                                        array( implode( ', ', $oldGroups ), implode( ', ', $newGroups ) )
                                );
                        }
index 7ae8e66..ed1f86c 100644 (file)
@@ -1978,11 +1978,11 @@ Your e-mail address is not revealed when other users contact you.',
 'right-sendemail'             => 'Send e-mail to other users',
 
 # User rights log
-'rightslog'         => 'User rights log',
-'rightslogtext'     => 'This is a log of changes to user rights.',
-'rightslogentry'    => 'changed group membership for $1 from $2 to $3',
-'rightsnone'        => '(none)',
-'rightsautocomment' => 'automatically promoted',
+'rightslog'                  => 'User rights log',
+'rightslogtext'              => 'This is a log of changes to user rights.',
+'rightslogentry'             => 'changed group membership for $1 from $2 to $3',
+'rightslogentry-autopromote' => 'was automatically promoted from $2 to $3',
+'rightsnone'                 => '(none)',
 
 # Associated actions - in the sentence "You do not have permission to X"
 'action-read'                 => 'read this page',
index d620d76..94b5a1d 100644 (file)
@@ -1142,8 +1142,8 @@ $wgMessageStructure = array(
                'rightslog',
                'rightslogtext',
                'rightslogentry',
+        'rightslogentry-autopromote',
                'rightsnone',
-               'rightsautocomment',
        ),
        'action' => array(
                'action-read',