jenkins-bot has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/359364 )

Change subject: Allow filter UI to be turned off
......................................................................


Allow filter UI to be turned off

Add $wgOresUiEnabled, defaulting to true. Setting it to false
disables both the structured filters integration, the basic
ORES integration and the preferences group.

Bug: T167908
Change-Id: I6471e0cc693b87c55ba07ffb3f153d86235cdbca
---
M extension.json
M includes/Hooks.php
M includes/Hooks/PreferencesHookHandler.php
3 files changed, 20 insertions(+), 13 deletions(-)

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



diff --git a/extension.json b/extension.json
index 5bdaabc..f7e857b 100644
--- a/extension.json
+++ b/extension.json
@@ -123,6 +123,7 @@
        },
        "config": {
                "OresExtensionStatus": "on",
+               "OresUiEnabled": true,
                "OresBaseUrl": "https://ores.wikimedia.org/";,
                "OresExcludeBots": true,
                "OresModels": {
diff --git a/includes/Hooks.php b/includes/Hooks.php
index a60ac5c..a2108b3 100644
--- a/includes/Hooks.php
+++ b/includes/Hooks.php
@@ -99,7 +99,7 @@
                ChangesListSpecialPage $clsp
        ) {
                // ORES is disabled on Recentchangeslinked: T163063
-               if ( !self::oresEnabled( $clsp->getUser() ) || $clsp->getName() 
=== 'Recentchangeslinked' ) {
+               if ( !self::oresUiEnabled( $clsp->getUser() ) || 
$clsp->getName() === 'Recentchangeslinked' ) {
                        return;
                }
 
@@ -365,7 +365,7 @@
                global $wgUser;
 
                // ORES is disabled on Recentchangeslinked: T163063
-               if ( !self::oresEnabled( $wgUser ) || $name === 
'Recentchangeslinked' ) {
+               if ( !self::oresUiEnabled( $wgUser ) || $name === 
'Recentchangeslinked' ) {
                        return;
                }
 
@@ -405,7 +405,7 @@
                RCCacheEntry $rcObj,
                array &$classes
        ) {
-               if ( !self::oresEnabled( $ecl->getUser() ) ) {
+               if ( !self::oresUiEnabled( $ecl->getUser() ) ) {
                        return;
                }
 
@@ -424,7 +424,7 @@
                array &$data,
                RCCacheEntry $rcObj
        ) {
-               if ( !self::oresEnabled( $ecl->getUser() ) ) {
+               if ( !self::oresUiEnabled( $ecl->getUser() ) ) {
                        return;
                }
 
@@ -448,7 +448,7 @@
                $rc,
                &$classes = []
        ) {
-               if ( !self::oresEnabled( $changesList->getUser() ) ) {
+               if ( !self::oresUiEnabled( $changesList->getUser() ) ) {
                        return;
                }
 
@@ -487,7 +487,7 @@
                ContribsPager $pager,
                &$query
        ) {
-               if ( !self::oresEnabled( $pager->getUser() ) ) {
+               if ( !self::oresUiEnabled( $pager->getUser() ) ) {
                        return;
                }
 
@@ -516,7 +516,7 @@
                $row,
                array &$flags
        ) {
-               if ( !self::oresEnabled( $context->getUser() ) ) {
+               if ( !self::oresUiEnabled( $context->getUser() ) ) {
                        return;
                }
 
@@ -542,7 +542,7 @@
                $row,
                array &$classes
        ) {
-               if ( !self::oresEnabled( $pager->getUser() ) ) {
+               if ( !self::oresUiEnabled( $pager->getUser() ) ) {
                        return;
                }
 
@@ -571,7 +571,7 @@
                SpecialContributions $page,
                array &$filters
        ) {
-               if ( !self::oresEnabled( $page->getUser() ) || 
!self::isModelEnabled( 'damaging' ) ) {
+               if ( !self::oresUiEnabled( $page->getUser() ) || 
!self::isModelEnabled( 'damaging' ) ) {
                        return;
                }
 
@@ -669,7 +669,7 @@
         * @param Skin $skin
         */
        public static function onBeforePageDisplay( OutputPage &$out, Skin 
&$skin ) {
-               if ( !self::oresEnabled( $out->getUser() ) ) {
+               if ( !self::oresUiEnabled( $out->getUser() ) ) {
                        return;
                }
 
@@ -727,8 +727,14 @@
         * @param User $user
         * @return bool
         */
-       public static function oresEnabled( User $user ) {
-               global $wgOresExtensionStatus;
+       public static function oresUiEnabled( User $user ) {
+               global $wgOresExtensionStatus, $wgOresUiEnabled;
+
+               // Is the UI enabled or not?  If not, we've been deployed in
+               // infrastructure-only mode, so hide all the UI elements.
+               if ( !$wgOresUiEnabled ) {
+                       return false;
+               }
 
                // enabled by default for everybody
                if ( $wgOresExtensionStatus === 'on' ) {
diff --git a/includes/Hooks/PreferencesHookHandler.php 
b/includes/Hooks/PreferencesHookHandler.php
index 3723f65..c0cb3bd 100644
--- a/includes/Hooks/PreferencesHookHandler.php
+++ b/includes/Hooks/PreferencesHookHandler.php
@@ -17,7 +17,7 @@
        public static function onGetPreferences( User $user, array 
&$preferences ) {
                global $wgOresFiltersThresholds, $wgOresExtensionStatus, 
$wgHiddenPrefs;
 
-               if ( !Hooks::oresEnabled( $user ) || !Hooks::isModelEnabled( 
'damaging' ) ) {
+               if ( !Hooks::oresUiEnabled( $user ) || !Hooks::isModelEnabled( 
'damaging' ) ) {
                        return;
                }
 

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

Gerrit-MessageType: merged
Gerrit-Change-Id: I6471e0cc693b87c55ba07ffb3f153d86235cdbca
Gerrit-PatchSet: 3
Gerrit-Project: mediawiki/extensions/ORES
Gerrit-Branch: master
Gerrit-Owner: Catrope <r...@wikimedia.org>
Gerrit-Reviewer: Awight <awi...@wikimedia.org>
Gerrit-Reviewer: Catrope <r...@wikimedia.org>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to