Yaron Koren has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/366303 )

Change subject: Use group rights for viewlinktolatest instead of page rights.
......................................................................


Use group rights for viewlinktolatest instead of page rights.

Also, create generic ApprovedRevs::checkPermission() and use it for
the "approvedrevisions" check.

Bug: T171004
Change-Id: I0d1084e9bfe5de2cabac4cb3985ef500ba44d9b7
---
M ApprovedRevs.hooks.php
M ApprovedRevs_body.php
M SpecialApprovedRevsPage.php
3 files changed, 15 insertions(+), 6 deletions(-)

Approvals:
  Yaron Koren: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/ApprovedRevs.hooks.php b/ApprovedRevs.hooks.php
index de53f8a..4dd19b3 100644
--- a/ApprovedRevs.hooks.php
+++ b/ApprovedRevs.hooks.php
@@ -446,7 +446,7 @@
                        return false;
                }
 
-               if ( ! $title->userCan( 'viewlinktolatest' ) ) {
+               if ( ! ApprovedRevs::checkPermission( $title, 
"viewlinktolatest" ) ) {
                        return false;
                }
 
@@ -823,7 +823,7 @@
 
                // If the user isn't supposed to see these kinds of
                // messages, exit.
-               if ( ! $title->userCan( 'viewlinktolatest' ) ) {
+               if ( ! ApprovedRevs::checkPermission( $title, 
"viewlinktolatest" ) ) {
                        return false;
                }
 
diff --git a/ApprovedRevs_body.php b/ApprovedRevs_body.php
index c384590..9d46c68 100644
--- a/ApprovedRevs_body.php
+++ b/ApprovedRevs_body.php
@@ -142,6 +142,16 @@
                return $isApprovable;
        }
 
+       public static function checkPermission( $title, $permission ) {
+               global $wgUser;
+
+               if ( ! $title->userCan( $permission )
+                        && ! $wgUser->isAllowed( $permission ) ) {
+                       return false;
+               }
+               return true;
+       }
+
        public static function userCanApprove( $title ) {
                global $egApprovedRevsSelfOwnedNamespaces, $wgUser;
                $permission = 'approverevisions';
@@ -153,8 +163,7 @@
                        return true;
                } elseif ( self::$mUserCanApprove === false ) {
                        return false;
-               } elseif ( $title->userCan( $permission )
-                                  || $wgUser->isAllowed( $permission ) ) {
+               } elseif ( ApprovedRevs::checkPermission( $title, $permission ) 
) {
                        self::$mUserCanApprove = true;
                        return true;
                } else {
diff --git a/SpecialApprovedRevsPage.php b/SpecialApprovedRevsPage.php
index a9b4822..cf0c9cf 100644
--- a/SpecialApprovedRevsPage.php
+++ b/SpecialApprovedRevsPage.php
@@ -259,7 +259,7 @@
                }
 
                if ( $this->mMode == 'all' ) {
-                       global $wgUser, $wgOut, $wgLang;
+                       global $wgOut, $wgLang;
 
                        $additionalInfo = Xml::element( 'span',
                                array (
@@ -297,7 +297,7 @@
 
                        $line = $pageLink;
                        if ( $egApprovedRevsShowApproveLatest &&
-                               $title->userCan( 'approverevisions' ) ) {
+                                ApprovedRevs::checkPermission( $title, 
'approverevisions' ) ) {
                                $line .= ' (' . Xml::element( 'a',
                                        array( 'href' => $title->getLocalUrl(
                                                array(

-- 
To view, visit https://gerrit.wikimedia.org/r/366303
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I0d1084e9bfe5de2cabac4cb3985ef500ba44d9b7
Gerrit-PatchSet: 5
Gerrit-Project: mediawiki/extensions/ApprovedRevs
Gerrit-Branch: master
Gerrit-Owner: MarkAHershberger <[email protected]>
Gerrit-Reviewer: MarkAHershberger <[email protected]>
Gerrit-Reviewer: Yaron Koren <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to