Šablona:IsSelf: Porovnání verzí

Z Enviwiki
Skočit na navigaci Skočit na vyhledávání
cs>Oashi
m (--Povinný parametr šablona - duplicitni volani)
cs>Oashi
m (odstraneni duplicitniho volani dokonceno: --default (ten jen do prikladu tady))
Řádek 1: Řádek 1:
<noinclude><code><nowiki>{{IsSelf|{{ns:10}}|IsSelf|šablona=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>}}}}}}}}}:{{{stránka|{{{2|{{{strana|<noinclude>IsSelf</noinclude>}}}}}}}}}|1|0}}{{
#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)|šablona={{{šablona|IsSelf}}}}}<noinclude>
Povinný parametr|{{{stránka|{{{2|{{{strana|<noinclude>IsSelf</noinclude>}}}}}}}}}|parametr=2 (strana)|šablona={{{šablona|<noinclude>IsSelf</noinclude>}}}}}<noinclude>
----
----
Vrací 1, když usoudí, že je právě na té stránce, jako říká vstup. Jinak vrátí 0.
Vrací 1, když usoudí, že je právě na té stránce, jako říká vstup. Jinak vrátí 0.

Verze z 7. 1. 2014, 03:15

{{IsSelf|{{ns:10}}|IsSelf|šablona=IsSelf}} =
1


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:

  • {{{1|}}} (ns) - namespace, defaultně přednastaveno "", tedy NS hlavního prostoru. Zkus třeba: "{{ns:10}}" = "Šablona".
  • {{{2}}} (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 {{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ří-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.

  • {{IsSelf|{{ns:10}}|oveř stránku|šablona= moje editovaná šablona }} = 0

OK


  • {{IsSelf|{{ns:XY}}|oveř stránku|šablona= moje editovaná šablona }} = 0

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.


  • {{IsSelf|{{ns:10}}|šablona= moje editovaná šablona }} = 0Věci přenesené přes šablony z cs:wiki Šablona „moje editovaná šablona“ požaduje hodnotu v parametru „2 (strana)“, ta ale chybí!

Název stránky k ověření je požadovaným vstupem.


  • {{IsSelf|oveř stránku|šablona= moje editovaná šablona }} = 0Věci přenesené přes šablony z cs:wiki Šablona „moje editovaná šablona“ požaduje hodnotu v parametru „2 (strana)“, ta ale chybí!

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.)


  • {{IsSelf||oveř stránku|šablona= moje editovaná šablona }} = 0

OK, takto je jasné, že opravdu dostanete to, co chcete - ověření článku z hlavního prostoru.


  • {{IsSelf||oveř stránku}} = 0Věci přenesené přes šablony z cs:wiki Šablona pro stacktrace požaduje stacktrace nebo název šablony: „|stacktrace={{{stacktrace|}}}>editovaná šablona“ nebo alespoň „|šablona=editovaná šablona“. Ani jeden z těchto parametrů však nebyl obdržen!

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