Saltar para o conteúdo

Módulo:Message box/doc

Fonte: Wikinotícias

Este é um metamódulo que implementa as predefinições de message box {{mbox}}, {{ambox}}, {{cmbox}}, {{fmbox}}, {{imbox}}, {{ombox}} e {{tmbox}}. Destina-se a ser usado a partir de módulos Lua e não deve ser usado diretamente de páginas wiki. Se quiser usar a funcionalidade deste módulo, por favor use as predefinições de message box individuais em vez disso.

Para usar este módulo a partir de um outro módulo Lua, primeiro deve carregá-lo.

local messageBox = require('Módulo:Message box')

Para criar uma message box (caixa de mensagem), use a função main. Ela leva dois parâmetros: o primeiro é o tipo da caixa (como um string), e o segundo é uma tabela que contém os parâmetros da message box.

local box = messageBox.main( boxType, {
    param1 = param1,
    param2 = param2,
    -- Mais parêmetros...
})

Há sete tipos de caixa disponíveis:

Tipo de caixa Predefinição Propósito
mbox {{mbox}} Para message boxes para serem usadas em múltiplos espaços nominais
ambox {{ambox}} Para message boxes para artigos
cmbox {{cmbox}} Para message boxes para categorias
fmbox {{fmbox}} Para message boxes de interface
imbox {{imbox}} Para message boxes para o espaço nominal ficheiro
tmbox {{tmbox}} Para message boxes para páginas de discussão
ombox {{ombox}} Para message boxes noutros espaços nominais

Veja a página de predefinição de cada tipo de caixa para os parâmetros disponíveis.

Uso a partir de #invoke

[editar código-fonte]

Assim como a função main, este módulo possui funções separadas para cada tipo de caixa. Elas são acessadas ao usar o código {{#invoke:Message box|mbox|...}}, {{#invoke:Message box|ambox|...}}, etc. Estas irão funcionar quando chamadas de outros módulos, mas elas acessam código para processar argumentos passados desde #invoke, e, assim, chamá-las fará com que sejam menos eficientes do que chamar main.

Detalhes técnicos

[editar código-fonte]

O módulo usa o mesmo código básico para cada uma das predefinições listadas acima; as diferenças entre cada uma delas são configuradas ao usar os dados em Módulo:Message box/configuration. Aqui estão as várias opções de configuração e o que significam:

  • types - uma tabela que contém dados usados pelo parâmetro tipo da message box. As chaves da tabela são valores que podem ser passados ao parâmetro tipo, e os valores da tabela são tabelas que contêm a classe e a imagem usada por esse tipo.
  • default - o tipo para usar caso nenhum valor foi passado ao parâmetro tipo ou se um valor inválido foi especificado.
  • showInvalidTypeError - se mostrar um erro caso o valor passado ao parâmetro tipo foi inválido.
  • allowBlankParams - normalmente valores em branco são retirados de parâmetros passados ao nódulo. Contudo, whitespce (espaço em branco) é preservado para os parâmetros incluídos na tabela allowBlankParams.
  • allowSmall - se uma versão pequena da message box pode ser produzida com "pequeno=sim".
  • smallParam - um nome personalizado para o parâmetro small. Por exemplo, se definido como "esquerda" pode produzir uma message box pequena ao usar "pequeno=esquerda".
  • smallClass - a classe para usar para message boxes pequenas.
  • substCheck - se performar uma checagem de subst ou não.
  • classes - um array de classes para usar com a message box.
  • imageEmptyCell - se usar uma célula <td>...</td> vazia caso não haja imagem definida. É usada para preservar espaçamento para message boxes com uma largura de menos de 100% do ecrã.
  • imageEmptyCellStyle - se as células de imagem vazias devem ser estilizadas.
  • imageCheckBlank - se "imagem=em branco" resulta em nenhuma imagem a ser exibida.
  • imageSmallSize - normalmente, imagens usadas em message boxes peqenas são definidas para 30x30px. Isto define um tamanho personalizado.
  • imageCellDiv - se colocar a imagem numa div para forçar um tamanho de imagem máximo.
  • useCollapsibleTextFields - se usar campos de texto que podem ser desmontados, i.e "problema", "conserto", "discussão" etc. Atualmente somente usado em ambox.
  • imageRightNone - se imagemdireita=nenhuma resulta em nenhuma imagem a ser exibida no lado direto da message box.
  • sectionDefault - o nome padrão para o parâmetro "secção". Depende de useCollapsibleTextFields.
  • allowMainspaceCategories - permitir categorização no espaço nominal principal.
  • templateCategory - o nome da the name of a category to be placed on the template page.
  • templateCategoryRequireName - se o parâmetro nome é requerido para exibir a categoria da predefinição.
  • templateErrorCategory - o nome da categoria de erro a ser usada na página da predefinição.
  • templateErrorParamsToCheck - um array de nomes de parâmetros para checar. Caso não haja algum, a templateErrorCategory é aplicada à página da predefinição.