No edit summary Tag: Reverted |
mNo edit summary |
||
(17 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
local util = require('Module:Utility') | local util = require('Module:Utility') | ||
local url = mw.site.server .. mw.site.scriptPath | |||
function p.list(frame) | function p.list(frame) | ||
local out = {} | local out = {} | ||
local payload = { | local payload = { | ||
source= | source=url .. '/api.php?action=query&format=json&list=categorymembers&cmlimit=max&cmtitle=Category:' .. util.firstToUpper(frame.args[1]) ..'_Feat', | ||
format='json' | format='json' | ||
} | } | ||
local json = mw.ext.externalData.getExternalData(payload) | local json = mw.ext.externalData.getExternalData(payload) | ||
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( | if (feat['title'] ~= frame.args['category']) and (string.find(feat['title'],'Category:') == nil) and (string.find(feat['title'],'feat/List') == nil) and (string.find(feat['title'],'-Level') == nil) then | ||
table.insert(out, frame:preprocess('\n===' .. feat['title'] .. '===\n')) | |||
table.insert(out, frame:expandTemplate({title='SmallLink', args = { feat['title'] } })) | |||
table.insert(out, frame:expandTemplate({title=':' .. feat['title']})) | |||
table.insert(out, frame:preprocess('\n----')) | |||
end | |||
end | end | ||
end | end |
Latest revision as of 17:53, 5 March 2024
Documentation for this module may be created at Module:Feat/doc
local p = {} local util = require('Module:Utility') local url = mw.site.server .. mw.site.scriptPath function p.list(frame) local out = {} local payload = { source=url .. '/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 if (feat['title'] ~= frame.args['category']) and (string.find(feat['title'],'Category:') == nil) and (string.find(feat['title'],'feat/List') == nil) and (string.find(feat['title'],'-Level') == nil) then table.insert(out, frame:preprocess('\n===' .. feat['title'] .. '===\n')) table.insert(out, frame:expandTemplate({title='SmallLink', args = { feat['title'] } })) table.insert(out, frame:expandTemplate({title=':' .. feat['title']})) table.insert(out, frame:preprocess('\n----')) end end end return table.concat(out) end return p