Module:Russo-Ukrainian War detailed map (oblasts)

local m = require('Module:Russo-Ukrainian War detailed map')

m.containerArgs.AlternativeMap = nil
m.containerArgs.autoSwitcherLabel = true
m.containerArgs.width = 1000

local mark, label, label2
for i = m.marks.old_len+1, #m.marks do
	mark = m.marks[i]
	label = mark.label
	if label then
		label = mw.text.trim(label, '%[%]')
		label2 = mw.text.split(label, '[,|]')[1]
		label2 = string.gsub(label2, '­', '')
		label = m.marks[label2] and mw.text.split(label, '|')[1] or label2
		m.marks[label] = mark
	end
	if mark.label_size == 0 and mark.position and string.sub(mark.mark, 1, 1) == 'L' then -- is the last expression avoidable?
		mark.label_size = sizes[mark.marksize]
	end
end

-- Arranged by oblasts in alphabetical order.
local mm = m.marks
--Dnipropetrovsk Oblast
mm["Nikopol"].position = lp.b

--Donetsk Oblast
mm["Khartsyzk"].position = "bottom"
mm["Krasnohorivka"].label_width = 7
mm["Lyman"].position = "right"
mm["Myrnohrad"].label_width = nil
mm["Myrnohrad"].label_top = nil
mm["Novooleksandrivka"].label_width = 9
mm["Novopokrovske"].position = lp.t
mm["Novopokrovske"].label_width = 8
mm["Novopokrovske"].label_top = nil
mm["Nyzhnia Krynka"].position = "bottom"
mm["Nyzhnia Krynka"].label_width = 8
mm["Ocheretyne"].position = "top"
mm["Sviatohirsk"].position = "top"
mm["Urozhaine"].position = "right"
mm["Volodymyrivka"].label_width = 7
mm["Yasynuvata"].label_width = nil
mm["Yenakiieve"].position = "left"
mm["Zalizne"].position = lp.l

local marks = {
	--Donetsk Oblast
	{ lat = "48.196", long = "37.532", mark = mk.ukr, marksize = 6, label_size = 50--[[935]], position = lp.l, label = "Novoselivka Persha", label_top = -1, link = "uk:Новоселівка Перша" }, -- obstructed by Novopokrovske
	{ lat = "48.220", long = "37.145", mark = "Location dot blue.svg", marksize = 6, label = "[[Shevchenko, Donetsk Oblast|Shevchenko]]", link = "Territorial control during the Russo-Ukrainian War#Shevchenko", label_size = 50, position = "left" }, -- obstructed by Novohrodivka
	{ lat = "48.265", long = "38.160", mark = "Location dot red.svg", marksize = 8, label = "[[Sofiivka, Horlivka Raion, Donetsk Oblast|Sofiivka]]", link = "Sofiivka, Horlivka Raion, Donetsk Oblast", label_size = 60, position = "top" }, -- permanently obstructed by Yenakiieve
}

TableTools.extend(m.marks, marks)

return m