Module:Infobox road/map: Difference between revisions

From Pantonian Republic Wiki
Jump to navigation Jump to search
m (1 revision imported)
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 11: Line 11:
if args.map_custom == "yes" then
if args.map_custom == "yes" then
return format('<div style="white-space:nowrap;">%s</div>', map)
return format('<div style="white-space:nowrap;">%s</div>', map)
end
if map == '' then
local entity = mw.wikibase.getEntityObject() or {}
local claims = entity.claims or {}
local mapProp = claims.P15
if not mapProp or mapProp[1].mainsnak.snaktype ~= 'value' then
return ""
end
map = mapProp[1].mainsnak.datavalue.value
end
end



Latest revision as of 09:27, 22 November 2023

Documentation for this module may be created at Module:Infobox road/map/doc

local p = {}

local format = mw.ustring.format

local mapsizes = {
	DEU = "200",
}

function p._map(args)
	local map = args.map or ''
	if args.map_custom == "yes" then
		return format('<div style="white-space:nowrap;">%s</div>', map)
	end

	local mapsize = mapsizes[args.country] or '300'
	local alt = args.map_alt or ''
	return format("[[File:%s|%spx|alt=%s]]", map, mapsize, alt)
end

function p.map(frame)
	local argsModule = require("Module:Arguments")
	local args = argsModule.getArgs(frame)
	local state = args.state or args.province
	if not args.country then
		local countryMask = mw.loadData("Module:Road data/countrymask")
		args.country = countryMask[state]
	end
	return p._map(args)
end

return p