Module:News

Documentation for this module may be created at Module:News/doc

local p = {}
local data = mw.loadJsonData("Module:Data/news.json")

function p.createNewsList(frame)
	local limit = tonumber(frame.args.limit) or 100000
	
	local str = ""
	local start = 0

	for k, v in ipairs(data) do
		if limit > 99999 or start < limit then
			local news = {
				url = v.url,
				title = v.title,
				date = v.date,
				subtitle = v.subtitle,
				image = v.image
			}
			str = str .. frame:expandTemplate{title = 'News', args = news}
		end
		start = start + 1
	end
	
	return str
end

function p.createNewsPage(frame)
	local name = frame.args.name
	if name == nil or name == "" then name = mw.title.getCurrentTitle().subpageText end
	
	local str = ""

	for k, v in pairs(data) do
		if v.title == name then
			str = '[[Category:News]]<div class="warningbox text-center w-100">This page\'s content is copied from the Steam News Hub. See the [' .. v.url .. ' original news page].</div>'
			if v.banner ~= nil then
				str = str .. v.banner
			end
			str = str .. '<div class="mb-5 text-center" style="color:#605d8f">Posted ' .. v.date .. '</div>'
			str = str .. frame:preprocess(v.content)
		end
	end
	
	return str
end

return p
Cookies help us deliver our services. By using our services, you agree to our use of cookies.