After T200185: Create a Special:DisabledSpecialPage to be used instead of Special:BlankPage is done, we can change the special page to give a better message to users.
Description
Details
Project | Branch | Lines +/- | Subject | |
---|---|---|---|---|
operations/mediawiki-config | master | +1 -1 | Change Special:ItemDisambiguation from blank special page to disabled page |
Status | Subtype | Assigned | Task | ||
---|---|---|---|---|---|
Resolved | PRODUCTION ERROR | Addshore | T195520 Multiple projects reporting Cannot access the database: No working replica DB server | ||
Open | None | T96040 Wikibase special pages (tracking) | |||
Open | None | T195754 Re-enable Special:ItemDisambiguation | |||
Duplicate | • Ladsgroup | T216397 Make Special:ItemDisambiguation use SpecialDisabledPage instead of SpecialBlankPage |
Event Timeline
Change 491237 had a related patch set uploaded (by Ladsgroup; owner: Ladsgroup):
[operations/mediawiki-config@master] Change Special:ItemDisambiguation from blank special page to disabled page
Change 491237 merged by jenkins-bot:
[operations/mediawiki-config@master] Change Special:ItemDisambiguation from blank special page to disabled page
I did it in a wrong way (I didn't read the manual, it's my fault and I'm sorry).
Now doing it in my localhost to test it properly:
The reason is that SpecialWikibasePage::getDescription() overrides the default one and there is no way to fix it.
There are three options here:
- Add $description as an argument (or a setter) to DisabledSpecialPage and then get it deployed, then fix it properly in prod. Not much work, not very nice either (It piles up more arguments to DisabledSpecialPage)
- Rename 'special-itemdisambiguation' i18n message key to 'itemdisambiguation' and all of wikibase special pages. It would be lots of work
- Make a duplicated i18n entry in WikimediaMessages extension for this particular entry and leave it there until we turn this special page back on. (Can we have alias for i18n keys? It would be awesome!). This one is basically no work but the drawback is that all of the title translations need to be repeated in all languages that have it.
What do you think @Addshore @Lucas_Werkmeister_WMDE @alaa_wmde @WMDE-leszek @RazShuty ?
Other suggestions:
- Make ItemDisambiguation a subclass of DisabledSpecialPage (and rename its execute() to something else, e. g. executeIsDisabled(), so that DisabledSpecialPage::execute() is still in effect), with an appropriate `getDescription() method.
- Make a new class DisabledSpecialWikibasePage extending DisabledSpecialPage and overriding getDescription() just like SpecialWikibasePage.
We want to make this special page work for third parties. This case is something only for WMF production.