From 02991a7bd0e9d060635df6ec507d6963221d1485 Mon Sep 17 00:00:00 2001 From: addshore Date: Sat, 22 Oct 2016 15:48:23 +0100 Subject: [PATCH] Add a betaFeature switch This config option allows the extension to be deployed on a site that has the BF extension enabled while not using it (ie, being a default feature) Bug: T148644 Change-Id: I2539e4762d7c1c34ea24f98fdf24c2aecb3d27b0 --- RevisionSlider.hooks.php | 12 +++++++----- extension.json | 3 +++ 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/RevisionSlider.hooks.php b/RevisionSlider.hooks.php index fc49f619..5ee781a9 100644 --- a/RevisionSlider.hooks.php +++ b/RevisionSlider.hooks.php @@ -15,14 +15,17 @@ class RevisionSliderHooks { Revision $oldRev, Revision $newRev ) { + $config = MediaWikiServices::getInstance()->getMainConfig(); + /** - * If this extension is deployed with the BetaFeatures extension then require the - * current user to have it enabled as a BetaFeature. + * If this extension is configured to be a beta feature, and the BetaFeatures extension + * is loaded then require the current user to have the feature enabled. */ if ( + $config->get( 'RevisionSliderBetaFeature' ) && class_exists( BetaFeatures::class ) && - !BetaFeatures::isFeatureEnabled( $diff->getUser(), 'revisionslider' ) ) - { + !BetaFeatures::isFeatureEnabled( $diff->getUser(), 'revisionslider' ) + ) { return true; } @@ -36,7 +39,6 @@ class RevisionSliderHooks { $stats = MediaWikiServices::getInstance()->getStatsdDataFactory(); $stats->increment( 'RevisionSlider.event.hookinit' ); - $config = MediaWikiServices::getInstance()->getMainConfig(); $timeOffset = $config->get( 'LocalTZoffset' ); if ( is_null( $config->get( 'Localtimezone' ) ) ) { $timeOffset = 0; diff --git a/extension.json b/extension.json index 4896979a..6247fbe3 100644 --- a/extension.json +++ b/extension.json @@ -14,6 +14,9 @@ "license-name": "GPL-2.0+", "type": "other", "manifest_version": 1, + "config": { + "RevisionSliderBetaFeature": true + }, "MessagesDirs": { "RevisionSlider": [ "i18n"