Quantcast

-- localization.final.lua: complete localization

if (KARMAAVENK_LANG_LOC.PREF == "EN") then
	KARMAAVENK_LANG = KARMAAVENK_LANG_LOC[KARMAAVENK_LANG_LOC.PREF];
else
	-- define language to use
	KARMAAVENK_LANG = KARMAAVENK_LANG_LOC[KARMAAVENK_LANG_LOC.PREF];

	-- add missing strings
	KARMAAVENK_LANG_DUPLICATES = {};
	local	oDupes = KARMAAVENK_LANG_DUPLICATES;
	KARMAAVENK_LANG_MISSING = {};
	local	oMissing = KARMAAVENK_LANG_MISSING;

	local	function	CheckRecursive(oEng, oCurr, sPath)
			local	k, v;
			for k, v in pairs(oEng) do
				if (oCurr[k] == nil) then
					oCurr[k] = v;
					oMissing[sPath .. k] = v;
				elseif (type(v) == "table") then
					if (sPath == "") then
						CheckRecursive(oEng[k], oCurr[k], k);
					else
						CheckRecursive(oEng[k], oCurr[k], sPath .. "." .. k);
					end
				elseif (oCurr[k] == v) then
					oDupes[sPath .. k] = v;
				end
			end
		end

	CheckRecursive(KARMAAVENK_LANG_LOC.EN, KARMAAVENK_LANG, "");
end