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

Нет описания правки
Нет описания правки
 
(не показано 6 промежуточных версий этого же участника)
Строка 30: Строка 30:
local isWrap = argsRaw.wrapper ~= nil
local isWrap = argsRaw.wrapper ~= nil
local isVert = argsRaw.vertical ~= nil
local isVert = argsRaw.vertical ~= nil
 
-- Если id найден в JsonPaths, префиксы не нужны
local hasId = (JsonPaths.has(id) == true)
local hasId = (JsonPaths.has(id) == true)
local projPrefix = hasId and '' or JsonPaths.prefix()
local projPrefix = hasId and JsonPaths.prefix() or ''
local projPrefixFile = hasId and '' or JsonPaths.prefixFile()


-- Получение имени
-- Получение имени
local nameStr = frame:preprocess(
local nameStr = frame:preprocess(
string.format('{{#invoke:Entity Lookup|getname|%s}}', id)
string.format('{{#invoke:Entity Lookup|getname|%s}}', id)
)
local linkNameStr = frame:preprocess(
string.format('{{#invoke:Entity Lookup|getname|%s|suffix=1}}', id)
)
)


Строка 44: Строка 46:
local labelRaw = argsRaw.label or argsRaw.l
local labelRaw = argsRaw.label or argsRaw.l
local label = (labelRaw == nil and nameStr) or (labelRaw == '' and '' or labelRaw)
local label = (labelRaw == nil and nameStr) or (labelRaw == '' and '' or labelRaw)
local linkRaw = argsRaw.link
local linkRaw = argsRaw.link
local linkTgt = linkRaw == nil and '' or (linkRaw == '' and nameStr or linkRaw)
local linkTgt = linkRaw == nil and '' or (linkRaw == '' and linkNameStr or linkRaw)


if linkTgt ~= '' and projPrefix ~= '' then
if linkTgt ~= '' and projPrefix ~= '' then
Строка 54: Строка 57:


-- Изображение
-- Изображение
local imgFile = argsRaw.image or argsRaw.img or (id .. '.png')
local imgFile = argsRaw.image or argsRaw.img or (JsonPaths.prefixFile(id) .. '.png')
if imgFile ~= '' and projPrefixFile ~= '' then
imgFile = projPrefixFile .. imgFile
end
 
local img = imgFile ~= '' and formatImage(imgFile, size, linkTgt) or ''
local img = imgFile ~= '' and formatImage(imgFile, size, linkTgt) or ''
if argsRaw.imageTooltip then
if argsRaw.imageTooltip then