More actions
m debug |
mNo edit summary |
||
Line 12: | Line 12: | ||
} | } | ||
local header_depth = '==' | local header_depth = '==' | ||
local data, errors = mw.ext.externalData.getExternalData(payload) | local data, errors = mw.ext.externalData.getExternalData(payload) | ||
mw.log('PAYLOAD:\n\n' .. util.dump(payload) .. '\n\n') | mw.log('PAYLOAD:\n\n' .. util.dump(payload) .. '\n\n') |
Revision as of 18:55, 18 October 2025
local p = {}
local util = require('Module:Utility')
local url = mw.site.server .. mw.site.scriptPath
function p.category(frame)
local out = {}
local payload = {
source = url .. '/api.php?action=query&format=json&generator=categorymembers&gcmlimit=max&gcmtitle=Category:' .. util.firstToUpper(frame.args[1]),
format = 'json'
}
local header_depth = '=='
local data, errors = mw.ext.externalData.getExternalData(payload)
mw.log('PAYLOAD:\n\n' .. util.dump(payload) .. '\n\n')
mw.log('ERROR :\n\n' .. util.dump(errors) .. '\n\n')
mw.log('DATA :\n\n' .. util.dump(data) .. '\n\n')
for _,page in ipairs(data) do
if (page['title'] ~= nil) then
if (page['title'] ~= frame.args[1]) and (string.find(page['title'],'Category:') == nil) then
table.insert(out, frame:preprocess('\n'.. header_depth .. page['title'] .. header_depth .. '\n'))
table.insert(out, frame:expandTemplate({title=':' .. page['title']}))
table.insert(out, frame:expandTemplate({title='SmallLink', args = { page['title'] } }))
table.insert(out, frame:preprocess('\n----'))
end
end
end
return table.concat(out)
end
return p