<% function formatMs(ms) { if (ms === null || ms === undefined) return '--:--'; var neg = ms < 0; var abs = Math.abs(ms); var h = Math.floor(abs / 3600000); var m = Math.floor((abs % 3600000) / 60000); var s = Math.floor((abs % 60000) / 1000); var result = h > 0 ? h + ':' + String(m).padStart(2, '0') + ':' + String(s).padStart(2, '0') : m + ':' + String(s).padStart(2, '0'); return (neg ? '-' : '') + result; } function formatClock(ms) { if (ms === null || ms === undefined) return ''; var h = Math.floor(ms / 3600000) % 24; var m = Math.floor((ms % 3600000) / 60000); return String(h).padStart(2, '0') + ':' + String(m).padStart(2, '0'); } var playback = data.timer ? data.timer.playback : 'stop'; var current = data.timer ? data.timer.current : null; var duration = data.timer ? data.timer.duration : null; var overtime = current !== null && current < 0; %>

<%= listName %>

Running timer
<%= formatMs(current) %>
<% if (data.timer && data.timer.addedTime && data.timer.addedTime !== 0) { %>
<%= data.timer.addedTime > 0 ? '+' : '' %><%= Math.round(data.timer.addedTime / 1000) %>s
<% } %>
<% if (data.clock !== null && data.clock !== undefined) { %>
Time now
<%= formatClock(data.clock) %>
<% } %>
<% if (duration !== null && duration !== undefined && duration > 0) { %> <% var elapsed = data.timer && data.timer.elapsed !== null && data.timer.elapsed !== undefined ? data.timer.elapsed : null; %> <% var pct = elapsed !== null ? Math.max(0, Math.min(100, (elapsed / duration) * 100)) : 0; %>
<% } %> <% if (data.eventNow) { %>
<%= data.eventNow.cue || '' %> Now
<%= data.eventNow.title || '' %>
<% if (data.eventNow.timeStart !== undefined && data.eventNow.timeEnd !== undefined) { %>
<%= formatClock(data.eventNow.timeStart) %> – <%= formatClock(data.eventNow.timeEnd) %>
<% } %> <% if (data.eventNow.note) { %>
<%= data.eventNow.note %>
<% } %>
<% } %> <% if (data.eventNext) { %>
<%= data.eventNext.cue || '' %> Next
<%= data.eventNext.title || '' %>
<% if (data.eventNext.timeStart !== undefined && data.eventNext.timeEnd !== undefined) { %>
<%= formatClock(data.eventNext.timeStart) %> – <%= formatClock(data.eventNext.timeEnd) %>
<% } %> <% if (data.eventNext.note) { %>
<%= data.eventNext.note %>
<% } %>
<% } %>