Module:ListParserTooltip

-- (prevents literal interpretation of links or categories within the module code) -- Lua Templating for, and any other templates requiring items to be listed in a series. local p = {}

local itemTemplate = ' %s '

-- Usage: -- Ex: function p.Adventurers(frame) local names = frame.args[1] return p._Adventurers(names) end

function p._Adventurers(names) local result = {}

for name in mw.text.gsplit(names, ',') do   name = mw.text.trim(name) if name ~= '' then result[#result+1] = string.format(itemTemplate, icon('Adventurer', name), name) end end

return table.concat(result, '') end

-- Usage: -- Ex: function p.Dragons(frame) local names = frame.args[1] return p._Dragons(names) end

function p._Dragons(names) local result = {}

for name in mw.text.gsplit(names, ',') do   name = mw.text.trim(name) if name ~= '' then result[#result+1] = string.format(itemTemplate, icon('Dragon', name), name) end end

return table.concat(result, '') end

-- Usage: -- Ex: function p.Wyrmprints(frame) local names = frame.args[1] return p._Wyrmprints(names) end

function p._Wyrmprints(names) local result = {}

for name in mw.text.gsplit(names, ',') do   name = mw.text.trim(name) if name ~= '' then result[#result+1] = string.format(itemTemplate, icon('Wyrmprint', name), name) end end

return table.concat(result, '') end

-- Usage: -- Ex: function p.Weapons(frame) local names = frame.args[1] return p._Weapons(names) end

function p._Weapons(names) local result = {}

for name in mw.text.gsplit(names, ',') do   name = mw.text.trim(name) if name ~= '' then result[#result+1] = string.format(itemTemplate, icon('Weapon', name), name) end end

return table.concat(result, '') end

-- Common templating functions

-- function icon(type, name) local frame = mw.getCurrentFrame return frame:expandTemplate{title='TooltipIcon', args={type, name, text=1}} end

return p --