Page MenuHomePhabricator

VisualEditor/NWE does not handle 'preloadparams' with explicit indexes
Closed, ResolvedPublic

Description

VisualEditor/NWE does not handle 'preloadparams' with explicit indexes.

To reproduce:

Expected: the prefilled page content starts with {{edit fully-protected|Template:Submit an edit request|answered=no}}
Actual: the prefilled page content starts with {{$1|$2|answered=no}}

This works correctly in old wikitext editor.


The parameters can be given in implicit order, which works fine:

...&preloadparams[]=a&preloadparams[]=b

But also in explicit order, which we are not handling correctly:

...&preloadparams[0]=a&preloadparams[1]=b

Notably, core MediaWiki redirect special pages like Special:NewSection and Special:MyPage will generate URLs in the second format. I noticed the problem while testing the patch for T231088.

Event Timeline

Change 532424 had a related patch set uploaded (by Bartosz Dziewoński; owner: Bartosz Dziewoński):
[mediawiki/extensions/VisualEditor@master] DesktopArticleTarget.init: Improve handling of 'preloadparams'

https://gerrit.wikimedia.org/r/532424

Change 532782 had a related patch set uploaded (by Bartosz Dziewoński; owner: Bartosz Dziewoński):
[mediawiki/core@master] mw.Uri: Add support for array parameters with explicit indexes

https://gerrit.wikimedia.org/r/532782

Change 532782 merged by jenkins-bot:
[mediawiki/core@master] mw.Uri: Add support for array parameters with explicit indexes

https://gerrit.wikimedia.org/r/532782

Change 532782 had a related patch set uploaded (by Bartosz Dziewoński; owner: Bartosz Dziewoński):
[mediawiki/core@master] mw.Uri: Add support for array parameters with explicit indexes

https://gerrit.wikimedia.org/r/532782

Could you also add a test to assert behaviour of a foo[…?]=… param under the default settings? (arrayParams=false) This would verify that the added handling is correctly conditional and not leaked or bypassed.

Change 532993 had a related patch set uploaded (by Bartosz Dziewoński; owner: Bartosz Dziewoński):
[mediawiki/core@master] mw.Uri: Add another test for arrayParams

https://gerrit.wikimedia.org/r/532993

Change 532424 merged by jenkins-bot:
[mediawiki/extensions/VisualEditor@master] DesktopArticleTarget.init: Improve handling of 'preloadparams'

https://gerrit.wikimedia.org/r/532424

Change 532993 merged by jenkins-bot:
[mediawiki/core@master] mediawiki.Uri: Add another test for arrayParams

https://gerrit.wikimedia.org/r/532993

ppelberg claimed this task.