Jump to content
Menú alternativo
Alternar el menú de preferencias
Menú alternativo personal
No has accedido
Tu dirección IP será visible si haces alguna edición

La documentación para este módulo puede ser creada en Módulo:ModuleMsg/doc

local p = {}

function p.get_msgs(frame, pagename, lang)
	local ret = {}
	local msgs = {}
	local page = mw.title.new(pagename)
	local raw = page:getContent()
	for msgname in string.gmatch(raw, '<!%-%-T:(.-)%-%->') do
		msgs[msgname] = true
	end
	local retmeta = {
		__index = function(t, msgname)
			if msgs[msgname] then
				local msgvalue = mw.title.new('Translations:' .. pagename .. '/' .. msgname .. '/' .. lang):getContent()
				if msgvalue == nil then
					-- English fallback
					msgvalue = mw.title.new('Translations:' .. pagename .. '/' .. msgname .. '/en'):getContent()
				end
				rawset(t, msgname, msgvalue)
				return msgvalue
			else
				return nil
			end
		end
	}
	return setmetatable(ret, retmeta)
end

return p