Este módulo está classificado como pronto para uso geral. Ele chegou a uma forma madura e pensa-se que está livre de erros e pronto para ser usado onde é apropriado. Ele está pronto para ser mencionado nas páginas de discussão e em outros recursos da Wikipédia como opção para novos usuários aprenderem. Para reduzir cargas nos servidores e mostrar texto estragado, ele deve ser melhorado pelo Exemplos para testes em vez de tentativas de edição a experimentar e erro.
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.
Uso
Para usar este módulo a partir de um outro módulo Lua, primeiro deve carregá-lo.
localmessageBox=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.
localbox=messageBox.main(boxType,{param1=param1,param2=param2,-- Mais parêmetros...})
Veja a página de predefinição de cada tipo de caixa para os parâmetros disponíveis.
Uso a partir de #invoke
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
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.