(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 createEmptyState () { var $ = jQuery var listEl = document.querySelector('.albfre-list-events--list') var $listEl = $(listEl) $listEl.append( $('
').append( $('
📅
'), $('
'+albfre_events_object.albfre_translations['EMPTY_TITLE']+'
'), $('
'+albfre_events_object.albfre_translations['EMPTY_SUBTITLE']+'
'), $(''+albfre_events_object.albfre_translations['EMPTY_BUTTON']+'') ) ) } 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 isFirestore = event.isFirestore var publisherSlug = event.site.slug 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( $('
').append( (event.officialEvent && event.officialEvent.competitors && Array.isArray(event.officialEvent.competitors) && event.officialEvent.competitors.length > 0) ? $('
').append( $('
').append( $(''), $('
'+event.officialEvent.competitors[0].abbreviation+'
') ), $('
x
'), $('
').append( $(''), $('
'+event.officialEvent.competitors[1].abbreviation+'
') ) ) : $('
'), $('
').append( $('
').append( $('
' + event.name + '
'), $('
').append( $('
'+(event.tournament ? event.tournament.name : '')+'
') ) ), $('
').append( $('').append( $('