Документация Документация

Популярные функции общего назначения.

local p = {}

p.currentTitleFull = mw.title.getCurrentTitle().fullText


-- викиссылка
function p.make_wikilink(link, label)
	return '[[' .. link .. '|' .. label .. ']]'
end


-- ссылка на другой проект или язык, не викифицированная
function p.make_interlink(prj_code, lang, title)
	local l = ''; if lang and lang ~= RU then l = ':' .. lang end
	local c = ''; if prj_code ~= 's' then c = ':' .. prj_code end
	if not title:find('^:') then title = ':' .. title end
	local link = c .. l .. title
	return link
end


-- внешняя ссылка
function p.make_ext_link(url, text)
	return '[' .. url .. ' ' .. text .. ']'
end


-- загрузка данных в формате JSON с указанной страницы
function p.get_json(page_name)
	return mw.text.jsonDecode(mw.title.new(page_name):getContent())
end


-- проверка переменной, возврат её или nil если пустая
function p.is(var)
	if (var == '' or var == nil) then return nil  else return var end
end


-- проверка наличия переменной в не ассоциативной таблице (массиве)
function p.in_table(tbl, value)
	for _, v in ipairs(tbl) do if v == value then return true end end
end


return p