Модуль:Error
Перейти до навігації
Перейти до пошуку
Документація модуля[перегляд] [редагувати] [історія] [очистити кеш]
Цей модуль створює html-повідомлення з класом "error". Це заміна для шаблона {{error}} — детальнішу інформацію про використання можете знайти на його сторінці документації (en).
Документація вище включена з Модуль:Error/документація. (ред. | історія) Дописувачі можуть експериментувати на підсторінках пісочниця (створити | дзеркало) та тести (створити) цього модуля. Будь ласка, додавайте категорії до підсторінки /документація. Підсторінки цієї сторінки. |
-- Модуль для реалізації {{error}}.
local p = {}
local function _error(args)
local message = args.message or args[1] or error('не вказано повідомлення', 2)
message = tostring(message)
local tag = mw.ustring.lower(tostring(args.tag))
-- вибираємо який html-тег нам потрібно.
if not (tag == 'p' or tag == 'span' or tag == 'div') then
tag = 'strong'
end
-- генеруємо html.
local root = mw.html.create(tag)
root
:addClass('error')
:wikitext(message)
return tostring(root)
end
function p.error(frame)
local args
if frame == mw.getCurrentFrame() then
-- Виклик через #invoke. Аргументи передалі модулю з сторінки шаблону,
-- тож використовуємо аргументи, передані в шаблон.
args = frame.args
else
-- Виклик з іншого модуля або з консолі налагодження,
-- тож припускаємо, що аргументи передані напряму.
args = frame
end
-- якщо повідомлення присутнє, але порожнє, міняємо його на nil, щоб Lua
-- розглянула його як false.
if args.message == "" then
args.message = nil
end
return _error(args)
end
return p