Module:MatchHTML: Difference between revisions

From TwogPedia
mNo edit summary
mNo edit summary
Line 2: Line 2:
local VariablesLua = mw.ext.VariablesLua
local VariablesLua = mw.ext.VariablesLua
local stringifyDate = require('Module:Functions').stringifyDate
local stringifyDate = require('Module:Functions').stringifyDate
local makeFlag = require('Module:Person/Flag').makeFlag


function MatchHTML.team(name, score, rev)
function MatchHTML.team(name, score, rev)
Line 14: Line 15:
end  
end  


function MatchHTML.teamHover(p1, p2, p1score, p2score, date, twitch, youtube)
function MatchHTML.teamHover(p1, p2, p1score, p2score, date, twitch, youtube, casters, observers)
local p1Link = p1 and '[[' .. p1 .. ']]' or 'TBD'
local p1Link = p1 and '[[' .. p1 .. ']]' or 'TBD'
     local p2Link = p2 and '[[' .. p2 .. ']]' or 'TBD'
     local p2Link = p2 and '[[' .. p2 .. ']]' or 'TBD'
Line 30: Line 31:


local date = mw.html.create('div'):addClass('tc convert--date'):wikitext(stringifyDate(date))
local date = mw.html.create('div'):addClass('tc convert--date'):wikitext(stringifyDate(date))
mw.logObject(casters)
mw.log('casters')
mw.logObject(observers)
local streams = mw.html.create('div')
local streams = mw.html.create('div')
if #casters > 0 then
mw.log('tulin sisse')
for i = 1, #casters do
streams:wikitext(makeFlag(casters[i]))
end
end
if #observers > 0 then
mw.log('tulin !!!!')
for i = 1, #observers do
streams:wikitext(makeFlag(observers[i]))
end
end
if twitch then streams:wikitext('[[File:Twitch.png|25px|link=https://twitch.tv/' .. twitch .. ']]') end
if twitch then streams:wikitext('[[File:Twitch.png|25px|link=https://twitch.tv/' .. twitch .. ']]') end
if youtube then streams:wikitext('[[File:Youtube.png|25px|link=https://youtube.com/' .. youtube .. '/live]]') end
if youtube then streams:wikitext('[[File:Youtube.png|25px|link=https://youtube.com/' .. youtube .. '/live]]') end
return hover:node(header):node(date):node(streams)
return hover:node(header):node(date):node(streams)

Revision as of 00:04, 17 October 2023

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

local MatchHTML = {}
local VariablesLua = mw.ext.VariablesLua
local stringifyDate = require('Module:Functions').stringifyDate
local makeFlag = require('Module:Person/Flag').makeFlag

function MatchHTML.team(name, score, rev)
	local teamName = name and mw.ext.displaytitle.get(name) or ''
	local team = mw.html.create('div'):addClass('team')
	local nameNode = mw.html.create('div'):wikitext(teamName):addClass('teamName')
	if rev and VariablesLua.var( 'matchList', 0 ) == '1' then 
		team:addClass('reverse') 
	end

	return team:node(nameNode):node(mw.html.create('div'):wikitext(score):addClass('score'))
end 

function MatchHTML.teamHover(p1, p2, p1score, p2score, date, twitch, youtube, casters, observers)
	local p1Link = p1 and '[[' .. p1 .. ']]' or 'TBD'
    local p2Link = p2 and '[[' .. p2 .. ']]' or 'TBD'
	local hover = mw.html.create('div'):addClass('match-details')
	local header = mw.html.create('div'):addClass('details-header')
	
	local hover1 = mw.html.create('div'):addClass('team')
		:node(mw.html.create('div'):wikitext(p1Link):addClass('teamName'))
		:node(mw.html.create('div'):wikitext(p1score):addClass('score'))
	local hover2 = mw.html.create('div'):addClass('team reverse')
		:node(mw.html.create('div'):wikitext(p2Link):addClass('teamName'))
		:node(mw.html.create('div'):wikitext(p2score):addClass('score'))
		
	header:node(hover1):node(hover2)

	local date = mw.html.create('div'):addClass('tc convert--date'):wikitext(stringifyDate(date))
	mw.logObject(casters)
mw.log('casters')
mw.logObject(observers)
	local streams = mw.html.create('div')
	if #casters > 0 then
		mw.log('tulin sisse')
		for i = 1, #casters do
			streams:wikitext(makeFlag(casters[i]))
		end
	end
	if #observers > 0 then
		mw.log('tulin !!!!')
		for i = 1, #observers do
			streams:wikitext(makeFlag(observers[i]))
		end
	end
	if twitch then streams:wikitext('[[File:Twitch.png|25px|link=https://twitch.tv/' .. twitch .. ']]') end
	if youtube then streams:wikitext('[[File:Youtube.png|25px|link=https://youtube.com/' .. youtube .. '/live]]') end
	
	
	
	return hover:node(header):node(date):node(streams)
end

return MatchHTML