Nikerabbit has uploaded a new change for review. https://gerrit.wikimedia.org/r/223387
Change subject: Turn wgContentTranslationCampaigns into associative array ...................................................................... Turn wgContentTranslationCampaigns into associative array This change is not backwards compatible and existing configuration overriding the default value must be updated simultanously with the code. Reasons for change is that with extension registration non-associative arrays do not work as expected. JavaScript version of the variable is kept as a list for simplicity and hopefully not too much confusion for using a different format as PHP. Bug: T105050 Change-Id: I2d77318b2858cb6022c8dbb0a010fd3995f96bda --- M ContentTranslation.hooks.php M extension.json M specials/SpecialContentTranslation.php 3 files changed, 10 insertions(+), 5 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/ContentTranslation refs/changes/87/223387/1 diff --git a/ContentTranslation.hooks.php b/ContentTranslation.hooks.php index 1dff85f..2d95b46 100644 --- a/ContentTranslation.hooks.php +++ b/ContentTranslation.hooks.php @@ -47,7 +47,7 @@ if ( !self::isEnabledForUser( $user ) ) { if ( !$title->exists() && - in_array( 'newarticle', $wgContentTranslationCampaigns ) && + $wgContentTranslationCampaigns['newarticle'] && !$out->getRequest()->getCookie( 'cx_campaign_newarticle_hide', '' ) && !$user->isAnon() ) { @@ -160,7 +160,7 @@ $vars['wgContentTranslationExperimentalFeatures'] = $wgContentTranslationExperimentalFeatures; $vars['wgContentTranslationDatabase'] = $wgContentTranslationDatabase; $vars['wgContentTranslationSiteTemplates'] = $wgContentTranslationSiteTemplates; - $vars['wgContentTranslationCampaigns'] = $wgContentTranslationCampaigns; + $vars['wgContentTranslationCampaigns'] = array_keys( $wgContentTranslationCampaigns ); $vars['wgContentTranslationBrowserBlacklist'] = $wgContentTranslationBrowserBlacklist; $vars['wgContentTranslationDefaultSourceLanguage'] = $wgContentTranslationDefaultSourceLanguage; $vars['wgContentTranslationTargetNamespace'] = $wgContentTranslationTargetNamespace; @@ -186,7 +186,7 @@ $user = $out->getUser(); if ( - !in_array( 'newarticle', $wgContentTranslationCampaigns ) || + !$wgContentTranslationCampaigns['newarticle'] || $out->getRequest()->getCookie( 'cx_campaign_newarticle_hide', '' ) || $newPage->mTitle->exists() || !$newPage->mTitle->inNamespace( NS_MAIN ) || diff --git a/extension.json b/extension.json index 9c3d7f8..5c2d65f 100644 --- a/extension.json +++ b/extension.json @@ -99,7 +99,10 @@ "ContentTranslationDefaultSourceLanguage": "en", "@ContentTranslationTargetNamespace": "Target namespace to publish articles. Values can be 'Main' or any valid Namespace without leading column.", "ContentTranslationTargetNamespace": "Main", - "ContentTranslationCampaigns": [ "cxstats", "newarticle" ], + "ContentTranslationCampaigns": { + "cxstats": true, + "newarticle": true + }, "@ContentTranslationUseMagnusTool":"Whether the Magnus tool to find missing articles to be enabled or not. This is initially made to experiment with an article comparison tool at http://tools.wmflabs.org/not-in-the-other-language/ See https://phabricator.wikimedia.org/T76843", "ContentTranslationUseMagnusTool": true, "ContentTranslationBrowserBlacklist": { diff --git a/specials/SpecialContentTranslation.php b/specials/SpecialContentTranslation.php index dee45d9..465247f 100644 --- a/specials/SpecialContentTranslation.php +++ b/specials/SpecialContentTranslation.php @@ -40,7 +40,9 @@ // Campigns are only for logged in users. return false; } - return $campaign !== null && in_array( $campaign, $wgContentTranslationCampaigns ); + return $campaign !== null + && isset( $wgContentTranslationCampaigns[$campaign] ) + && $wgContentTranslationCampaigns[$campaign]; } /** -- To view, visit https://gerrit.wikimedia.org/r/223387 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I2d77318b2858cb6022c8dbb0a010fd3995f96bda Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/ContentTranslation Gerrit-Branch: master Gerrit-Owner: Nikerabbit <niklas.laxst...@gmail.com> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits