Revision: 50197 Author: robin Date: 2009-05-04 19:16:21 +0000 (Mon, 04 May 2009)
Log Message: ----------- Add $wgGroupsAddToSelf and $wgGroupsRemoveFromSelf in Special:ListGroupRights (bug 15061), the same way as $wgAddGroups and $wgRemoveGroups Modified Paths: -------------- trunk/phase3/includes/specials/SpecialListgrouprights.php trunk/phase3/languages/messages/MessagesEn.php trunk/phase3/maintenance/language/messages.inc Modified: trunk/phase3/includes/specials/SpecialListgrouprights.php =================================================================== --- trunk/phase3/includes/specials/SpecialListgrouprights.php 2009-05-04 19:12:57 UTC (rev 50196) +++ trunk/phase3/includes/specials/SpecialListgrouprights.php 2009-05-04 19:16:21 UTC (rev 50197) @@ -26,6 +26,7 @@ public function execute( $par ) { global $wgOut, $wgImplicitGroups, $wgMessageCache; global $wgGroupPermissions, $wgAddGroups, $wgRemoveGroups; + global $wgGroupsAddToSelf, $wgGroupsRemoveFromSelf; $wgMessageCache->loadAllMessages(); $this->setHeaders(); @@ -76,13 +77,16 @@ $addgroups = isset( $wgAddGroups[$group] ) ? $wgAddGroups[$group] : array(); $removegroups = isset( $wgRemoveGroups[$group] ) ? $wgRemoveGroups[$group] : array(); + $addgroupsSelf = isset( $wgGroupsAddToSelf[$group] ) ? $wgGroupsAddToSelf[$group] : array(); + $removegroupsSelf = isset( $wgGroupsRemoveFromSelf[$group] ) ? $wgGroupsRemoveFromSelf[$group] : array(); + $wgOut->addHTML( '<tr> <td>' . $grouppage . $grouplink . '</td> <td>' . - self::formatPermissions( $permissions, $addgroups, $removegroups ) . + self::formatPermissions( $permissions, $addgroups, $removegroups, $addgroupsSelf, $removegroupsSelf ) . '</td> </tr>' ); @@ -98,7 +102,7 @@ * @param $permissions Array of permission => bool (from $wgGroupPermissions items) * @return string List of all granted permissions, separated by comma separator */ - private static function formatPermissions( $permissions, $add, $remove ) { + private static function formatPermissions( $permissions, $add, $remove, $addSelf, $removeSelf ) { global $wgLang; $r = array(); foreach( $permissions as $permission => $granted ) { @@ -121,6 +125,16 @@ } else if( is_array( $remove ) && count( $remove ) ) { $r[] = wfMsgExt( 'listgrouprights-removegroup', array( 'parseinline' ), $wgLang->listToText( array_map( array( 'User', 'makeGroupLinkWiki' ), $remove ) ), count( $remove ) ); } + if( $addSelf === true ){ + $r[] = wfMsgExt( 'listgrouprights-addgroup-self-all', array( 'escape' ) ); + } else if( is_array( $addSelf ) && count( $addSelf ) ) { + $r[] = wfMsgExt( 'listgrouprights-addgroup-self', array( 'parseinline' ), $wgLang->listToText( array_map( array( 'User', 'makeGroupLinkWiki' ), $addSelf ) ), count( $addSelf ) ); + } + if( $removeSelf === true ){ + $r[] = wfMsgExt( 'listgrouprights-removegroup-self-all', array( 'escape' ) ); + } else if( is_array( $removeSelf ) && count( $removeSelf ) ) { + $r[] = wfMsgExt( 'listgrouprights-removegroup-self', array( 'parseinline' ), $wgLang->listToText( array_map( array( 'User', 'makeGroupLinkWiki' ), $removeSelf ) ), count( $removeSelf ) ); + } if( empty( $r ) ) { return ''; } else { Modified: trunk/phase3/languages/messages/MessagesEn.php =================================================================== --- trunk/phase3/languages/messages/MessagesEn.php 2009-05-04 19:12:57 UTC (rev 50196) +++ trunk/phase3/languages/messages/MessagesEn.php 2009-05-04 19:16:21 UTC (rev 50197) @@ -2286,6 +2286,10 @@ 'listgrouprights-removegroup' => 'Can remove {{PLURAL:$2|group|groups}}: $1', 'listgrouprights-addgroup-all' => 'Can add all groups', 'listgrouprights-removegroup-all' => 'Can remove all groups', +'listgrouprights-addgroup-self' => 'Can add {{PLURAL:$2|group|groups}} to own account: $1', +'listgrouprights-removegroup-self' => 'Can remove {{PLURAL:$2|group|groups}} to own account: $1', +'listgrouprights-addgroup-self-all' => 'Can add all groups to own account', +'listgrouprights-removegroup-self-all' => 'Can remove all groups to own account', # E-mail user 'mailnologin' => 'No send address', Modified: trunk/phase3/maintenance/language/messages.inc =================================================================== --- trunk/phase3/maintenance/language/messages.inc 2009-05-04 19:12:57 UTC (rev 50196) +++ trunk/phase3/maintenance/language/messages.inc 2009-05-04 19:16:21 UTC (rev 50197) @@ -1535,6 +1535,11 @@ 'listgrouprights-removegroup', 'listgrouprights-addgroup-all', 'listgrouprights-removegroup-all', + 'listgrouprights-addgroup-self', + 'listgrouprights-removegroup-self', + 'listgrouprights-addgroup-self-all', + 'listgrouprights-removegroup-self-all', + ), 'emailuser' => array( 'mailnologin', _______________________________________________ MediaWiki-CVS mailing list MediaWiki-CVS@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs