Ajuda:If defined call

If defined call é um método criado pelo utilizador Rorro da Wikipédia em inglês, de modo a se poder utilizar if's no MediaWiki.

O método consiste da utilização de algumas predefinições; veja abaixo alguns exemplos.

Predefinições editar

Exemplos editar

Basicamente estas predefinições servem para verificar se um parâmetro numa predefinição se encontra ou não preenchida, caso esteja a predefinição mostrar o valor preenchido e mais algum código numa predefinição à parte. O melhor será mesmo ver os exemplos até que um colaborador que tenha dormido bem possa esclarecer isto melhor.

If defined call editar

Esta é uma das predefinições menos utilizadas, ou nunca utilizada, pois simplesmente apenas verifica se o valor existe, e caso exista mostra o valor, senão, esconde. Note que isto o sistema das predefinições já consegue fazer.

If defined call1 editar

Esta é a predefinição mais utilizada, o que faz tal como todas é verificar se um parâmetro se encontra preenchido ou não, se não, não devolve nada. Se tiver, aí já faz duas funções.

  1. Chama uma predefinição à parte da qual onde está a ser utilizada, no qual vai ter o conteúdo que o editor deseja que apareça em conjunto com o valor.
  2. Envia o valor para a nova predefinição.

Código fonte de uma predefinição chamada Predefinição de testes

{| border="1" cellspacing="1" cellpadding="1"
|-
| colspan="2" | Esta é uma predefinição de testes, e este é um conteúdo que não interessa para nada.
|-
| Parâmetro
| Valor
|-
{{if defined call1 | {{{valor}}} | Predefinição de testes/valor | {{{valor}}}}}
|-
|}

Código para utilização da predefinição:

{{predefinição de testes|
| valor=
|}

O parâmetro não foi preenchido, logo o resultado será:

Esta é uma predefinição de testes, e este é um conteúdo que não interessa para nada.
Parâmetro Valor
{{predefinição de testes|
| valor=1997
|}

O parâmetro foi preenchido, assim será incluido o código na predefinição Predefinição de testes/valor, juntamente com o parâmetro valor.

Esta é uma predefinição de testes, e este é um conteúdo que não interessa para nada.
Parâmetro Valor
Parâmetro 1997

If defined call3 editar

Esta predefinição além de ser utilizada para verificar se um parâmetro se encontra preenchido ou não, para o mostrar ou esconder faz mais duas tarefas além das duas básicas.

  1. Chama uma predefinição à parte, no qual vai ter o conteúdo que o editor deseja que apareça em conjunto com o valor.
  2. Envia o valor principal para a nova predefinição.
  3. Envia o segundo valor para a nova predefinição.
  4. Envia o terceiro valor para a nova predefinição.

Como tal esta predefinição é muito útil para predefinições que pedem os parâmetros aos editores para incluirem imagens. Por exemplo, até hoje em algumas predefinições podia-se utilizar dois métodos para inclusão de imagens.

Pedir ao editor para para preencher alguns campos, e a predefinição criava o código da imagem:

<div id="umadivdetestes">
[[Imagem:{{{imagem}}}|center|{{{img-tam}}}|{{{img-des}}}]]
</div>
{{predefinição para testes|
|imagem=Wiki.png
|img-tam=135px
|img-des=Descrição do logotipo da Wikipédia
|}

Com este método o editor teria de preencher menos valores, mas se caso não existi-se uma imagem para colocar, seria necessário colocar uma imagem transparente (por exemplo,  ), no qual ficaria um espaço com no mínimo 6 por 6 pixeis.

No segundo método, o editor precisa de preencher o código completo:

<div id="umadivdetestes">
uma imagem: {{{imagem}}}
</div>
{{predefinição para testes|
|imagem=[[Imagem:Wiki.png|center|135px|Descrição do logotipo da Wikipédia]]
|}

Agora o código com a utilização do método if defined call

{| border="1" cellspacing="1" cellpadding="1"
|-
! colspan="2" | {{{nome}}}
|-
{{if defined call3 | {{{imagem}}} | Predefinição de testes/imagem | {{{imagem}}} | {{{img-tam}}} | {{{img-des}}}}}
|-
| Endereço
| {{{endereço}}}
|-
|}
{{predefinição de testes|
| nome=Wikipédia
| endereço=http://www.wikipedia.org
| imagem=Wikipedia-logo-pt.png
| img-tam=135px
| img-des=Descrição do logotipo da Wikipédia
|}

Todos parâmetros foram preenchidos, logo não haverá qualquer problema:

Wikipédia
 
Descrição do logotipo da Wikipédia
Endereço http://www.wikipedia.org

E caso os valores da imagem, principalmente o valor imagem, não sejam preenchidos, apenas é mostrado:

Wikipédia
Endereço http://www.wikipedia.org