ApiResult::setIndexedTagName( $vals['groups'], 'g' ); // even if empty
}
+ if ( isset( $this->prop['groupmemberships'] ) ) {
+ $ugms = $user->getGroupMemberships();
+ $vals['groupmemberships'] = [];
+ foreach ( $ugms as $group => $ugm ) {
+ $vals['groupmemberships'][] = [
+ 'group' => $group,
+ 'expiry' => ApiResult::formatExpiry( $ugm->getExpiry() ),
+ ];
+ }
+ ApiResult::setArrayType( $vals['groupmemberships'], 'array' ); // even if empty
+ ApiResult::setIndexedTagName( $vals['groupmemberships'], 'groupmembership' ); // even if empty
+ }
+
if ( isset( $this->prop['implicitgroups'] ) ) {
$vals['implicitgroups'] = $user->getAutomaticGroups();
ApiResult::setArrayType( $vals['implicitgroups'], 'array' ); // even if empty
'blockinfo',
'hasmsg',
'groups',
+ 'groupmemberships',
'implicitgroups',
'rights',
'changeablegroups',
}
public function getHelpUrls() {
- return 'https://www.mediawiki.org/wiki/API:Userinfo';
+ return 'https://www.mediawiki.org/wiki/Special:MyLanguage/API:Userinfo';
}
}