Apex Legends Esports Wiki

READ MORE

Apex Legends Esports Wiki
Register
Advertisement

To edit the documentation or categories for this module, click here.


local util_args = require('Module:ArgsUtil')
local util_cargo = require('Module:CargoUtil')
local m_team = require('Module:Team')
local m_region = require('Module:Region')
local util_vars = require('Module:VarsUtil')
local util_table = require('Module:TableUtil')
local League = require('Module:League').league

local h = {}

function h.makeNews(args)
	local region_image = m_region.onlyimage(args.region)
	local output = {
		'|-',
		'|class="news-region"|' .. region_image,
		'|class="news-subject"|' .. args.subject,
		'|class="news-text"|' .. (args.text or ''),
	}
	if args.cargo then
		h.storeCargo(args, region_image)
	end
	return table.concat(output,'\n')
end	

function h.storeCargo(args, region_image)
	local tbl = {
		_table = 'News',
		Date = util_vars.getVar('date', frame),
		ItemNo = util_vars.setGlobalIndex('NewsItem'),
		Region = m_region.long(args.region),
		Region_Markup = m_region.rightmedium(args.region),
		Region_Image = region_image,
		Text = args.text
	}
	tbl.UniqueLine = mw.title.getCurrentTitle().text .. '_' .. tbl.ItemNo
	util_table.merge(tbl, args.cargo)
	util_cargo.store(tbl)
	return
end

local p = {}

function p.team(frame)
	local args = util_args.merge(true)
	args.subject = m_team.rightshortlinked(args.team, {size=60})
	if util_vars.getVar('newsCargo') and not args.nocargo then
		args.cargo = {
			Type = 'Team',
			Team = m_team.teamlinkname(args.team),
			Team_Markup = m_team.rightmediumlinked(args.team),
		}
		args.cargo.Subject = args.cargo.Team
		args.cargo.Subject_Markup = args.cargo.Team_Markup
	end
	return h.makeNews(args)
end

function p.tournament(frame)
	local args = util_args.merge(true)
	args.subject = League{args.tournament,'rightshortdiv60linked',size='25px',link=args.link}
	if util_vars.getVar('newsCargo') and not args.nocargo then
		args.cargo = {
			_table = 'News',
			Type = 'Tournament',
			Tournament = args.link,
			Tournament_Markup = args.subject,
			Subject = args.link,
			Subject_Markup = args.subject
		}
	end
	return h.makeNews(args)
end

return p
Advertisement