Module:Current RfX explained

-- This module gets information about RfXes (requests for adminship and requests for bureaucratship)-- that are currently open. It can return a list of page names or a list of rfx objects found using-- .

local rfx = require('Module:Rfx')local p = local exceptions = -- Get an array of title objects for current RfXs.function p.titles local content = mw.title.new('Wikipedia:Requests for adminship'):getContent local ret = for transclusion in string.gmatch(content, '') do transclusion = transclusion:gsub('|.*$', ) -- Discard parameters local title = mw.title.new(transclusion) if title and title.namespace

4 and (-- Wikipedia namespace title.rootText

'Requests for adminship' or title.rootText

'Requests for bureaucratship' ) and title.isSubpage and title.baseText

title.rootText and -- Is first-level subpage not exceptions[title.subpageText ] then ret[#ret + 1] = title end end return retend

-- Get an array of page names for current RfXs.function p.rfxNames local titles = p.titles local ret = for i, title in ipairs(titles) do ret[#ret + 1] = title.prefixedText end return retend

-- Get a table of RfA and RfB arrays containing rfx objects for current rfxes.function p.rfx local rfa, rfb =, local rfxNames = p.rfxNames for i, rfxName in ipairs(rfxNames) do local rfxObj = rfx.new(rfxName) if rfxObj then local rfxType = rfxObj.type if rfxType

'rfa' then rfa[#rfa + 1] = rfxObj elseif rfxType

'rfb' then rfb[#rfb + 1] = rfxObj end end end return end

return p