Модуль:Message box/doc: различия между версиями
ru>Iniquity (→Технические детали: рус) |
imported>Mikhail м (1 версия импортирована) |
(нет различий)
|
Текущая версия от 15:42, 19 ноября 2022
Время | Внимание! Это один из самых используемых модулей. |
Файл:Padlock-silver.svg | Этот модуль относится к критическим. У него очень много включений или он используется с подстановкой. Из-за опасности вандализма или ошибочного редактирования он был защищён. |
Файл:OOjs UI icon notice-warning.svg | Прежде чем вносить какие-либо изменения в данный модуль, просьба оттестировать их в /песочнице и проверить результат на странице с /контрольными примерами. Изменения могут быть внесены после этого в данный модуль всего одной правкой. |
Файл:Lua-logo-nolabel.svg | Этот шаблон частично реализован на основе Lua:
|
Файл:OOjs UI icon info.svg |
Этот модуль предназначен для создания шаблонов-сообщений ({{mbox}}, {{ambox}}, {{cmbox}}, {{fmbox}}, {{imbox}}, {{ombox}} и {{tmbox}}), также он может использоваться другими модулями. Этот модуль не должен вызываться напрямую из статей, для этого используйте один из вышеперечисленных шаблонов-сообщений.
Использование
Чтобы использовать данный модуль в другом модуле, нужно для начала загрузить его:
local messageBox = require('Module:Message box')
Чтобы создать шаблон-сообщение, используйте функцию main
. У неё есть 2 параметра: первый — тип шаблона, второй — таблица с параметрами шаблона.
local box = messageBox.main( boxType, {
param1 = param1,
param2 = param2,
-- Еще параметры...
})
Существует 7 вариантов оформления в зависимости от пространства имен, в котором располагается шаблон:
Функция | Шаблон | Тип страницы |
---|---|---|
mbox |
{{mbox}} | определяется автоматически |
ambox |
{{ambox}} | статьи |
cmbox |
{{cmbox}} | категории |
fmbox |
{{fmbox}} | страницы интерфейса |
imbox |
{{imbox}} | файлы |
tmbox |
{{tmbox}} | страницы обсуждения |
ombox |
{{ombox}} | другие пространства имен |
Подробнее о дополнительных параметрах шаблонов см. их документации.
Вызов через #invoke
Помимо функции main
, в модуле есть отдельные функции для каждого типа сообщений. Они вызываются кодом {{#invoke:Message box|mbox|...}}
, {{#invoke:Message box|ambox|...}}
и т. д. Также эти функции могут быть вызваны другими модулями, однако это менее эффективно, чем вызов функции main
.
Технические детали
Все перечисленные выше шаблоны основаны на одном базовом коде, а различия между каждым из них настраиваются на отдельной странице. Ниже перечислены различные параметры конфигурации:
types
— таблица, содержащая данные, используемые типами сообщения. Ключи таблицы — это значения, которые можно передать определенному типу сообщения, а значения таблицы — это таблицы, содержащие класс и изображение, используемые этим типом.default
— тип, используемый, если параметру типа не было передано значение или если было указано недопустимое значение.showInvalidTypeError
— показывать ли ошибку, если значение, переданное параметру типа, было недопустимым.allowBlankParams
— обычно пустые значения удаляются из параметров, передаваемых модулю. Однако пробел сохраняется для параметров, включенных в таблицуallowBlankParams
.allowSmall
— можно ли создать уменьшенную версию сообщения с помощью|small=yes
.smallParam
— пользовательское имя для малого параметра. Например, если установлено значениеleft
, вы можете создать малое сообщение, используя|small=left
.smallClass
— класс, используемый для малых сообщений.substCheck
— выполнять проверку подстановки или нет.classes
— массив классов для использования в сообщении.imageEmptyCell
— использовать ли пустую ячейку<td></td>
, если нет набора изображений. Это используется для сохранения интервалов между окнами сообщений шириной менее 100 % экрана.imageEmptyCellStyle
— следует ли стилизовать пустые ячейки изображения.imageCheckBlank
— приводит ли|image=blank
к отсутствию изображения.imageSmallSize
— обычно изображения, используемые в малых сообщениях, имеют размер 30x30px. Этот параметр устанавливает пользовательский размер.imageCellDiv
— следует ли заключать изображение в div, обеспечивая максимальный размер изображения.useCollapsibleTextFields
— использовать ли текстовые поля, которые можно свернуть, то есть|issue=
,|fix=
,|talk=
и т. д. В настоящее время используется только в ambox.imageRightNone
— если|imageright=none
приводит к тому, что изображение не отображается в правой части окна сообщения.allowMainspaceCategories
— разрешить категоризацию в основном пространстве имен.templateCategory
— название категории для размещения на странице шаблона.templateCategoryRequireName
— требуется ли параметр|name=
для отображения категории шаблона.templateErrorCategory
— имя категории ошибок, которая будет использоваться на странице шаблона.templateErrorParamsToCheck
— массив имен параметров для проверки. Если таковые отсутствуют, к странице шаблона применяетсяtemplateErrorCategory
.