There has long been a hack for previewing edits to user JS/CSS, where OutputPage would pass an 'excludepage' parameter to ResourceLoaderUserModule to tell it not to load one particular page and would instead embed that page statically. That's nice, but there are other places where we could use the same thing. This patch generalizes it: * DerivativeResourceLoaderContext may now contain a callback for mapping titles to replacement Content objects. * ResourceLoaderWikiModule::getContent() uses the overrides, and requests embedding when they're used. All subclasses in Gerrit should pick it up automatically. * OutputPage gains methods for callers to add to the override mapping, which it passes on to RL. It loses a bunch of the special casing it had for the 'user' and 'user.styles' modules. * EditPage sets the overrides on OutputPage when doing the preview, as does ApiParse for prop=headhtml. TemplateSandbox does too in I83fa0856. * OutputPage::userCanPreview() gets less specific to editing user CSS and JS, since RL now handles the embedding based on the actual modules' dependencies and EditPage only requests it on preview. ApiParse also gets a new hook to support TemplateSandbox's API integration (used in I83fa0856). Bug: T112474 Change-Id: Ib9d2ce42931c1de8372e231314a1f672d7e2ac0e |
||
|---|---|---|
| .. | ||
| code-coverage | ||
| databases | ||
| html | ||
| kss | ||
| php-memcached | ||
| uidesign | ||
| contenthandler.txt | ||
| database.txt | ||
| deferred.txt | ||
| design.txt | ||
| distributors.txt | ||
| doxygen_first_page.php | ||
| export-0.1.xsd | ||
| export-0.2.xsd | ||
| export-0.3.xsd | ||
| export-0.4.xsd | ||
| export-0.5.xsd | ||
| export-0.6.xsd | ||
| export-0.7.xsd | ||
| export-0.8.xsd | ||
| export-0.9.xsd | ||
| export-0.10.xsd | ||
| export-demo.xml | ||
| extension.schema.v1.json | ||
| extension.schema.v2.json | ||
| globals.txt | ||
| hooks.txt | ||
| injection.txt | ||
| language.txt | ||
| linkcache.txt | ||
| logger.txt | ||
| magicword.txt | ||
| maintenance.txt | ||
| memcached.txt | ||
| ontology.owl | ||
| README | ||
| schema.txt | ||
| scripts.txt | ||
| sitelist-1.0.xsd | ||
| sitelist.txt | ||
| sitescache.txt | ||
| skin.txt | ||
| title.txt | ||
/docs Directory README ====================== The 'docs' directory contain various text files that should help you understand the most important parts of the code of MediaWiki. More in-depth documentation can be found at: https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Code https://www.mediawiki.org/wiki/Special:MyLanguage/Developer_hub API documentation is automatically generated and updated daily at: https://doc.wikimedia.org/mediawiki-core/master/php/html/ You can get a fresh version using 'make doc' or mwdocgen.php in the ../maintenance/ directory. For end users, most of the documentation is located online at: https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents Documentation for MediaWiki site administrators is at: https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Contents