Module:Feat: Difference between revisions

From Kronopolis and the Flat Plane
No edit summary
Tag: Reverted
No edit summary
Tag: Manual revert
Line 12: Line 12:
     for _,feat in ipairs(json) do
     for _,feat in ipairs(json) do
         if feat['title'] ~= nil then
         if feat['title'] ~= nil then
             table.insert(out, frame:preprocess("=='''[[" .. feat['title'] .. "]]'''==\n"))
             table.insert(out, frame:preprocess("\n=='''[[" .. feat['title'] .. "]]'''==\n"))
             table.insert(out, frame:expandTemplate({title=':' .. feat['title']}))
             table.insert(out, frame:expandTemplate({title=':' .. feat['title']}))
             table.insert(out, frame:preprocess("\n----"))
             table.insert(out, frame:preprocess("\n----"))

Revision as of 16:21, 16 March 2023

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

local p = {}

local util = require('Module:Utility')

function p.list(frame)
    local out = {}
    local payload = {
        source=mw.site.server .. mw.site.scriptPath .. '/api.php?action=query&format=json&list=categorymembers&cmlimit=max&cmtitle=Category:' .. util.firstToUpper(frame.args[1]) ..'_Feat',
        format='json'
    }
    local json = mw.ext.externalData.getExternalData(payload)
    for _,feat in ipairs(json) do
        if feat['title'] ~= nil then
            table.insert(out, frame:preprocess("\n=='''[[" .. feat['title'] .. "]]'''==\n"))
            table.insert(out, frame:expandTemplate({title=':' .. feat['title']}))
            table.insert(out, frame:preprocess("\n----"))
        end
    end 
    return table.concat(out)
end

return p