(function (window) {
var liveEvents = []
function formatAMPM(date) {
var hours = date.getHours();
var minutes = date.getMinutes();
var ampm = hours >= 12 ? 'pm' : 'am';
hours = hours % 12;
hours = hours ? hours : 12; // the hour '0' should be '12'
minutes = minutes < 10 ? '0'+minutes : minutes;
var strTime = hours + ':' + minutes + ' ' + ampm;
return strTime;
}
function getEventStartDate (startDate) {
var monthNames = ["January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"
]
var date = new Date(startDate)
return {
day: date.getDate(),
month: monthNames[date.getMonth()],
year: date.getFullYear(),
time: formatAMPM(date)
}
}
function dateIsAfterToday (date) {
var tomorrow = new Date(new Date().getTime() + 24 * 60 * 60 * 1000)
tomorrow.setHours(0,0,0,0)
return date >= tomorrow
}
function dateIsBeforeToday (date) {
var today = new Date()
today.setHours(0, 0, 0, 0)
return date < today
}
function dateIsSameToday (date) {
var today = new Date()
return (date.getDate() == today.getDate()
&& date.getMonth() == today.getMonth()
&& date.getFullYear() == today.getFullYear())
}
function getNextEvents (events) {
for (var i = 0; i < events.length; i++) {
var event = events[i]
if (event.status === 'live' || (event.status !== 'done' && dateIsSameToday(new Date(event.startDate))) || dateIsAfterToday(new Date(event.startDate))) {
if (event.status === 'live') {
event.badge = {
id: 'live',
name: albfre_events_object.albfre_translations['LIVE']
}
} else if (dateIsSameToday(new Date(event.startDate))) {
event.badge = {
id: 'today',
name: albfre_events_object.albfre_translations['TODAY']
}
} else if (dateIsAfterToday(new Date(event.startDate))) {
event.badge = {
id: 'upcoming',
name: albfre_events_object.albfre_translations['UPCOMING']
}
}
liveEvents.push(event)
}
}
return liveEvents
}
function createEventElement (event) {
var $ = jQuery
var listEl = document.querySelector('.albfre-list-events--list')
var $listEl = $(listEl)
var startDate = getEventStartDate(event.startDate)
var nameStyle = ''
if (event.badge.name.length >= 7) {
nameStyle = 'font-size: 9px'
}
var slug = event.slug
var publisherSlug = event.publisher_slug.substring(0, event.publisher_slug.length - slug.length - 1)
var avataImage
if (event.avatarImage) {
avataImage = event.avatarImage
} else if (event.officialEvent && event.officialEvent.image) {
avataImage = event.officialEvent.image
} else {
avataImage = 'https://dashboard.arena.im/img/empty-photo-event.png'
}
$listEl.append(
$('
').append(
$('').append(
$('').append(
$(''+event.badge.name+'
')
),
$('').append(
$(''+startDate.day+'
'),
$(''+startDate.month+'
'),
$(''+startDate.time+'
')
)
),
$('').append(
(event.officialEvent && event.officialEvent.competitors && Array.isArray(event.officialEvent.competitors) && event.officialEvent.competitors.length > 0) ?
$('').append(
$('').append(
$(''),
$(''+event.officialEvent.competitors[0].abbreviation+'
')
),
$(''),
$('').append(
$(''),
$(''+event.officialEvent.competitors[1].abbreviation+'
')
)
) : $(''),
$('').append(
$('').append(
$('' + event.name + '
'),
$('').append(
$(''+event.tournamentName+'
')
)
),
$('').append(
$('').append(
$('