Documentation for this module may be created at Module:Tattoo/doc
local p = {} local cargo = mw.ext.cargo function p.Main( frame ) local t = {} local tables = 'Commendations' local fields = 'Commendation' local args = { where = 'Recipient = "' .. frame.args[1] .. '" AND Commendation LIKE "Highlander %" AND Approved = true' } local results = cargo.query( tables, fields, args ) local tattoo_id = 0 for n = 1, #results do if results[n].Commendation == "Highlander I" then tattoo_id = math.max(tattoo_id, 1) elseif results[n].Commendation == "Highlander II" then tattoo_id = math.max(tattoo_id, 2) elseif results[n].Commendation == "Highlander III" then tattoo_id = math.max(tattoo_id, 3) elseif results[n].Commendation == "Highlander IV" then tattoo_id = math.max(tattoo_id, 4) end end local results = cargo.query( tables, fields, args ) local args = { where = 'Recipient = "' .. frame.args[1] .. '" AND Commendation LIKE "Tattoo:%" AND Approved = true' } local results = cargo.query( tables, fields, args ) local output = "[[Image:Tattoo_" .. tattoo_id .. ".png|frameless|600px]]" .. [[<div style="position:relative;">]] local i = 0 local d = 140 local r = 30 -- n = 1, #results for n = 1, #results do local x = math.cos(math.rad(i*r)) * d local y = math.sin(math.rad(i*r)) * d*1.3 output = output .. [[<span style="position:absolute; margin-top:-310px; margin-left:calc(50% + 0px); left:calc(]] .. x .. [[px - 15px); top:calc(]] .. y .. [[px - 15px);">]].. "[[Image:" .. results[n].Commendation .. "|30px]]" .. [[</span>]] i = i + 1 if i > (360/r) then i = 0 d = d + 40 r = r / 1.5 end end return output .. "</div>" end return p
Categories:
No categories