Модуль:Сущность: различия между версиями
Материал из Space Station 14 Вики
Pok (обсуждение | вклад) Нет описания правки Метка: отменено |
Pok (обсуждение | вклад) Нет описания правки Метка: ручная отмена |
||
| Строка 1: | Строка 1: | ||
local p = {} | local p = {} | ||
local getArgs = require('Module:Arguments').getArgs | local getArgs = require('Module:Arguments').getArgs | ||
function p.get(frame) | function p.get(frame) | ||
| Строка 19: | Строка 13: | ||
for k, v in pairs(args) do | for k, v in pairs(args) do | ||
if k ~= 1 | if k ~= 1 and v ~= nil and v ~= "" then | ||
params = params .. "|" .. k .. "=" .. v | params = params .. "|" .. k .. "=" .. v | ||
| Строка 29: | Строка 23: | ||
local ajax = "{{ajax|<nowiki>{{#invoke:Сущность/data|get|" .. id .. params .. "}}</nowiki>|auto}}" | local ajax = "{{ajax|<nowiki>{{#invoke:Сущность/data|get|" .. id .. params .. "}}</nowiki>|auto}}" | ||
local text = ajax | local text = ajax | ||
if not hasExtraArgs then | if not hasExtraArgs then | ||
text = "{{#if:{{NAMESPACE}}|{{переключатель_проекта|[[Категория:{{NAMESPACE}}:Сущности]]{{NAMESPACE}}}}|[[Категория:Сущности]]{{переключатель_проекта}}}}" .. ajax | |||
text = | |||
end | end | ||
| Строка 51: | Строка 40: | ||
local params = "" | local params = "" | ||
for k, v in pairs(args) do | for k, v in pairs(args) do | ||
if k ~= 1 | if k ~= 1 then | ||
params = params .. "|" .. k .. "=" .. v | params = params .. "|" .. k .. "=" .. v | ||
end | end | ||
end | end | ||
Текущая версия от 21:33, 3 мая 2026
Для документации этого модуля может быть создана страница Модуль:Сущность/doc
local p = {}
local getArgs = require('Module:Arguments').getArgs
function p.get(frame)
local args = getArgs(frame, { removeBlanks = false })
local id = args[1] or ""
if id == "" then
return ""
end
local params = ""
local hasExtraArgs = false
for k, v in pairs(args) do
if k ~= 1 and v ~= nil and v ~= "" then
params = params .. "|" .. k .. "=" .. v
if k ~= "blacklist" then
hasExtraArgs = true
end
end
end
local ajax = "{{ajax|<nowiki>{{#invoke:Сущность/data|get|" .. id .. params .. "}}</nowiki>|auto}}"
local text = ajax
if not hasExtraArgs then
text = "{{#if:{{NAMESPACE}}|{{переключатель_проекта|[[Категория:{{NAMESPACE}}:Сущности]]{{NAMESPACE}}}}|[[Категория:Сущности]]{{переключатель_проекта}}}}" .. ajax
end
return frame:preprocess(text)
end
function p.preview(frame)
local args = getArgs(frame, { removeBlanks = false })
local id = args[1] or ""
if id == "" then return "" end
local params = ""
for k, v in pairs(args) do
if k ~= 1 then
params = params .. "|" .. k .. "=" .. v
end
end
local text = "{{#invoke:Сущность/data|preview|" .. id .. params .. "}}"
return frame:preprocess(text)
end
return p