Module:Flag
Documentation for this module may be created at Module:Flag/doc
local p = {} function p._main(frame, name, mode, check) local categories = { Flagicon = '[[Category:Flagicons with missing country data templates]]', Flagdeco = '[[Category:Flagdeco with missing country data templates]]', } local yesno = require('Module:Yesno') --Get input arguments local args = require('Module:Arguments').getArgs(frame,{frameOnly = ((frame.args.frameonly or '') ~= ''), valueFunc = function(key,value) if value then value = mw.text.trim(value) --Change empty string to nil for all args except 'image' and 'border' if key=="image" or key=="border" or value~="" then return value end end return nil end }) local preftext = "" if name == 'Flag+link' then args.pref = args[1] elseif name == 'Flagathlete' then args.preftext = args[1] args[2] = args.code or args[2] or "" args.variant = args.variant or args[3] elseif name == 'Flagmedalist' then preftext = (args[1] or "") .. "<br/>" args[2] = args.code or args[2] or "" args.variant = args.variant or args[3] else args.variant = args.variant or args[2] args[2] = args[1] or "" end args[1] = mode .. (args.opts or '') args.missingcategory = categories[name] args.noredlink = args.noredlink or 'notext' if args.placeholder and yesno(args.placeholder) ~= true then args[1] = args[1] .. 'o' end if mw.title.getCurrentTitle().namespace == 0 then local unknown = '[[Category:Pages using ' .. mw.ustring.lower(name) .. ' template with unknown parameters|_VALUE_' .. frame:getParent():getTitle() .. ']]' else local unknown = '' end if check then local opts = { unknown=unknown, preview='Page using [[Template:' .. name .. ']] with unknown parameter "_VALUE_"', ignoreblank='y', '1', '2', 'variant', 'image', 'size', 'sz', 'border', 'align', 'al', 'width', 'w', 'alt', 'ilink', 'noredlink', 'missingcategory', 'name', 'clink', 'link', 'pref', 'suff', 'plink', 'the', 'section', 'altvar', 'avar', 'age', 'nalign', 'nal', 'text', 'nodata', 'opts', 'placeholder', 'getParent' } check = require('Module:Check for unknown parameters')._check(opts,args) else check = '' end return preftext .. require('Module:Flagg').luaMain(frame,args) .. check end function p.main(frame) return p._main(frame, 'Flag', 'unc', false) end p.flag = p.main p[''] = p.main function p.deco(frame) return p._main(frame, 'Flagdeco', 'uxx', false) end p.flagdeco = p.deco function p.icon(frame) return p._main(frame, 'Flagicon', 'cxxl', true) end p.flagicon = p.icon function p.pluslink(frame) return p._main(frame, 'Flag+link', 'unpefo', false) end p['+link'] = p.pluslink p['flag+link'] = p.pluslink function p.country(frame) return p._main(frame, 'Flagcountry', 'unce', false) end p.flagcountry = p.country function p.athlete(frame) return p._main(frame, 'Flagathlete', 'unape', false) end p.flagathlete = p.athlete function p.medalist(frame) return p._main(frame, 'Flagmedalist', 'unce', false) end p.flagmedalist = p.medalist return p