Module:Road data/strings/KSI

From Omniversalis

Documentation for this module may be created at Module:Road data/strings/KSI/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))
To inspect a particular route type, change `p` above to include the route type,
e.g., `p.I` and `p["US-Hist"]`.
]==]

-- Sierra
local KSI = {}

local util = require("Module:Road data/util")

local format = mw.ustring.format

--[[ REGION-SPECIFIC SETTINGS ]]--
KSI[" common "] = {
	country = "Sierra",
	locations = {
		indep_city = {
			linksuffix = ", %region%",
			prefix = "[[Administrative divisions of Sierra#Municipalities|City]] of ",
			jcttoparticle = "the "
		},
		sub1 = {
			linksuffix = " County, %region%",
			jcttopnamesuffix = " County"
		},
		sub2 = {
			linksuffix = "[sub1dab||, %sub1dab% County|], %region%"
		},
		sub2areas = {
			city = {
				linksuffix = " (city)",
				jcttoparticle = "the ",
				nameprefix = "City of "
			},
			town = {
				linksuffix = " (town)",
				jcttoparticle = "the ",
				nameprefix = "Town of "
			},
			township = {
				linksuffix = " Township",
				namesuffix = " Township",
			},
			village = {
				linksuffix = " (village)",
				jcttoparticle = "the ",
				nameprefix = "Village of "
			}
		}
	}
}

--[[ ROUTE TYPES ]]--
-- disambiguation switch
KSI[" dab "] = "[dab|| (%dab%)|]"

-- definitions for auxiliary routes
KSI[" aux "] = {
	Alt = {
		name = "Alternate",
		abbrsuffix = "Alt.",
		bannerprefix = "Alt"
	},
	Bus = {
		name = "Business",
		abbrsuffix = "Bus."
	},
	Byp = {
		name = "Bypass",
		abbrsuffix = "Byp.",
		bannerprefix = "By-pass",
		aux = "[[Bypass (road)|Bypass]]"
	},
	Conn = {
		name = "Connector",
		abbrsuffix = "Conn."
	},
	Loop = {name = "Loop"},
	Scenic = {name = "Scenic"},
	Spur = {name = "Spur"},
	Truck = {name = "Truck"},
}
-- fill out default values
for _,entry in pairs(KSI[" aux "]) do
	entry.abbrsuffix = entry.abbrsuffix or entry.name
	entry.bannerprefix = entry.bannerprefix or entry.name
	entry.aux = entry.aux or format("[[%s route]]", entry.name)
end

-- &nbsp; is nonbreaking space.
-- &#8209; is nonbreaking hyphen.

KSI.I = {
	base = "Interprovincial %route%",
	shield = "Interprovincial %route%.png",
	name = "Interprovincial %route%",
	link = "Interprovincial %route%" .. KSI[" dab "],
	abbr = "I&#8209;%route%",
	bannersuffix = "blue",
	browse = {
		{link = "Interprovincial Highway System", bold = true},
		{
			noprint = true,
			{link = "List of Interprovincial Highways", name = "Main"},
			{link = "List of auxiliary Interprovincial Highways", name = "Auxiliary"},
			{link = "List of suffixed Interprovincial Highways", name = "Suffixed"},
			{link = "List of business routes of the Interprovincial Highway System", name = "Business"}
		}
	}
}

KSI["I-Alt"] = {
	shield = KSI.I.shield,
	name = KSI.I.name .. " Alternate",
	link = KSI.I.base .. " Alternate" .. KSI[" dab "],
	abbr = KSI.I.abbr .. " Alt.",
	banner = "Alternate plate blue.svg",
	bannersuffix = KSI.I.bannersuffix,
	aux = "{{W|Alternate route}}",
	browse = KSI.I.browse
}

KSI["I-Toll"] = {
	shield = KSI.I.shield,
	name = KSI.I.name .. " Toll",
	link = KSI.I.link,
	abbr = KSI.I.abbr,
	banner = "Toll plate yellow.svg",
	bannersuffix = KSI.I.bannersuffix,
	browse = KSI.I.browse
}

KSI["I-Future"] = {
	shield = "Interprovincial %route% (Future).png",
	name = KSI.I.name,
	link = KSI.I.link,
	abbr = "Future " .. KSI.I.abbr,
	bannersuffix = KSI.I.bannersuffix,
	browse = KSI.I.browse
}

KSI.Future = KSI["I-Future"]

KSI.BL = {
	shield = "Business Loop %route% (Sierra).png",
	name = KSI.I.name .. " Business",
	link = KSI.I.base .. " Business" .. KSI[" dab "],
	abbr = KSI.I.abbr .. " Bus.",
	aux = "{{W|List of business routes of the Interstate Highway System|Business route}}",
	browse = USA.I.browse
}

KSI.BS = {
	shield = "Business Spur %route%.svg",
	name = KSI.BL.name,
	link = KSI.BL.link,
	abbr = KSI.I.abbr .. " BS",
	aux = KSI.BL.aux,
	browse = KSI.I.browse
}

KSI.KS = {
	base = "K.S. Route %route%",
	shield = "K.S. Route %route%.png",
	name = "K.S. Route %route%",
	link = "K.S. Route %route%" .. KSI[" dab "],
	abbr = "K.S.&nbsp;%route%",
	browse = {
		{link = "K.S. National Highway System", bold = true},
		{
			noprint = true,
			{link = "List of K.S. Routes", name = "Main"},
			{link = "List of bannered K.S. Routes", name = "Bannered"},
			{link = "List of divided K.S. Routes", name = "Divided"},
			{link = "List of highways bypassed by Interprovincial Highways", name = "Replaced"}
		}
	}
}

for _,auxType in ipairs({"Alt", "Bus", "Byp", "Conn", "Scenic", "Spur", "Truck"}) do
	local spec = KSI[" aux "][auxType]
	KSI["K.S.-" .. auxType] = {
		shield = KSI.KS.shield,
		name = KS.KS.name .. " " .. spec.name,
		link = KSI.KS.base .. " " .. spec.name .. KSI[" dab "],
		abbr = KSI.KS.abbr .. " " .. spec.abbrsuffix,
		banner = spec.bannerprefix .. " plate.svg",
		aux = spec.aux,
		browse = KSI.KS.browse
	}
end

KSI["KS-Hist"] = {
	shield = "K.S. Route %route% (historic).png",
	name = KSI.US.name .. " Historic",
	link = KSI.US.base .. KSI[" dab "],
	abbr = "Historic " .. KSI.KS.abbr .. KSI[" dab "],
	browse = KSI.KS.browse
}

return KSI