"साचा:When pagename is" च्या विविध आवृत्यांमधील फरक

Content deleted Content added
Fixing matching order for "/something" and "/some*".
Using the parameter pipe-trick instead of #ifeq, to detect defined parameters. Much more efficient, and shorter and clearer code. Then it needs the surrounding whitespace stripping.
ओळ १:
{{#if:x <!--Remove surrounding whitespace-->
| <!--Check for match with full pagename-->
-->{{#ifeq: {{{ {{#if:{{{page|}}}| {{{page|}}} | {{FULLPAGENAME}} }}|x }}} | {{{ {{#if:{{{page|}}}| {{{page|}}} | {{FULLPAGENAME}} }}| }}}
| {{{ {{#if:{{{page|}}}| {{{page|}}} | {{FULLPAGENAME}} }} }}} <!--Has data, or is empty but defined-->
| <!--Else, are we on a subpage or a basepage?-->
{{#if:{{#titleparts:{{#if:{{{page|}}}| {{{page|}}} | {{FULLPAGENAME}} }}|0|2}}
| <!--We are on a subpage, check for match with "User:Somepage/"-->
{{#ifeq: {{{ {{#titleparts:{{#if:{{{page|}}}| {{{page|}}} | {{FULLPAGENAME}} }}|1|1}}/|x
}}} | <!--Check for match with "Somepage/"-->
{{{ {{#titleparts:{{#if:{{{page|}}}| {{PAGENAME:{{{page|}}}}} | {{FULLPAGENAMEPAGENAME}} }}|1|1}}/| }}}
| <!--Check for match with "/something"-->
| {{{ {{#titleparts:{{#if:{{{page|}}}| {{{page|}}} | {{FULLPAGENAME}} }}|1|1}}/| }}}
-->{{#ifeq: {{{ {{#if:{{{page|}}}| {{{page|}}} | {{FULLPAGENAME}} }}|x }}} | {{{ /{{#titleparts:{{#if:{{{page|}}}| {{{page|}}} | {{FULLPAGENAME}} }}| }0|-1}}
| <!--Check for match with "Somepage/some*"-->
{{#ifeq: {{{ {{#titleparts:{{#if:{{{page|}}}| {{PAGENAME:{{{page|}}}}} | {{PAGENAME}} }}|1|1}}/|x }}} | {{{ {{#titleparts:{{#if:{{{page|}}}| {{PAGENAME:{{{page|}}}}} | {{PAGENAME}} }}|1|1}}/| }}}
| {{{ /{{lc: {{padleft:|4| {{#titleparts:{{#if:{{{page|}}}| {{PAGENAME:{{{page|}}}}} | {{PAGENAMEFULLPAGENAME}} }}|10|-1}}/| }} }}*
| {{{subpage| {{{other|}}} }}} <!--Respecting empty parameter on purpose-->
| <!--Check for match with "/something"-->
}}}
{{#ifeq: {{{ /{{#titleparts:{{#if:{{{page|}}}| {{{page|}}} | {{FULLPAGENAME}} }}|0|-1}}|x }}} | {{{ /{{#titleparts:{{#if:{{{page|}}}| {{{page|}}} | {{FULLPAGENAME}} }}|0|-1}}| }}}
}}}
| {{{ /{{#titleparts:{{#if:{{{page|}}}| {{{page|}}} | {{FULLPAGENAME}} }}|0|-1}}| }}} <!--Defined-->
}}}
| <!--Check for match with "/some*"-->
}}}
{{#ifeq: {{{ /{{padleft:|4| {{lc: {{#titleparts:{{#if:{{{page|}}}| {{{page|}}} | {{FULLPAGENAME}} }}|0|-1}} }} }}*|x }}} | {{{ /{{padleft:|4| {{lc: {{#titleparts:{{#if:{{{page|}}}| {{{page|}}} | {{FULLPAGENAME}} }}|0|-1}} }} }}*| }}}
| <!--CheckWe are on a basepage, check for match with "/some*Somepage"-->
| {{{ /{{padleft:|4| {{lc: {{#titleparts:{{#if:{{{page|}}}| {{{page|}}} | {{FULLPAGENAME}} }}|0|-1}} }} }}*| }}} <!--"/some*"-->
| {{{ {{#titleparts:{{#if:{{{page|}}}| {{PAGENAME:{{{page|}}}}} | {{FULLPAGENAMEPAGENAME}} }}|1|1}}/| }}}
| {{{subpage| {{{other|}}} }}} <!--Respecting empty parameter on purpose-->
| {{{basepage| {{{other|}}} }}} <!--Respecting empty parameter on purpose-->
}}
}}}
}} <!--End if, are we on a subpage or a basepage?-->
}}
}}}
| <!--We are on a basepage, check for match with "Somepage"-->
{{#ifeq: {{{ {{#if:{{{page|}}}| {{PAGENAME:{{{page|}}}}} | {{PAGENAME}} }}|x }}} | {{{ {{#if:{{{page|}}}| {{PAGENAME:{{{page|}}}}} | {{PAGENAME}} }}| }}}
| {{{ {{#if:{{{page|}}}| {{PAGENAME:{{{page|}}}}} | {{PAGENAME}} }} }}} <!--Defined-->
| {{{basepage| {{{other|}}} }}} <!--Respecting empty parameter on purpose-->
}}
}}
}}<noinclude>