diff --git a/includes/skins/SkinMinerva.php b/includes/skins/SkinMinerva.php index d5e3d2e..659ed5e 100644 --- a/includes/skins/SkinMinerva.php +++ b/includes/skins/SkinMinerva.php @@ -1273,7 +1273,7 @@ class SkinMinerva extends SkinTemplate implements ICustomizableSkin { $out = $this->getOutput(); $vars = [ - 'wgMinervaDownloadIcon' => $this->getConfig()->get( 'MinervaDownloadIcon' ), + 'wgMinervaDownloadNamespaces' => $this->getConfig()->get( 'MinervaDownloadNamespaces' ), 'wgMinervaMenuData' => $this->getMenuData(), // Expose for skins.minerva.tablet.scripts 'wgMinervaTocEnabled' => $out->getProperty( 'MFTOC' ), diff --git a/resources/skins.minerva.scripts/init.js b/resources/skins.minerva.scripts/init.js index 72eab1f..b10229e 100644 --- a/resources/skins.minerva.scripts/init.js +++ b/resources/skins.minerva.scripts/init.js @@ -229,7 +229,10 @@ loadTabletModules(); if ( - config.get( 'wgMinervaDownloadIcon' ) && + // Download button is restricted to certain namespaces T181152. + // Defaults to 0, in case cached JS has been served. + config.get( 'wgMinervaDownloadNamespaces', [ 0 ] ) + .indexOf( config.get( 'wgNamespaceNumber' ) ) > -1 && !page.isMainPage() && // The iOS print dialog does not provide pdf functionality (see T177215) !browser.isIos() && diff --git a/skin.json b/skin.json index c81b5c1..070d5fe 100644 --- a/skin.json +++ b/skin.json @@ -489,7 +489,7 @@ }, "author": [], "config": { - "MinervaDownloadIcon": false, + "MinervaDownloadNamespaces": [ 0 ], "MinervaEnableSiteNotice": false, "MinervaCustomLogos": [], "MinervaApplyKnownTemplateHacks": false,