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"].position = lp.t

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["Nyzhnia Krynka"].position = "bottom"

mm["Nyzhnia Krynka"].label_width = 8

mm["Staromykhailivka"].position = lp.b

mm["Staromykhailivka"].label_width = 8

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.t

mm["Zalizne"].label_width = nil

--Kharkiv Oblast

mm["Vovchansk"].position = lp.r

local marks = {

--Donetsk Oblast

{ lat = "48.265", long = "38.160", mark = "Location dot red.svg", marksize = 8, label = "Sofiivka", link = "Sofiivka, Horlivka Raion, Donetsk Oblast", label_size = 60, position = "top" }, -- permanently obstructed by Yenakiieve

}

TableTools.extend(m.marks, marks)

return m