Editace stránky Šablona:IsSelf

Skočit na navigaci Skočit na vyhledávání

Varování: Nejste přihlášen(a). Pokud uložíte jakoukoli editaci, vaše IP adresa bude zveřejněna v historii této stránky. Pokud se přihlásíte nebo si vytvoříte účet, vaše editace budou připsány vašemu uživatelskému jménu a získáte i další výhody.

Editace může být zrušena. Zkontrolujte a pak potvrďte změny zobrazené níže.

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>}}}}}}}}}:{{ucfirst:{{{stránka|{{{2|{{{strana|<noinclude>IsSelf</noinclude>}}}}}}}}}}}|1|0}}<noinclude>
+
#ifeq:{{FULLPAGENAME}}|{{{namespace|{{{1|{{{ns|<noinclude>{{ns:10}}</noinclude>}}}}}}}}}:{{{stránka|{{{2|{{{strana|<noinclude>IsSelf</noinclude>}}}}}}}}}|1|0}}{{
{{Dokumentace}}<!-- KATEGORIE, PROSÍME, PŘIDÁVEJTE DO /doc PODSTRÁNKY. DĚKUJEME -->
+
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>

Všechny příspěvky do Enviwiki jsou zveřejňovány podle licencí Creative Commons Uveďte autora – Zachovejte licenci 3.0 Unported (podrobnosti najdete na Enviwiki:Autorské právo). Pokud si nepřejete, aby váš text byl nemilosrdně upravován a volně šířen, pak ho do Enviwiki neukládejte.
Uložením příspěvku se zavazujete, že je vaším dílem nebo je zkopírován ze zdrojů, které nejsou chráněny autorským právem (tzv. public domain). NEVKLÁDEJTE DÍLA CHRÁNĚNÁ AUTORSKÝM PRÁVEM BEZ DOVOLENÍ!

Storno Pomoc při editování (otevře se v novém okně)
Náhled stránky s touto šablonou