X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fapi%2FApiQueryUserInfo.php;h=1bb54c12a3ecac9d75fd2606988f1f2c854e6fde;hb=3d831abcb7a29513ba170095b4afc35112d64829;hp=7bc00cb158372c12360a3ed307484b01bd30aff2;hpb=a9622fdb035fc84349282545144bce7aa76b6d8b;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/api/ApiQueryUserInfo.php b/includes/api/ApiQueryUserInfo.php index 7bc00cb158..1bb54c12a3 100644 --- a/includes/api/ApiQueryUserInfo.php +++ b/includes/api/ApiQueryUserInfo.php @@ -143,6 +143,19 @@ class ApiQueryUserInfo extends ApiQueryBase { 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 @@ -302,6 +315,7 @@ class ApiQueryUserInfo extends ApiQueryBase { 'blockinfo', 'hasmsg', 'groups', + 'groupmemberships', 'implicitgroups', 'rights', 'changeablegroups', @@ -338,6 +352,6 @@ class ApiQueryUserInfo extends ApiQueryBase { } public function getHelpUrls() { - return 'https://www.mediawiki.org/wiki/API:Userinfo'; + return 'https://www.mediawiki.org/wiki/Special:MyLanguage/API:Userinfo'; } }