Jump to content

Module:FlexGallery

From Climbopedia
Revision as of 03:42, 21 August 2025 by Karl (talk | contribs)

Documentation for this module may be created at Module:FlexGallery/doc

local p = {}
local width
local images = {}
local thumbnails = {}
local gallery

-- frame.args

p.hi = function(frame)
    for k, v in pairs(frame.args) do
        v = v:gsub("[\n\r\]", "")
        v = tostring(v)
        if k == 1 then
            width = tonumber(v)
        elseif (k % 2) == 0 then
            table.insert(images, tostring(v))
        else
            table.insert(thumbnails, tostring(v))
        end
    end
    local gallery = "<div><ul>"
    for k, v in pairs(images) do
        local line = string.format("[[%s|thumb|none|%spx|%s]]",
                                   v, width, thumbnails[k])
        local li = mw.html.create('li')
        li
            :css("display", "inline-block")
            :css("vertical-align", "top")
            :wikitext(frame:preprocess(line))
        gallery = gallery .. tostring(li) .. "\n"
     end
     gallery = gallery .. "</ul></div>"
     return frame:preprocess(gallery)
end

return p