X-Git-Url: http://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fapi%2FApiQueryUserInfo.php;h=1bb54c12a3ecac9d75fd2606988f1f2c854e6fde;hb=3cb14f56bdf3271769a5866f9dcaad56bf873aea;hp=60e122cdd142419ab3226fd74d9a16f387555211;hpb=6186cfef91f5f33f56beb886a542f06ea2350850;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/api/ApiQueryUserInfo.php b/includes/api/ApiQueryUserInfo.php index 60e122cdd1..1bb54c12a3 100644 --- a/includes/api/ApiQueryUserInfo.php +++ b/includes/api/ApiQueryUserInfo.php @@ -67,16 +67,13 @@ class ApiQueryUserInfo extends ApiQueryBase { * - systemblocktype - system block type, if any */ public static function getBlockInfo( Block $block ) { - global $wgContLang; $vals = []; $vals['blockid'] = $block->getId(); $vals['blockedby'] = $block->getByName(); $vals['blockedbyid'] = $block->getBy(); $vals['blockreason'] = $block->mReason; $vals['blockedtimestamp'] = wfTimestamp( TS_ISO_8601, $block->mTimestamp ); - $vals['blockexpiry'] = $wgContLang->formatExpiry( - $block->getExpiry(), TS_ISO_8601, 'infinite' - ); + $vals['blockexpiry'] = ApiResult::formatExpiry( $block->getExpiry(), 'infinite' ); if ( $block->getSystemBlockType() !== null ) { $vals['systemblocktype'] = $block->getSystemBlockType(); } @@ -146,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 @@ -305,6 +315,7 @@ class ApiQueryUserInfo extends ApiQueryBase { 'blockinfo', 'hasmsg', 'groups', + 'groupmemberships', 'implicitgroups', 'rights', 'changeablegroups', @@ -341,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'; } }