Class: queuePanel

queuePanel(client, panelDocument)

Class representing Queue Panel UX

Constructor

new queuePanel(client, panelDocument)

Instantiates a new Queue Panel object
Parameters:
Name Type Description
client channel Parent Client Management Object
panelDocument Document Panel Document
Source:

Members

autoscroll

Enables auto-scroll on schedule UX
Source:

day

Current day, zero'd out to midnight
Source:

playlistManager

Child Playlist Manager Object
Source:

rescaleTimer

Re-scale timer, counts down after re-sizing to clear re-size UI and show schedule again
Source:

scale

Schedule time scale in seconds, defaults to 30 minutes
Source:

Methods

clearMedia(event)

Sends request to server to clear media between a range of two dates
Parameters:
Name Type Description
event Event Event passed down from Event Listener
Source:

clearQueue()

Clears out queue container for re-render
Source:

dateByOffset(input) → {Date}

Calculates date by offset pixels relative to schedule div top
Parameters:
Name Type Default Description
input Number 0 Pixels date is away from schedule div top
Source:
Returns:
Date object representing date which was calculated from given pixel offset
Type
Date

decrementDate(event)

Decrements displayed schedule date
Parameters:
Name Type Description
event Event Event passed down from Event Listener
Source:

defineListeners()

Handles Network-Related Event Listeners
Source:

(async) fullRender(date)

Parameters:
Name Type Description
date Date Current time,
Source:

getMediaEnd(media) → {Number}

Returns media end time
Parameters:
Name Type Description
media Object media object to get end time from
Source:
Returns:
Media end time as JS Epoch (millis)
Type
Number

goLive(event)

Handles sending request to server to start a live stream
Parameters:
Name Type Description
event Event Event passed down from Event Listener
Source:

handleEnd()

Handles call from server to end media
Source:

handleQueueError(data)

Handles queue-related error from the server
Parameters:
Name Type Description
data Object Data from server
Source:

handleScheduleLock()

Handles call from server to lock schedule
Source:

handleStart(data)

Handles call from server to start media
Parameters:
Name Type Description
data Object Data from server
Source:

incrementDate(event)

Increments displayed schedule date
Parameters:
Name Type Description
event Event Event passed down from Event Listener
Source:

killTimetips(event)

Kills off hung tooltips
Parameters:
Name Type Description
event Event Event passed down from Event Listener
Source:

lockSchedule(event)

Sends request to lock the schedule
Parameters:
Name Type Description
event Event Event passed down from Event Listener
Source:

lockScroll(event, jumpToDay)

Locks schedule scroll to current time marker
Parameters:
Name Type Default Description
event Event Event passed down from Event Listener
jumpToDay Boolean true whether or not to jump schedule to the current day
Source:

offsetByDate(date, bottomOffset) → {Number}

Calculate schedule offset from top or bottom of div from date
Parameters:
Name Type Default Description
date Date Date to calculate from, defaults to now
bottomOffset Boolean false Whether or not offset should be calculated from top or bottom
Source:
Returns:
Offset from top/bottom of div in PX relative to time markers, calculated from given date
Type
Number

offsetByMilliseconds(input, bottomOffset) → {Number}

Calculate schedule offset from top or bottom of div from JS Epoch (millis)
Parameters:
Name Type Default Description
input Number 0 JS Epoch (millis) to calculate from, defaults to 0
bottomOffset Boolean false Whether or not offset should be calculated from top or bottom
Source:
Returns:
Offset from top/bottom of div in PX relative to time markers, calculated from given date
Type
Number

queueAt(event)

Sends request to queue current URL at the current time
Parameters:
Name Type Description
event Event Event passed down from Event Listener
Source:

queueLast(event)

Sends request to queue current URL after the last item
Parameters:
Name Type Description
event Event Event passed down from Event Listener
Source:

renderInterval(date)

Render call called at 1-second intervals, handles time and livestream markers
Parameters:
Name Type Description
date Date Date representing current time, defaults to new date object
Source:

renderLiveStream(inputDate, intervalRun)

Renders live-stream marker
Parameters:
Name Type Description
inputDate Date Date representing current time, defaults to new date object
intervalRun Boolean Whether or not this was run by renderInterval, defaults to false
Source:

renderQueue(date)

Renders out schedule
Parameters:
Name Type Description
date Date Date representing current time, defaults to new date object
Source:

renderQueueScale(inputDate)

Renders queue scale markers
Parameters:
Name Type Description
inputDate Date Date representing current time, defaults to new date object
Source:

renderTimeMarker(date, forceScroll)

Renders current time marker on to the schedule
Parameters:
Name Type Default Description
date Date Date representing current time, defaults to new date object
forceScroll Boolean false Whether or not to scroll the schedule on increment
Source:

resizeRender(event)

Handles re-rendering schedule upon window re-size
Parameters:
Name Type Description
event Event Event passed down from Event Listener
Source:

scaleScroll(event)

Handles time-scale changes on crtl+scroll
Parameters:
Name Type Description
event Event Event passed down from Event Listener
Source:

setDay(date)

Directly sets schedule display date
Parameters:
Name Type Description
date Date Date to set schedule to
Source:

setQueueDate(event)

Validates and sets display schedule date from user input
Parameters:
Name Type Description
event Event Event passed down from Event Listener
Source:

setupInput()

Handles Input-Related Event Listeners
Source:

toggleAddMedia(event)

Toggles add media UX
Parameters:
Name Type Description
event Event Event passed down from Event Listener
Source:

toggleDateControl(event)

Toggles schedule date control
Parameters:
Name Type Description
event Event Event passed down from Event Listener
Source:

toggleGoLive(event)

Toggles Go-Live UX
Parameters:
Name Type Description
event Event Event passed down from Event Listener
Source:

togglePlaylistDiv(event)

Toggles playlist management UX
Parameters:
Name Type Description
event Event Event passed down from Event Listener
Source:

unlockScroll()

Un-locks scroll from curren time marker
Source: