Module:Infobox/Widget/Location: Difference between revisions

From TwogPedia
No edit summary
No edit summary
Line 5: Line 5:
local Location = {}
local Location = {}


function Location.make(countries, cities, category)
function Location.make(countries, cities, category, state)
local container = mw.html.create('div')
local container = mw.html.create('div')
local countryList = mw.text.split(countries, ',')
local countryList = mw.text.split(countries, ',')
Line 20: Line 20:
if cities then
if cities then
div:wikitext(mw.text.trim(mw.text.split(cities, ',')[i]))
div:wikitext(mw.text.trim(mw.text.split(cities, ',')[i]))
else  
else
div:wikitext(country)
div:wikitext(country)
end
end
if state then div:wikitext(', ' .. state) end
container:node(div)
container:node(div)

Revision as of 10:38, 13 October 2022

Documentation for this module may be created at Module:Infobox/Widget/Location/doc

local CountryData = mw.loadData('Module:Localisation/Data')
local Flags = require('Module:Flags')
local String = require('Module:StringUtils')

local Location = {}

function Location.make(countries, cities, category, state)
	local container = mw.html.create('div')
	local countryList = mw.text.split(countries, ',')
	
	for i, v in ipairs(countryList) do
		v = mw.text.trim(v)
		local country = CountryData[string.upper(v)]
		local currentTitle = mw.title.getCurrentTitle().text
		local gameCategory = mw.text.split(currentTitle, '/')[1]
		local flag = Flags.icon(country, category or gameCategory)
		local div = mw.html.create('div')
			:addClass('flag')
			:wikitext(flag)
		if cities then
			div:wikitext(mw.text.trim(mw.text.split(cities, ',')[i]))
		else
			div:wikitext(country)
		end
		if state then div:wikitext(', ' .. state) end
			
		container:node(div)
	end
	
	return container
end

return Location