diff options
author | Pierre Schmitz <pierre@archlinux.de> | 2011-12-03 13:29:22 +0100 |
---|---|---|
committer | Pierre Schmitz <pierre@archlinux.de> | 2011-12-03 13:29:22 +0100 |
commit | ca32f08966f1b51fcb19460f0996bb0c4048e6fe (patch) | |
tree | ec04cc15b867bc21eedca904cea9af0254531a11 /includes/api/ApiQueryUserInfo.php | |
parent | a22fbfc60f36f5f7ee10d5ae6fe347340c2ee67c (diff) |
Update to MediaWiki 1.18.0
* also update ArchLinux skin to chagnes in MonoBook
* Use only css to hide our menu bar when printing
Diffstat (limited to 'includes/api/ApiQueryUserInfo.php')
-rw-r--r-- | includes/api/ApiQueryUserInfo.php | 41 |
1 files changed, 33 insertions, 8 deletions
diff --git a/includes/api/ApiQueryUserInfo.php b/includes/api/ApiQueryUserInfo.php index ec7b74b3..8a8ce118 100644 --- a/includes/api/ApiQueryUserInfo.php +++ b/includes/api/ApiQueryUserInfo.php @@ -1,6 +1,6 @@ <?php /** - * API for MediaWiki 1.8+ + * * * Created on July 30, 2007 * @@ -55,7 +55,7 @@ class ApiQueryUserInfo extends ApiQueryBase { } protected function getCurrentUserInfo() { - global $wgUser, $wgRequest; + global $wgUser, $wgRequest, $wgHiddenPrefs; $result = $this->getResult(); $vals = array(); $vals['id'] = intval( $wgUser->getId() ); @@ -83,6 +83,11 @@ class ApiQueryUserInfo extends ApiQueryBase { $result->setIndexedTagName( $vals['groups'], 'g' ); // even if empty } + if ( isset( $this->prop['implicitgroups'] ) ) { + $vals['implicitgroups'] = ApiQueryUsers::getAutoGroups( $wgUser ); + $result->setIndexedTagName( $vals['implicitgroups'], 'g' ); // even if empty + } + if ( isset( $this->prop['rights'] ) ) { // User::getRights() may return duplicate values, strip them $vals['rights'] = array_values( array_unique( $wgUser->getRights() ) ); @@ -101,12 +106,10 @@ class ApiQueryUserInfo extends ApiQueryBase { $vals['options'] = $wgUser->getOptions(); } - if ( - isset( $this->prop['preferencestoken'] ) && + if ( isset( $this->prop['preferencestoken'] ) && is_null( $this->getMain()->getRequest()->getVal( 'callback' ) ) - ) - { - $vals['preferencestoken'] = $wgUser->editToken(); + ) { + $vals['preferencestoken'] = $wgUser->editToken( '', $this->getMain()->getRequest() ); } if ( isset( $this->prop['editcount'] ) ) { @@ -117,6 +120,10 @@ class ApiQueryUserInfo extends ApiQueryBase { $vals['ratelimits'] = $this->getRateLimits(); } + if ( isset( $this->prop['realname'] ) && !in_array( 'realname', $wgHiddenPrefs ) ) { + $vals['realname'] = $wgUser->getRealName(); + } + if ( isset( $this->prop['email'] ) ) { $vals['email'] = $wgUser->getEmail(); $auth = $wgUser->getEmailAuthenticationTimestamp(); @@ -125,6 +132,13 @@ class ApiQueryUserInfo extends ApiQueryBase { } } + if ( isset( $this->prop['registrationdate'] ) ) { + $regDate = $wgUser->getRegistration(); + if ( $regDate !== false ) { + $vals['registrationdate'] = wfTimestamp( TS_ISO_8601, $regDate ); + } + } + if ( isset( $this->prop['acceptlang'] ) ) { $langs = $wgRequest->getAcceptLang(); $acceptLang = array(); @@ -182,6 +196,7 @@ class ApiQueryUserInfo extends ApiQueryBase { 'blockinfo', 'hasmsg', 'groups', + 'implicitgroups', 'rights', 'changeablegroups', 'options', @@ -189,7 +204,9 @@ class ApiQueryUserInfo extends ApiQueryBase { 'editcount', 'ratelimits', 'email', + 'realname', 'acceptlang', + 'registrationdate' ) ) ); @@ -202,13 +219,17 @@ class ApiQueryUserInfo extends ApiQueryBase { ' blockinfo - Tags if the current user is blocked, by whom, and for what reason', ' hasmsg - Adds a tag "message" if the current user has pending messages', ' groups - Lists all the groups the current user belongs to', + ' implicitgroups - Lists all the groups the current user is automatically a member of', ' rights - Lists all the rights the current user has', ' changeablegroups - Lists the groups the current user can add to and remove from', ' options - Lists all preferences the current user has set', + ' preferencestoken - Get a token to change current user\'s preferences', ' editcount - Adds the current user\'s edit count', ' ratelimits - Lists all rate limits applying to the current user', + ' realname - Adds the user\'s real name', ' email - Adds the user\'s email address and email authentication date', ' acceptlang - Echoes the Accept-Language header sent by the client in a structured format', + ' registrationdate - Adds the user\'s registration date', ) ); } @@ -224,7 +245,11 @@ class ApiQueryUserInfo extends ApiQueryBase { ); } + public function getHelpUrls() { + return 'https://www.mediawiki.org/wiki/API:Meta#userinfo_.2F_ui'; + } + public function getVersion() { - return __CLASS__ . ': $Id: ApiQueryUserInfo.php 75937 2010-11-03 17:01:21Z reedy $'; + return __CLASS__ . ': $Id: ApiQueryUserInfo.php 104449 2011-11-28 15:52:04Z reedy $'; } } |