Last modified: 2006-07-04 12:06:28 UTC

Wikimedia Bugzilla is closed!

Wikimedia has migrated from Bugzilla to Phabricator. Bug reports should be created and updated in Wikimedia Phabricator instead. Please create an account in Phabricator and add your Bugzilla email address to it.
Wikimedia Bugzilla is read-only. If you try to edit or create any bug report in Bugzilla you will be shown an intentional error message.
In order to access the Phabricator task corresponding to a Bugzilla report, just remove "static-" from its URL.
You could still run searches in Bugzilla or access your list of votes but bug reports will obviously not be up-to-date in Bugzilla.
Bug 6505 - Logic error on special page
Logic error on special page
Product: MediaWiki
Classification: Unclassified
Special pages (Other open bugs)
PC Windows XP
: Normal major (vote)
: ---
Assigned To: Nobody - You can work on this!
Depends on:
  Show dependency treegraph
Reported: 2006-07-01 08:44 UTC by Ian Shortman ([[en:User:Ian13]])
Modified: 2006-07-04 12:06 UTC (History)
0 users

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Description Ian Shortman ([[en:User:Ian13]]) 2006-07-01 08:44:55 UTC
When on Special:Undelete (as sysop) on en.wikipedia, AfD templates (which have
been subst:'ed) appear as if they are not.

The logic: {{#if:{{{nosubst|}}}|<div style="display:none;">}} is used, and it
seems that on Special:Undelete it is stateing something isn't subst:'ed when it is.

An example can be seen
here] (sysop flag needed), and clicking preview.
Comment 1 Brion Vibber 2006-07-01 17:13:38 UTC
That sounds pretty straightforward. It's not being substed, 
it's being displayed... ?

Or I'm not sure I understand.
Comment 2 Ian Shortman ([[en:User:Ian13]]) 2006-07-01 17:54:12 UTC
Yes - but the thing is that it is substed, the logic just seems to be returning
the wrong result.
Comment 3 Ian Shortman ([[en:User:Ian13]]) 2006-07-01 17:56:34 UTC
To clarify: The AfD template has a check to see if it is substed, and if it
isn't it blanks the page and gives a notice (through {{#if:{{{nosubst|}}}|<div

In what I am refering to, it has been substed, and therefore displayed fine when
it wasn't deleted. However - when you look at it through Special:Undelete now it
has been deleted - the logic seems to give the result of it not being substed -
whereas it really is/was.
Comment 4 Brion Vibber 2006-07-01 17:57:23 UTC
I don't understand how this logic is actually meant to detect 
substing. How is it meant to work?
Comment 5 Ian Shortman ([[en:User:Ian13]]) 2006-07-01 18:00:20 UTC
THe full code at the top of the AfD notice is:

{{#if:{{{nosubst|}}}|<div style="display:none;">}} {{#ifeq:{{NAMESPACE}}||
|{{error:not substituted|AFD}}<div

This is on a page where the notice was substed, and therefore the page and AfD
notice displayed as it was meant to. For some odd reason, the logic seems broken
in Special:Undelete, and it acts asif the template wasn't substed (even though
it was), and returns "<template error: this template must be substituted. Please
replace {{AFD}} with {{subst:AFD}}.>".
Comment 6 Brion Vibber 2006-07-01 18:30:45 UTC
This code is completely illegible, and I don't see how it's 
intended to work. In what way is this supposed to detect 
substing? It looks at best very fragile and unreliable.
Comment 7 omniplex 2006-07-03 21:41:23 UTC
Probably a kludge to activate includeonly-subs magic
for CURRENT-variables. Combining it with [[WP:HIDE]]
is utter dubious. A clean substitution won't leave
relics of parser functions on the page, the template
appears to be broken.

See [[Help:Subsititution]] on Meta, getting it right
in combination with defaults and parser functions is
NOT trivial. 
Comment 8 Paolo Liberatore 2006-07-04 12:06:28 UTC
A valid (so far) trick for checking subst is used in [[Template:Prod]]. Of
course, changing [[Template:AfD]] won't fix the pages that are already deleted
with the AfD template substituted.

Note You need to log in before you can comment on or make changes to this bug.