Module:Road data/strings/USA/MO
Appearance
Documentation for this module may be created at Module:Road data/strings/USA/MO/doc
--[==[
To inspect the content of this data module, use [[Special:ExpandTemplates]]
and enter the following input text:
{{#invoke:Road data/dump|dump|module=Module:<name-of-this-module>}}
To inspect the content of this data module when editing, enter the following
into the Debug console:
local util = require("Module:Road data/util")
print(util.arrayToString(p))
]==]
--Missouri
local MO = require("Module:Road data/strings/USA")
local util = require("Module:Road data/util")
local format = mw.ustring.format
local suffix = " ([dab||%dab%, |]Missouri)"
MO.I.link = {
["72"] = "Interstate 72",
["155"] = "Interstate 155 (Missouri–Tennessee)",
["170"] = "Interstate 170",
["244"] = "Interstate 270 (Missouri–Illinois)",
["255"] = "Interstate 255",
["270"] = "Interstate 270 (Missouri–Illinois)",
["435"] = "Interstate 435",
["635"] = "Interstate 635 (Kansas–Missouri)",
["670"] = "Interstate 670 (Kansas–Missouri)",
default = {
hook = "split",
split = 100,
above = "Interstate %route% (Missouri)",
below = "Interstate %route% in Missouri"
}
}
for k, v in pairs(MO) do if k:find ("^I") then
v.link = MO.I.link
end
end
MO.BL.link = "Interstate %route% Business" .. suffix
for k, v in pairs(MO) do if k:find ("^B%a") then
v.link = MO.BL.link
end
end
MO["I-Bus"] = MO.BL
MO.US.link = "U.S. Route %route% in Missouri"
for k, v in pairs(MO) do if k:find ("^US %d") then
v.name = MO.US.name
v.link = MO.US.link
end
end
MO["US 1978"] = {
shield = {
hook = "splitlen",
split = 3,
above = "US %route% square.svg",
below = "US %route%.svg"
},
base = MO.US.base,
name = MO.US.name,
link = MO.US.link,
abbr = MO.US.abbr,
width = "square",
}
for _,auxType in ipairs({"Alt", "Bus", "Byp", "City", "Conn", "Emerg", "Opt", "Scenic", "Spur", "Temp", "Toll", "Truck"}) do
local spec = MO[" aux "][auxType]
for k, v in pairs(MO) do if k:find (auxType) then if k:find ("^US") then
v.link = MO.US.base .. " " .. spec.name .. " ([dab||%dab%, |]Missouri)"
end
end
end
end
for _,year in ipairs({'1926', '1948', '1961'}) do
for _,auxType in ipairs({"Alt", "Bus", "Byp", "City", "Conn", "Opt", "Scenic", "Spur", "Temp", "Truck"}) do
local type = "US " .. year
local spec = MO[" aux "][auxType]
MO[type .. "-" .. auxType] = {
shield = MO[type].shield,
shieldmain = MO[type].shieldmain,
name = MO[type].name .. " " .. spec.name,
link = MO[type].base .. " " .. spec.name .. suffix,
abbr = MO[type].abbr .. " " .. spec.abbrsuffix,
banner = spec.bannerprefix .. " plate " .. year .. ".svg",
aux = spec.aux,
width = MO[type].width
}
end
end
MO["US 1926-City"].shield = "US %route% City 1926.svg"
MO["US 1926-City"].shieldmain = "US %route% City 1926.svg"
MO["US 1926-City"].banner = ""
MO["US-Bus-Alt"] = {
shield = MO.US.shield,
name = MO["US-Bus"].name .. " Alternate",
link = "U.S. Route %route% Business Alternate ([dab||%dab%, |]Missouri)",
abbr = MO["US-Bus"].abbr .. " Alt.",
banner = "Alternate business plate.svg",
aux = MO[" aux "].Alt,
width = "expand"
}
MO["US-Hist"].link = MO.US.link
MO.Route = {
base = "Missouri Route %route%",
shield = "MO-%route%.svg",
name = "Route %route%",
link = "Missouri Route %route% [dab||(%dab%)|]",
abbr = "Route %route%",
width = "expand"
}
MO.MO = MO.Route
for _,type in ipairs({"Route", "MO"}) do
for _,year in ipairs({"1922", "1926", "1948", "1960"}) do
MO[type .. " " .. year] = {
shield = format("MO-%%route%% (%s).svg", year),
name = MO.Route.name,
link = MO.Route.link,
abbr = MO.Route.abbr,
width = "square",
}
end
end
MO["Route 1960"].shield = MO.Route.shield --until squares are made
MO["MO 1960"] = MO["Route 1960"]
for _,type in ipairs({"Route", "MO"}) do
for _,auxType in ipairs({"Alt", "Bus", "Spur", "Temp",}) do
local spec = MO[" aux "][auxType]
MO[type .. "-" .. auxType] = {
shield = MO[type].shield,
name = MO[type].name .. " " .. spec.name,
link = MO[type].base .. " " .. spec.name .. MO[" dab "],
abbr = MO[type].abbr .. " " .. spec.abbrsuffix,
banner = spec.bannerprefix .. " plate.svg",
aux = spec.aux,
width = "expand"
}
end
end
MO.Bus = MO["Route-Bus"]
MO.Spur = MO["Route-Spur"]
MO.Supp = {
shield = "MO-supp-%route%.svg",
name = MO.Route.name,
link = {
ifexists = true,
default = "Missouri Route %route% (%county% County)"
},
abbr = MO.Route.abbr,
width = "MOSupp"
}
MO.AOTS = {
shield = {
arg = "route",
["27"] = "MO-27.svg",
["61"] = "US 61.svg"
},
link = {
arg = "route",
["27"] = "Avenue of the Saints",
["61"] = "U.S. Route 61 in Missouri"
},
abbr = {
arg = "route",
["27"] = "Route 27",
["61"] = "US 61"
},
banner = "Avenue of the Saints banner.svg",
width = "square"
}
MO["US-AOTS"] = MO.AOTS
MO.CKC = {
shield = "MO-110.svg",
name = "Chicago–Kansas City Expressway",
link = "Chicago–Kansas City Expressway",
abbr = "Route 110 (CKC)",
banner = "Chicago-Kansas City Expressway plate.svg",
width = "wide"
}
-- add new types above this line if you want it to have the state highway browse and maint
for k, v in pairs(MO) do if k:find ("^%a") then
v.maint = "[[Missouri Department of Transportation|MoDOT]]"
v.browse = "[[Missouri State Highway System]]"
v.browselinks = {
[1] = "[[List of Interstate Highways in Missouri|Interstate]]",
[2] = "[[List of U.S. Routes in Missouri|US]]",
[3] = "[[List of state highways in Missouri|State]]",
[4] = "[[Missouri supplemental route|Supplemental]]"
}
end
end
MO.Branson = {
shield = "Branson %route% Route.svg",
name = "%route% Route",
link = "",
abbr = "%route% Route",
maint = "",
bannersuffix = "green"
}
MO.CR.link = {
ifexists = true,
default = "County Road %route% (%county% County, Missouri)",
otherwise = ""
}
MO.CR.maint = ""
MO.SRCR = {
shield = MO.Route.shield,
shieldmain = {MO.Route.shield, MO.CR.shieldmain},
name = MO.Route.name,
link = MO.Route.link,
abbr = MO.Route.abbr,
maint = ""
}
MO.AR = {alias = {module = "USA/AR", type = "AR"}}
MO.IL = {alias = {module = "USA/IL", type = "IL"}}
MO.IA = {alias = {module = "USA/IA", type = "IA"}}
MO.KS = {alias = {module = "USA/KS", type = "K"}}
MO.KY = {alias = {module = "USA/KY", type = "KY"}}
MO.OK = {alias = {module = "USA/OK", type = "OK"}}
MO.TN = {alias = {module = "USA/TN", type = "SR"}}
MO["TN-Sec"] = {alias = {module = "USA/TN", type = "Sec"}}
MO.list = {
shield = "",
link = {
hook = "padroute",
paddedLength = 4,
default = "#MO%paddedRoute%"
},
abbr = MO.Route.abbr
}
return MO