Модуль:Error
Версія від 10:10, 17 вересня 2015, створена Олександр Юрійович Старовєров (обговорення | внесок) (1 версія)
-- Модуль для реалізації Шаблон: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