Followup r84363
authorSam Reed <reedy@users.mediawiki.org>
Sat, 26 Mar 2011 18:39:22 +0000 (18:39 +0000)
committerSam Reed <reedy@users.mediawiki.org>
Sat, 26 Mar 2011 18:39:22 +0000 (18:39 +0000)
Looks like I made a complete hash of that commit. Commit correct version from vm working copy

includes/api/ApiQueryAllUsers.php

index 5180ff4..0363436 100644 (file)
@@ -216,23 +216,26 @@ class ApiQueryAllUsers extends ApiQueryBase {
                        }
 
                        // Add user's group info
-                       if ( $fld_groups && !is_null( $row->ug_group2 ) ) {
+                       if ( $fld_groups ) {
                                if ( !isset( $lastUserData['groups'] ) ) {
                                        $lastUserData['groups'] = ApiQueryUsers::getAutoGroups( User::newFromName( $lastUser ) );
                                }
 
-                               $lastUserData['groups'][] = $row->ug_group2;
+                               if ( !is_null( $row->ug_group2 ) ) {
+                                       $lastUserData['groups'][] = $row->ug_group2;
+                               }
                                $result->setIndexedTagName( $lastUserData['groups'], 'g' );
                        }
 
-                       if ( $fld_groups ) {
-                               if ( !isset( $lastUserData['groups'] ) ) {
-                                       $lastUserData['groups'] = ApiQueryUsers::getAutoGroups( User::newFromName( $lastUser ) );
+                       if ( $fld_rights ) {
+                               if ( !isset( $lastUserData['rights'] ) ) {
+                                       $lastUserData['rights'] =  User::getGroupPermissions( User::getImplicitGroups() );
                                }
                                if ( !is_null( $row->ug_group2 ) ) {
-                                       $lastUserData['groups'][] = $row->ug_group2;
+                                       $lastUserData['rights'] = array_unique( array_merge( $lastUserData['rights'],
+                                                                               User::getGroupPermissions( array( $row->ug_group2 ) ) ) );
                                }
-                               $result->setIndexedTagName( $lastUserData['groups'], 'g' );
+                               $result->setIndexedTagName( $lastUserData['rights'], 'r' );
                        }
                }