From 18227749a6d56bec950701d979dc237f8b58fc5a Mon Sep 17 00:00:00 2001 From: Sam Reed Date: Thu, 17 Jun 2010 08:00:42 +0000 Subject: [PATCH] Minor followup to r68156, add "user" as implicit group Refactor out and reuse in ApiQueryUserInfo Add couple more braces to SpecialUserrights --- includes/api/ApiQueryUserInfo.php | 4 +++- includes/api/ApiQueryUsers.php | 18 +++++++++++++----- includes/specials/SpecialUserrights.php | 3 ++- 3 files changed, 18 insertions(+), 7 deletions(-) diff --git a/includes/api/ApiQueryUserInfo.php b/includes/api/ApiQueryUserInfo.php index 5fa4059695..840c394f14 100644 --- a/includes/api/ApiQueryUserInfo.php +++ b/includes/api/ApiQueryUserInfo.php @@ -76,7 +76,9 @@ class ApiQueryUserInfo extends ApiQueryBase { } if ( isset( $this->prop['groups'] ) ) { - $vals['groups'] = $wgUser->getGroups(); + $autolist = ApiQueryUsers::getAutoGroups( $wgUser ); + + $vals['groups'] = array_merge( $autolist, $wgUser->getGroups() ); $result->setIndexedTagName( $vals['groups'], 'g' ); // even if empty } diff --git a/includes/api/ApiQueryUsers.php b/includes/api/ApiQueryUsers.php index 12e5391e0e..5f6b016c35 100644 --- a/includes/api/ApiQueryUsers.php +++ b/includes/api/ApiQueryUsers.php @@ -201,11 +201,7 @@ if ( !defined( 'MEDIAWIKI' ) ) { } } else { if ( isset( $this->prop['groups'] ) && isset( $data[$u]['groups'] ) ) { - $autolist = array(); - $autolist[] = "*"; - foreach( Autopromote::getAutopromoteGroups( User::newFromName( $u ) ) as $group ) { - $autolist[] = $group; - } + $autolist = ApiQueryUsers::getAutoGroups( User::newFromName( $u ) ); $data[$u]['groups'] = array_merge( $autolist, $data[$u]['groups'] ); @@ -223,6 +219,18 @@ if ( !defined( 'MEDIAWIKI' ) ) { } return $this->getResult()->setIndexedTagName_internal( array( 'query', $this->getModuleName() ), 'user' ); } + + public static function getAutoGroups( $user ) { + $autolist = array(); + $autolist[] = "*"; + $autolist[] = "user"; + + foreach( Autopromote::getAutopromoteGroups( $user ) as $group ) { + $autolist[] = $group; + } + + return $autolist; + } public function getAllowedParams() { return array( diff --git a/includes/specials/SpecialUserrights.php b/includes/specials/SpecialUserrights.php index e92283076e..0268e1613f 100644 --- a/includes/specials/SpecialUserrights.php +++ b/includes/specials/SpecialUserrights.php @@ -402,8 +402,9 @@ class UserrightsPage extends SpecialPage { global $wgOut, $wgUser, $wgLang; $list = array(); - foreach( $groups as $group ) + foreach( $groups as $group ) { $list[] = self::buildGroupLink( $group ); + } $autolist = array(); if ( $user instanceof User ) { -- 2.20.1