Модуль:chemcard

Вернуться

Строка 80: Строка 80:
     local inner = html.create("div"):addClass("chem-recipe")
     local inner = html.create("div"):addClass("chem-recipe")


    -- INPUTS (левая колонка)
     local inputsDiv = html.create("div"):addClass("recipe-inputs")
     local inputsDiv = html.create("div"):addClass("recipe-inputs")
     for _, it in ipairs(rec.inputs) do
     for _, it in ipairs(rec.inputs) do
         local item = inputsDiv:tag("div"):addClass("recipe-item")
         local item = inputsDiv:tag("div"):addClass("recipe-item")
         item:tag("img"):attr("src", "Beaker.png"):attr("alt", "Колба"):addClass("chem-beaker")
        -- Используем MediaWiki-синтаксис файла — надёжно рендерится
        item:tag("span"):addClass("recipe-item-text"):wikitext(it.name .. " [" .. it.qty .. "]")
         item:wikitext('[[File:Beaker.png|36px|class=chem-beaker]] ' .. it.name .. ' [' .. it.qty .. ']')
     end
     end
     inner:node(inputsDiv)
     inner:node(inputsDiv)


    -- Действие
     if rec.action ~= "" then
     if rec.action ~= "" then
         local actionDiv = inner:tag("div"):addClass("recipe-action")
         local actionDiv = inner:tag("div"):addClass("recipe-action")
         actionDiv:tag("span"):wikitext(rec.action)
         actionDiv:wikitext(rec.action)
     end
     end


    -- OUTPUTS (правая колонка)
     local outputsDiv = html.create("div"):addClass("recipe-outputs")
     local outputsDiv = html.create("div"):addClass("recipe-outputs")
     for _, it in ipairs(rec.outputs) do
     for _, it in ipairs(rec.outputs) do
         local item = outputsDiv:tag("div"):addClass("recipe-item")
         local item = outputsDiv:tag("div"):addClass("recipe-item")
         item:tag("img"):attr("src", "Beaker.png"):attr("alt", "Колба"):addClass("chem-beaker")
         item:wikitext('[[File:Beaker.png|36px|class=chem-beaker]] ' .. it.name .. ' [' .. it.qty .. ']')
        item:tag("span"):addClass("recipe-item-text"):wikitext(it.name .. " [" .. it.qty .. "]")
     end
     end
     inner:node(outputsDiv)
     inner:node(outputsDiv)