--[==[
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"]`.
]==]

-- Alberta
local AB = {}

local util = require("Module:Road data/util")
local format = mw.ustring.format
util.addAll(AB, require("Module:Road data/strings/CAN"))

AB.Hwy = {
	shield = {
		default = "Alberta Highway %route%.svg",
		["Stoney"] = "Alberta Highway 201.svg",
		["Henday"] = "Alberta Highway 216.svg",
		["17"] = {"Alberta Highway 17.svg", "Saskatchewan Highway 17 (jct).svg"},
		["100"] = ""
	},
	shieldmain = {
		default = "Alberta Highway %route%.svg",
		["2"] = {"Alberta Highway %route%.svg", "Queen Elizabeth II Highway (Alberta).svg"},
		["3"] = "Alberta Highway 3 (Crowsnest).svg",
		["5"] = {"Alberta Highway %route%.svg", "Alberta Highway 22 (Cowboy Trail).svg"},
		["6"] = {"Alberta Highway %route%.svg", "Alberta Highway 22 (Cowboy Trail).svg"},
		["11"] = {"Alberta Highway %route%.svg", "Alberta Highway 11 (David Thompson).svg"},
		["14"] = {"Alberta Highway %route%.svg", "Alberta Highway 14 (Poundmaker).svg"},
		["16"] = {"Alberta Highway %route%.svg", "Yellowhead Blank.svg" }, -- "Alberta Yellowhead Highway.png" is non-free
		["17"] = {"Alberta Highway %route%.svg", "Saskatchewan Highway %route% (jct).svg"},
		["22"] = {"Alberta Highway %route%.svg", "Alberta Highway 22 (Cowboy Trail).svg"},
		["33"] = {"Alberta Highway %route%.svg", "Alberta Highway 33 (Grizzly).png"},
		["35"] = "Alberta Highway 35 (Mackenzie).png",
		["36"] = {"Alberta Highway %route%.svg", "Alberta Highway 36 (Veteran Memorial).svg"},
		["40"] = {"Alberta Highway %route%.svg", "Alberta Highway 40 (Bighorn).svg"},
		["41"] = {"Alberta Highway %route%.svg", "Alberta Highway 41 (Buffalo Trail).svg"},
		["49"] = {"Alberta Highway %route%.svg", "Northern Woods and Water Route (Alberta).svg"},
		["55"] = {"Alberta Highway %route%.svg", "Northern Woods and Water Route (Alberta).svg"},
		["60"] = {"Alberta Highway %route%.svg", "Alberta Highway 60 (Devonian).svg"},
		["88"] = "Alberta Highway 88 (Bicentennial).png",
		["100"] = "",
		["Stoney"] = "Alberta Highway 201.svg",
		["Henday"] = "Alberta Highway 216.svg",
	},
	name = {
		default = "Highway %route%",
		["100"] = "Sherwood Park Freeway",
		["201"] = "Stoney Trail",	
		["Stoney"] = "Stoney Trail",
		["216"] = "Anthony Henday Drive",
		["Henday"] = "Anthony Henday Drive"
	},
	link = {
		default = "[dab||%dab%|Alberta Highway %route%]",
		["17"]  = "Highway 17 (Alberta–Saskatchewan)",
		["100"] = "Sherwood Park Freeway",
		["201"] = "Stoney Trail",	
		["Stoney"] = "Stoney Trail",
		["216"] = "Anthony Henday Drive",
		["Henday"] = "Anthony Henday Drive"
	},
	abbr = {
		default = "Highway&nbsp;%route%",
		["100"] = "SPF",
		["Stoney"] = "Stoney",
		["Henday"] = "Henday"
	},
	orientation = "upright"
}

AB.AB = AB.Hwy
AB.Sec = AB.Hwy

AB.YH = {
	shield = {AB.Hwy.shield,"Yellowhead Blank.svg"},
	shieldmain = AB.Hwy.shieldmain,
	name = AB.Hwy.name,
	link = AB.Hwy.link,
	abbr = {
		["16"] = "Highway&nbsp;%route% (TCH/YH)",
		default = AB.Hwy.abbr.default .. " (YH)"
	},
	orientation = "upright"
}

for k, v in pairs(AB) do if k:find ("TCH") then 
	v.shield = AB.Hwy.shield
	v.shieldmain = AB.Hwy.shieldmain
	v.name = AB.Hwy.name.default
	v.link = AB.Hwy.link.default
	v.abbr = AB.Hwy.abbr.default .. " (TCH)"
	v.orientation = "upright"
	end
end

AB.PAR = {
	shield = "",
	link = "List of Alberta provincial highways#PAR %route%",
	abbr = "PAR&nbsp;%route%"
}

AB.UAR = {
	shield = "",
	link = "List of Alberta provincial highways#UAR %route%",
	abbr = "UAR&nbsp;%route%"
}

--historical route markers
for _,year in ipairs({"1930", "1960", "1970"}) do
	AB["AB " .. year] = {
		shield = format("Alberta Highway %%route%% (%ss).svg", year),
		name = AB.AB.name,
		link = AB.AB.link,
		abbr = AB.AB.abbr,
		orientation = "upright"
	}
end

-- add new types above this line if you want it to have the provincial highway browse and maint
for k, v in pairs(AB) do if k:find ("^%a") then
	v.maint = "the Ministry of Transportation and Economic Corridors"
	end
end

--for linking to US articles
AB.I = {alias = {module = "USA/MT", type = "I"}}

return AB