Modul:dara kategoriyan/gelemperkatbike/dane

Ji Wîkîferhengê
local labels = {}
local handlers = {}

local subpages = {
	"etîmolojî",
	}

-- Import subpages
for _, subpage in ipairs(subpages) do
	local datamodule = "Modul:dara kategoriyan/gelemperkatbike/dane/" .. subpage
	local retval = require(datamodule)
	if not retval["LABELS"] then
		retval = {LABELS = retval}
	end
	for key, data in pairs(retval["LABELS"]) do
		assert(not labels[key], "Duplicate label: " .. key)
		data.edit = datamodule
		labels[key] = data
	end
	if retval["HANDLERS"] then
		for _, handler in ipairs(retval["HANDLERS"]) do
			table.insert(handlers, { module = datamodule, handler = handler })
		end
	end
end

-- Add child categories to their parents
for key, data in pairs(labels) do
	if data.parents then
		for _, parent in ipairs(data.parents) do
			if type(parent) == "table" then
				if parent.name and not parent.template and not parent.name:find("^Kategorî:") then
					if labels[parent.name].children then
						table.insert(labels[parent.name].children, {name = key, sort = parent.sort})
					else
						labels[parent.name].children = {{name = key, sort = parent.sort}}
					end
				end
			else
				if not parent:find("^Kategorî:") and labels[parent] then
					if labels[parent].children then
						table.insert(labels[parent].children, key)
					else
						labels[parent].children = {key}
					end
				end
			end
		end
	end
end

return {LABELS = labels, HANDLERS = handlers}