}
if ( isset( $this->prop['rights'] ) ) {
- // User::getRights() may return duplicate values, strip them
- $vals['rights'] = array_values( array_unique( $user->getRights() ) );
+ $vals['rights'] = $this->getPermissionManager()->getUserPermissions( $user );
ApiResult::setArrayType( $vals['rights'], 'array' ); // even if empty
ApiResult::setIndexedTagName( $vals['rights'], 'r' ); // even if empty
}
if ( isset( $this->prop['preferencestoken'] ) &&
!$this->lacksSameOriginSecurity() &&
- $user->isAllowed( 'editmyoptions' )
+ $this->getPermissionManager()->userHasRight( $user, 'editmyoptions' )
) {
$vals['preferencestoken'] = $user->getEditToken( '', $this->getMain()->getRequest() );
}
$vals['realname'] = $user->getRealName();
}
- if ( $user->isAllowed( 'viewmyprivateinfo' ) && isset( $this->prop['email'] ) ) {
+ if ( $this->getPermissionManager()->userHasRight( $user, 'viewmyprivateinfo' ) &&
+ isset( $this->prop['email'] ) ) {
$vals['email'] = $user->getEmail();
$auth = $user->getEmailAuthenticationTimestamp();
if ( $auth !== null ) {