Module:ItemCollection

-- -- LUA script to get Collection Icon for Character

-- Parameters: -- 1: Character Name --     Separate multiple characters with a dollar sign "$" -- 2: Icon Size -- --

local p = {}

local collectionData = mw.loadData( 'Module:CharacterCollection/data' )

function p.getCollection(frame)

local tArgs

if frame == mw.getCurrentFrame then fParent = frame:getParent tArgs = fParent.args

if (fParent.args[1]) then tArgs = fParent.args else tArgs = frame.args end else tArgs = frame end

local character = tArgs[1] or "" local size = tArgs[2]

local withText = false

if not size or size == "" then size = "50" elseif not tonumber(size) then withText = true size = "25" end

character = mw.ustring.gsub(character, "^%s*(.-)%s*$", "%1") or '' character = mw.ustring.lower(character)

local collectionFile = "" local space = "" local collections = {}

for cName in mw.text.gsplit(character, "%s*%$%s*") do       cName = mw.text.decode(cName)

if collectionData[cName] then local coll = collectionData[cName] local file = mw.ustring.gsub(coll, "[\,\.']", "") file = mw.ustring.gsub(file, " ", "_") file = mw.ustring.lower(file)

if not collections[coll] then collectionFile = collectionFile .. space if withText then collectionFile = collectionFile .. ""                       .. coll                        .. " ("                end

collectionFile = collectionFile .. "cc-"                   .. file                    .. "-l.png"

if withText then collectionFile = collectionFile .. ")"                   space = ", "                else                    space = " "                end

collections[coll] = 1

end end end

return collectionFile end

return p

-- --