Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Cultopedia
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Module:Flag
Module
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
local margs = require('Module:Arguments') local function _main(frame, name, mode, key) local categories = { ['Flag icon'] = '[[Category:Flag icons missing country data templates]]{{Preview warning|unrecognized country in Template:flag icon}}', ['Flag decoration'] = '[[Category:Flag decoration missing country data templates]]', } local yesno = require('Module:Yesno') --Get input arguments local args = margs.getArgs(frame, { frameOnly = ((frame.args.frameonly or '') ~= ''), valueFunc = function(argkey,value) if value then value = mw.text.trim(value) --Change empty string to nil for all args except 'image' and 'border' if argkey=="image" or argkey=="border" or value~="" then return value end end return nil end } ) local preftext, sufftext = "", "" if name == 'Flag+link' then args.pref = args[1] elseif name == 'Flag athlete' then args.preftext = args[1] args[2] = args.code or args[2] or "" args.variant = args.variant or args[3] elseif name == 'Flag medalist' then preftext = (args[1] or "") .. "<br/>" args[2] = args.code or args[2] or "" args.variant = args.variant or args[3] elseif name == 'Flag link' then args.suff = args[2] args[2] = args[1] or "" args.variant = args.variant or args[3] elseif key ~= nil then args.variant = args.variant or args[1] args[2] = key else sports = { ['3x3'] = '3x3', bb = 'bb', fb = 'fb', ['fb-rt'] = 'fb', fbicon = 'fb', ru = 'ru', fba = 'fba', fbaicon = 'fba' } if sports[name]then args.avar = args[1] and sports[name] or nil if name == 'fb' and yesno(args.align) == true then args.align='c' elseif sports[name] == 'fba' then if args[1] then local list = require("Module:Fba/list") local old = ((args.old or "") ~= "") and "_old" or "" local country = args[1] local fba = list.fbas[country .. old] if not fba then -- look for aliases local countryTable = require('Module:CountryData').getcachedtable(frame, country) if countryTable and countryTable.alias then country = countryTable.alias fba = list.fbas[country .. old] end end if args.name == "code" then args.name = list.codes[country] or country elseif args.name == "full" then args.name = fba end if fba then mode = string.gsub(mode, "p", "c") args.link = fba end args.altlink = args.old elseif args.name == "code" or args.name == "full" then args.name = "" end end elseif name == "Flag team" and (args.code or args[1]) then sufftext = ' <span style="font-size:90%;">('..(args.code or args[1])..')</span>' end 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 check = '' if name == 'Flag icon' and mw.title.getCurrentTitle().namespace == 0 then local unknown = '[[Category:Pages using ' .. mw.ustring.lower(name) .. ' template with unknown parameters|_VALUE_' .. frame:getParent():getTitle() .. ']]' 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','frameonly' } check = require('Module:Check for unknown parameters')._check(opts,args) end return preftext .. require('Module:Flagg').luaMain(frame,args) .. sufftext .. check end local p = { [''] = function (frame) return _main(frame, 'Flag', 'unc' ) end, decoration = function (frame) return _main(frame, 'Flag decoration', 'uxx' ) end, icon = function (frame) return _main(frame, 'Flag icon', 'cxxl' ) end, link = function (frame) return _main(frame, 'Flag link', 'unpe' ) end, ['+link'] = function (frame) return _main(frame, 'Flag+link', 'unpefo') end, u = function (frame) return _main(frame, 'Flag', 'unu' ) end, country = function (frame) return _main(frame, 'Flag country', 'unce' ) end, list = function (frame) return _main(frame, 'Flag list', 'usc' ) end, team = function (frame) return _main(frame, 'Flag team', 'unce' ) end, athlete = function (frame) return _main(frame, 'Flag athlete', 'unape' ) end, medalist = function (frame) return _main(frame, 'Flag medalist', 'unce' ) end, ['3x3'] = function (frame) return _main(frame, '3x3', 'unpe' ) end, bb = function (frame) return _main(frame, 'bb', 'unpe' ) end, fb = function (frame) return _main(frame, 'fb', 'unpe' ) end, fba = function (frame) return _main(frame, 'fba', 'unpe' ) end, ['fb-rt'] = function (frame) return _main(frame, 'fb-rt', 'unpre' ) end, fbicon = function (frame) return _main(frame, 'fbicon', 'pxxl' ) end, fbaicon = function (frame) return _main(frame, 'fbaicon', 'pxxl' ) end, ru = function (frame) return _main(frame, 'ru', 'unpe' ) end, IOC = function (frame) return require('Module:Country_alias').flagIOC(frame:newChild{ title = 'Template:Flag IOC' }) end, IOC2 = function (frame) return require('Module:Country_alias').flagXYZ(frame:newChild{ title = 'Template:Flag IOC 2', args = {name = margs.getArgs(frame).name or '', type = 'name'} }) end, IOCathlete = function (frame) return require('Module:Country_alias').flagXYZ(frame:newChild{ title = 'Template:Flag IOC athlete', args = {type = 'athlete-O'} }) end, } p['deco'] = p.decoration p['IOC 2'] = p.IOC2 p['IOC athlete'] = p.IOCathlete return setmetatable (p, {['__index'] = -- returns table p with the metatable __index set so that, if the table KEY isn't recognized, it returns function (_, key) -- this anonymous function called as function(p, KEY) return function (frame) return _main(frame, 'Flag', 'unc', key) end -- which interprets the module call as {{flag|KEY}} and passes it to _main() end })
Summary:
Please note that all contributions to Cultopedia may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Cultopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Template used on this page:
Module:Flag/doc
(
edit
)
Search
Search
Editing
Module:Flag
Add topic