Page MenuHomePhabricator

Allow loading modules by request url query parameter
Open, LowestPublic

Description

Inspired by the "withJS-url parameter"-script floating around various wikis (which calls importScript() if the passed pagename is in the MediaWiki:-namespace), I think such functionality would qualify as core functionality.

For backwards compatiblity and to avoid any security issues on wikis which use the MediaWiki:-namespace on a less-than-sysop security level, this should be disabled by default, and enableable with a wiki global (eg. $wgAllowWithModuleLoading=true;)

However given how the resourceloader currently works and how it will/may work in the future [1].
I think it's best not to implemenent the script as it is now on those wikis, instead I've made this bug depend on bug 27535 ( registering wikistyles and wikiscripts as part of a module ), and propose to make the parameter someting like withModule.

Example:

That way it can be used to load CSS as well, since CSS can be (part of) a module.

This also stops the need to create mini-scriptpages in the MediaWiki:-namespace that would call importScript() and importStylesheet() several times (once for every css/js part of the module) in order to make it work with the withJS-hack.

Details

Reference
bz27766

Event Timeline

bzimport raised the priority of this task from to Normal.Nov 21 2014, 11:27 PM
bzimport set Reference to bz27766.
bzimport added a subscriber: Unknown Object (MLST).
Krinkle created this task.Feb 27 2011, 7:47 PM
He7d3r added a comment.EditedFeb 26 2012, 6:37 PM

(In reply to comment #0)

However given how the resourceloader currently works and how it will/may work
in the future [1].

Do you still remember what [1] was supposed to mean?

What are the new plans for this, considering that T29535: Add support for loading wiki pages as scripts/styles in ResourceLoader was closed (and T27845: Support loading wiki pages through mediaWiki.loader.load() and T29281: Add support in the front-end for loading wiki pages as resources are open)?

withModule has been implemented in a snippet and used by a few wikis:

https://www.mediawiki.org/wiki/Snippets/Load_JS_and_CSS_by_URL

Krinkle closed this task as Declined.Sep 25 2015, 1:57 AM
Krinkle claimed this task.
Krinkle updated the task description. (Show Details)
Krinkle set Security to None.
Krinkle removed a subscriber: wikibugs-l-list.
Krinkle renamed this task from Add configuration option to enable loading modules based on url parameter to Allow loading modules by on request url query parameter.Apr 17 2017, 11:39 PM
Krinkle renamed this task from Allow loading modules by on request url query parameter to Allow loading modules by request url query parameter.
Krinkle reopened this task as Open.
Krinkle removed Krinkle as the assignee of this task.

As long as any implementation honours page restrictions surrounding module origins, I'm okay with this. (E.g. Special:Login?withModule=site will not work). There's no need to make this configurable imho.

Krinkle lowered the priority of this task from Normal to Lowest.Aug 18 2018, 6:11 AM
Restricted Application added a project: Performance-Team. · View Herald TranscriptAug 18 2018, 6:11 AM
Krinkle moved this task from Limbo to Watching on the Performance-Team (Radar) board.

Moving to radar as we're not likely to work on this at any point. Patches welcome, though.