Module:Interviewee list

local linkUtil = require('Module:LinkUtil') local p = {}

function p.intervieweeList(frame) local args = frame:getParent.args local done = false local wikitext = "" local count = 1 while not done do if args[tostring(count) .. "a"] and args[tostring(count) .. "a"] ~= "" then args[count] = args[tostring(count) .. "a"] end if args["ref" .. tostring(count) .. "a"] and args["ref" .. tostring(count) .. "a"] ~= "" then args["ref" .. tostring(count)] = args["ref" .. tostring(count) .. "a"] end if args[count] and args[count] ~= "" then wikitext = wikitext .. "* " .. linkUtil.stripDab(args[count]) .. "" .. (args["ref" .. tostring(count)] or "") local acount = 97 local adone = false while not adone do				acount = acount + 1 if args[tostring(count) .. string.char(acount)] and args[tostring(count) .. string.char(acount)] ~= "" then if args[tostring(count) .. string.char(acount+1)] and args[tostring(count) .. string.char(acount+1)] then wikitext = wikitext .. ","					else wikitext = wikitext .. (" " .. (args["finsep"] or "&")) end wikitext = wikitext .. " " .. linkUtil.stripDab(args[tostring(count) .. string.char(acount)]) .. "" .. (args["ref" .. tostring(count) .. string.char(acount)] or "") else adone = true end end if args["r" .. tostring(count)] or args["role" .. tostring(count)] then wikitext = wikitext .. ", " .. (args["r" .. tostring(count)] or args["role" .. tostring(count)]) .. "\n" else wikitext = wikitext .. "\n" end else done = true end count = count + 1 end return wikitext:sub(1,-2) end

return p