From: Alex Monk Date: Mon, 2 Apr 2012 16:32:23 +0000 (+0100) Subject: Remove user rights link from anonymous contributions pages X-Git-Tag: 1.31.0-rc.0~24051^2 X-Git-Url: http://git.cyclocoop.org/%40spipnet%40?a=commitdiff_plain;h=3889d242556975535e2e59345c50a14be41bd612;p=lhc%2Fweb%2Fwiklou.git Remove user rights link from anonymous contributions pages Remove the user rights link from the Contributions/DeletedContributions pages for anonymous users, as you can't set user rights on anonymous users. Change-Id: I21551aa6c9ec14c5cda997f2c78fe7434df6d371 --- diff --git a/includes/specials/SpecialContributions.php b/includes/specials/SpecialContributions.php index 03dd5228a1..e84118bfd6 100644 --- a/includes/specials/SpecialContributions.php +++ b/includes/specials/SpecialContributions.php @@ -333,7 +333,7 @@ class SpecialContributions extends SpecialPage { # Add a link to change user rights for privileged users $userrightsPage = new UserrightsPage(); $userrightsPage->setContext( $this->getContext() ); - if ( $id !== null && $userrightsPage->userCanChangeRights( $target ) ) { + if ( $userrightsPage->userCanChangeRights( $target ) ) { $tools[] = Linker::linkKnown( SpecialPage::getTitleFor( 'Userrights', $username ), $this->msg( 'sp-contributions-userrights' )->escaped() diff --git a/includes/specials/SpecialDeletedContributions.php b/includes/specials/SpecialDeletedContributions.php index 64455d4c14..a6719c853f 100644 --- a/includes/specials/SpecialDeletedContributions.php +++ b/includes/specials/SpecialDeletedContributions.php @@ -405,7 +405,7 @@ class DeletedContributionsPage extends SpecialPage { # Add a link to change user rights for privileged users $userrightsPage = new UserrightsPage(); $userrightsPage->setContext( $this->getContext() ); - if( $id !== null && $userrightsPage->userCanChangeRights( User::newFromId( $id ) ) ) { + if( $userrightsPage->userCanChangeRights( $userObj ) ) { $tools[] = Linker::linkKnown( SpecialPage::getTitleFor( 'Userrights', $nt->getDBkey() ), $this->msg( 'sp-contributions-userrights' )->escaped() diff --git a/includes/specials/SpecialUserrights.php b/includes/specials/SpecialUserrights.php index f3582fff0a..3947f3a5a4 100644 --- a/includes/specials/SpecialUserrights.php +++ b/includes/specials/SpecialUserrights.php @@ -47,6 +47,9 @@ class UserrightsPage extends SpecialPage { public function userCanChangeRights( $user, $checkIfSelf = true ) { $available = $this->changeableGroups(); + if ( $user->getId() == 0 ) { + return false; + } return !empty( $available['add'] ) || !empty( $available['remove'] ) || ( ( $this->isself || !$checkIfSelf ) &&