Module:Infobox road/map/sandbox: Difference between revisions
Appearance
Content deleted Content added
Create sandbox version of Module:Infobox road/map |
Updating to mw.wikibase.getEntityObject; using tabs for indentation |
||
Line 4: | Line 4: | ||
function p.map(frame) |
function p.map(frame) |
||
local argsModule = require("Module:Arguments") |
|||
local args = argsModule.getArgs(frame) |
|||
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself |
|||
local args = pframe.args -- the arguments passed TO the template, in the wikitext that transcludes the template |
|||
⚫ | |||
local map = args.map or '' |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
if map == '' then |
|||
local entity = mw.wikibase.getEntityObject() or {} |
|||
if map == '' then |
|||
local claims = entity.claims or {} |
|||
local mapProp = claims.P15 |
|||
⚫ | |||
local mapProp = claims.p15 |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
end |
|||
end |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
local countrymod = require("Module:Infobox road/meta/mask/country") |
|||
local countryarg = args.country |
|||
local state = args.state or args.province |
|||
⚫ | |||
local state = args.state or args.province |
|||
if countryarg and state then |
|||
⚫ | |||
country = countrymod._country(state, countryarg) |
|||
end |
|||
country = countrymod._country(state, countryarg) |
|||
⚫ | |||
local mapsize = mapsizes[country] or '290' |
|||
local alt = args.map_alt or '' |
|||
⚫ | |||
local alt = args.map_alt or '' |
|||
⚫ | |||
⚫ | |||
⚫ | |||
end |
end |
||
Revision as of 22:26, 20 February 2015
![]() | This is the module sandbox page for Module:Infobox road/map (diff). |
local p = {}
local mapsizes = {["DEU"] = "200", ["USA"] = "290x172"}
function p.map(frame)
local argsModule = require("Module:Arguments")
local args = argsModule.getArgs(frame)
local map_custom = args.map_custom or ''
local map = args.map or ''
if map_custom == "yes" then
return '<span style="white-space:nowrap;">' .. map .. '</span>'
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
local filecode = "[[File:" .. map .. "|"
local countrymod = require("Module:Infobox road/meta/mask/country")
local countryarg = args.country
local state = args.state or args.province
local country = ''
if countryarg and state then
country = countrymod._country(state, countryarg)
end
local mapsize = mapsizes[country] or '290'
local alt = args.map_alt or ''
filecode = filecode .. mapsize .. 'px|alt=' .. alt .. ']]'
return filecode
end
return p