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

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T8505, the corresponding Phabricator task for complete and up-to-date bug report information.
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.