Модуль:Сущность: различия между версиями

Нет описания правки
Метка: отменено
Нет описания правки
Метка: ручная отмена
 
Строка 1: Строка 1:
local p = {}
local p = {}
local getArgs = require('Module:Arguments').getArgs
local getArgs = require('Module:Arguments').getArgs
local entityData = require('Module:Сущность/data')
local function trim(s)
    if not s then return "" end
    return mw.text.trim(tostring(s))
end


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 and k ~= "cardTag" and k ~= "tag" and v ~= nil and v ~= "" then
         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
        local cardTagText = entityData.collectCardTagText(frame, args, id)
         text = "{{#if:{{NAMESPACE}}|{{переключатель_проекта|[[Категория:{{NAMESPACE}}:Сущности]]{{NAMESPACE}}}}|[[Категория:Сущности]]{{переключатель_проекта}}}}" .. ajax
        if cardTagText ~= "" then
            params = params .. "|cardTag=" .. cardTagText
        end
         text =
            "{{#if:{{NAMESPACE}}|{{переключатель_проекта|[[Категория:{{NAMESPACE}}:Сущности]]{{NAMESPACE}}}}|[[Категория:Сущности]]{{переключатель_проекта}}}}" ..
            '<span style="display:none;">{{#invoke:CategoryFormatter|main|' .. cardTagText .. '}}</span>' .. ajax
     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 and k ~= "cardTag" and k ~= "tag" then
         if k ~= 1 then
             params = params .. "|" .. k .. "=" .. v
             params = params .. "|" .. k .. "=" .. v
         end
         end
    end
    local cardTagText = entityData.mergeCardTagText(args.cardTag or "", args.tag or "")
    if cardTagText ~= "" then
        params = params .. "|cardTag=" .. trim(cardTagText)
     end
     end