Editace stránky Šablona:IsSelf
Skočit na navigaci
Skočit na vyhledávání
Editace může být zrušena. Prosím, zkontrolujte porovnání níže, abyste se ujistili, že to chcete provést, a poté pro dokončení zrušení editace níže zobrazené změny zveřejněte.
Aktuální verze | Váš text | ||
Řádek 1: | Řádek 1: | ||
<noinclude><code><nowiki>{{IsSelf|{{ns:10}}|IsSelf}}</nowiki></code> = <br /></noinclude>{{ | <noinclude><code><nowiki>{{IsSelf|{{ns:10}}|IsSelf|šablona=IsSelf}}</nowiki></code> = <br /></noinclude>{{ | ||
#ifeq:{{FULLPAGENAME}}|{{{namespace|{{{1|{{{ns|<noinclude>{{ns:10}}</noinclude>}}}}}}}}}:{{ | #ifeq:{{FULLPAGENAME}}|{{{namespace|{{{1|{{{ns|<noinclude>{{ns:10}}</noinclude>}}}}}}}}}:{{{stránka|{{{2|{{{strana|<noinclude>IsSelf</noinclude>}}}}}}}}}|1|0}}{{ | ||
{{ | Povinný parametr|{{{stránka|{{{2|{{{strana|<noinclude>IsSelf</noinclude>}}}}}}}}}|parametr=2 (strana)|stacktrace={{{stacktrace|{{{šablona|}}}}}}>IsSelf}}<noinclude> | ||
---- | |||
Vrací 1, když usoudí, že je právě na té stránce, jako říká vstup. Jinak vrátí 0. | |||
Dobré jako vstup pro testování v podmínkách, typicky v šablonách: | |||
* <nowiki>{{{1|}}}</nowiki> (ns) - [[Nápověda:Jmenný prostor|namespace]], defaultně přednastaveno "", tedy NS hlavního prostoru. Zkus třeba: "<code><nowiki>{{ns:10}}</nowiki></code>" = "{{ns:10}}". | |||
* <nowiki>{{{2}}}</nowiki> (strana) - název stránky, povinný, k testu na shodu s PAGENAME, včetně případných podstránek za lomítky. | |||
Prozor, i v hlavním prostoru může dojít k selfreferenci: Například přes {{šablona|Sloučit}}, kam se název stránky zadává jako vstup. Podobně se uplatní i v šablonách pro kategorie apod. | |||
== Validace == | |||
Šablona je [[tříhodnotová logika|tří-stavová]]: V případě chyby je tato chyba součástí výsledné hodnoty. Tedy nevrací jen číselné hodnoty 0 a 1, ale při chybě i text. | |||
* <code><nowiki>{{IsSelf|{{ns:10}}|oveř stránku|šablona= moje editovaná šablona }}</nowiki></code> = {{IsSelf|{{ns:10}}|oveř stránku|šablona= moje editovaná šablona }} | |||
OK | |||
* <code><nowiki>{{IsSelf|{{ns:XY}}|oveř stránku|šablona= moje editovaná šablona }}</nowiki></code> = {{IsSelf|XY|oveř stránku|šablona= moje editovaná šablona }} | |||
Takový namespace neexistuje, ovšem systém je zde fault=tolerantní a nehlásí chybu, není validováno: Holt by takový test nikdy nevrátil hodnotu "1". Správnost funkce je na editorovi. | |||
* <code><nowiki>{{IsSelf|{{ns:10}}|šablona= moje editovaná šablona }}</nowiki></code> = {{IsSelf|{{ns:10}}|šablona= moje editovaná šablona }} | |||
Název stránky k ověření je požadovaným vstupem. | |||
* <code><nowiki>{{IsSelf|oveř stránku|šablona= moje editovaná šablona }}</nowiki></code> = {{IsSelf|oveř stránku|šablona= moje editovaná šablona }} | |||
Když je vstup "2" požadován, jsou vlastně potřeba oba: i "1", ten před ním. (Tento striktní přísup předchází chybám: zadané vstupy šablona spolkne a už je pro ověření nelze nikde vidět, co za hodnoty že se vlastně předalo. Navíc se tak do šablony snáze copypastuje.) | |||
* <code><nowiki>{{IsSelf||oveř stránku|šablona= moje editovaná šablona }}</nowiki></code> = {{IsSelf||oveř stránku|šablona= moje editovaná šablona }} | |||
OK, takto je jasné, že opravdu dostanete to, co chcete - ověření článku z hlavního prostoru. | |||
* <code><nowiki>{{IsSelf||oveř stránku}}</nowiki></code> = {{IsSelf||oveř stránku}} | |||
Potřebuje název té vaší "právě editované šablony", to kvůli přadáváním "stacktrace" v budoucích chybových hlášeních, až bude tato šablona použita. | |||
== Související šablony == | |||
* {{šablona|isDoc}} | |||
* {{šablona|not}} | |||
* {{šablona|povinný stacktrace}} | |||
* {{šablona|Jen pro kategorie}} | |||
[[Kategorie:Pomocné šablony|{{PAGENAME}}]] | |||
</noinclude> | </noinclude> |