Set context when using UserrightsPage
authorumherirrender <umherirrender_de.wp@web.de>
Fri, 24 May 2013 13:58:54 +0000 (15:58 +0200)
committerumherirrender <umherirrender_de.wp@web.de>
Fri, 24 May 2013 13:58:54 +0000 (15:58 +0200)
SpecialPage::getContext called and $mContext is null. Return
RequestContext::getMain(); for sanity

Change-Id: Ie0ed360835164e8a4eb1c675ec8edd944ab95898

includes/SkinTemplate.php
includes/api/ApiQueryUsers.php
includes/api/ApiUserrights.php

index e3a6ccf..fa90954 100644 (file)
@@ -1253,6 +1253,7 @@ class SkinTemplate extends Skin {
                        }
 
                        $sur = new UserrightsPage;
+                       $sur->setContext( $this->getContext() );
                        if ( $sur->userCanExecute( $this->getUser() ) ) {
                                $nav_urls['userrights'] = array(
                                        'href' => self::makeSpecialUrlSubpage( 'Userrights', $rootUser )
index 0a0aaee..aec57a0 100644 (file)
@@ -204,11 +204,13 @@ class ApiQueryUsers extends ApiQueryBase {
                        }
                }
 
+               $context = $this->getContext();
                // Second pass: add result data to $retval
                foreach ( $goodNames as $u ) {
                        if ( !isset( $data[$u] ) ) {
                                $data[$u] = array( 'name' => $u );
                                $urPage = new UserrightsPage;
+                               $urPage->setContext( $context );
                                $iwUser = $urPage->fetchUser( $u );
 
                                if ( $iwUser instanceof UserRightsProxy ) {
index 80db29b..870201e 100644 (file)
@@ -38,6 +38,7 @@ class ApiUserrights extends ApiBase {
                $user = $this->getUrUser();
 
                $form = new UserrightsPage;
+               $form->setContext( $this->getContext() );
                $r['user'] = $user->getName();
                $r['userid'] = $user->getId();
                list( $r['added'], $r['removed'] ) =
@@ -62,6 +63,7 @@ class ApiUserrights extends ApiBase {
                $params = $this->extractRequestParams();
 
                $form = new UserrightsPage;
+               $form->setContext( $this->getContext() );
                $status = $form->fetchUser( $params['user'] );
                if ( !$status->isOK() ) {
                        $errors = $status->getErrorsArray();