Шаблон:If empty

Из Википедије, слободне енциклопедије
Иди на навигацију Иди на претрагу
Документација шаблона[погледај] [уреди] [историја] [освежи]

Ово је {{If empty}} шаблон. Не треба га поистовећивати са шаблоном {{Ifempty}}.

  • Ажурирање 23. децембра 2014. (на енглеској Википедији): Овај шаблон је могао користити максимално 9 параметара. Овај лимит је уклоњен.

Овај шаблон је намењен за употребу у другим шаблонима. Обрађује било који број параметара и враћа први пронађени који је дефинисан и који није празан. Ако ниједан овакав параметар није пронађен, шаблон неће вратити никакав резултат. Типична употреба је следећа:

{{If empty |{{{лого|}}} |{{{датотека|}}} |{{{слика|}}} |default.svg}}
(„Врати параметар {{{лого|}}} уколико има неку вредност; ако параметар {{{лого|}}} није дефинисан, врати параметар {{{датотека|}}} уколико има неку вредност; ако параметар {{{датотека|}}} није дефинисан, врати параметар {{{слика|}}} уколико има неку вредност; у осталим случајевима врати „default.svg”.”)

Оваква употреба враћа први од параметара лого, датотека и слика (редом) који је дефинисан и који није празан; у осталим случајевима враћа „default.svg”.

Образложење[уреди]

Медијавики подразумевана функција за параметре не враћа подразумевану вредност за празне параметре. То јест, {{{лого|default.svg}}} не враћа „default.svg” уколико је шаблон написан на следећи начин: {{шаблон|лого=}}.

Уобичајено алтернативно решење за један параметар је:

{{#if:{{{лого|}}} |{{{лого}}} |default.svg}}
(„Ако параметар {{{лого}}} има вредност, врати параметар {{{лого}}}; у осталим случајевима врати „default.svg”.”)

Међутим, ово постаје све више и више комплексно како број параметара који захтевају проверу расте:

{{#if:{{{лого|}}} |{{{лого}}} |{{#if:{{{датотека|}}} |{{{датотека}}} |{{#if:{{{слика|}}} |{{{слика}}} |default.svg}} }} }}
(„Ако параметар {{{лого}}} има вредност, врати параметар {{{лого}}}; ако параметар {{{лого}}} нема вредност и ако параметар {{{датотека}}} има вредност, врати параметар {{{датотека}}}; ако параметар {{{датотека}}} нема вредност и ако параметар {{{слика}}} има вредност, врати параметар {{{слика}}}; у осталим случајевима врати „default.svg”.”)

У овим случајевима, {{if empty}} омогућава коришћење једноставније синтаксе, која за случај изнад гласи:

{{if empty |{{{лого|}}} |{{{датотека|}}} |{{{слика|}}} |default.svg}}

Коришћење усправне црте[уреди]

Параметри коришћени са шаблоном {{if empty}} морају бити са усправном цртом — тј. морају укључивати симбол усправну црту (линију) („|”) као пратећи карактер (симбол, знак, глиф) — тако да празан или недефинисан параметар не би био третиран као текст и враћен погрешно. Дакле, на пример, {{{лого|}}}, {{{датотека|}}} и {{{слика|}}} требају бити коришћени уместо |лого=, |датотека= и |слика= (редом) у примерима изнад.

Примери[уреди]

Код Резултат
{{if empty}} Враћа празан низ (ниску, стринг).
{{if empty|један}} један Враћа први параметар који је дефинисан и који није празан.
{{if empty|један|два}} један
{{if empty|један|два|три|четири}} један
{{if empty||два}} два Први параметар је празан/недефинисан, тако да се исти прескаче.
{{if empty||два|три|четири}} два
{{if empty||два||четири}} два
{{if empty||||||||||десет}} десет За разлику од претходних верзија шаблона, овај шаблон више није ограничен на само 9 параметара.
{{if empty|}} Једини параметар који постоји је празан или недефинисан, тако да се враћа празан низ (ниска, стринг).
{{if empty||||}} Враћа празан низ (ниску, стринг).
{{if empty|{{{1|}}}|{{{2|}}}|три}} три
{{if empty|{{{1}}}|{{{2}}}|три}} {{{1}}} Без усправних црта после имена првих двају параметара („1” и „2”), тако да се први од њих враћа као обични текст („{{{1}}}”).
{{if empty|{{{лого|}}}|два}} два
{{if empty|{{{лого}}}|два}} {{{лого}}} Без усправних црта после имена првог параметра („лого”), тако да се исти враћа као обични текст („{{{лого}}}”).
{{if empty|p=q}} Шаблон идентификује параметре које прима као параметре 1 до 9, а не користећи имена као што је „p” и сл.

Види још[уреди]