diff --git a/html/ptg.html b/html/ptg.html index 170bc60..293a56f 100644 --- a/html/ptg.html +++ b/html/ptg.html @@ -38,7 +38,7 @@ {{#each tracks as |track| }} {{#if (lookup @root.now track) }} - {{track}} + {{trackbadge track}} {{#trackContentLine}}{{lookup @root.now track}}{{/trackContentLine}} {{lookup @root.location track}} @@ -59,7 +59,7 @@ {{#each tracks as |track| }} {{#if (lookup @root.next track) }} - {{track}} + {{trackbadge track}} {{#each (lookup @root.next track) as |item|}} {{#trackContentLine}}{{item}}{{/trackContentLine}}
diff --git a/html/ptg.js b/html/ptg.js index bc0fbb9..69fd3e8 100644 --- a/html/ptg.js +++ b/html/ptg.js @@ -32,6 +32,31 @@ Handlebars.registerHelper('roomactive', return false; }); +function checkins_tooltip(track) { + var room_checkins = checkins['#' + track]; + if (room_checkins) { + var attendees = room_checkins.map(function(checkin) { + return checkin.nick; + }).sort(); + return 'Checked in here: ' + attendees.join(", "); + } else { + return "No one is checked in here. " + + "DM the bot 'in #" + track + "' to check in."; + } +} + +function track_badge(track) { + var title = checkins_tooltip(track); + return '' + track; +} + +Handlebars.registerHelper('trackbadge', + function(track) { + return new Handlebars.SafeString(track_badge(track)); +}); + Handlebars.registerHelper('roomcode', function(schedule, room, timecode, s) { var cell = ''; @@ -43,19 +68,7 @@ Handlebars.registerHelper('roomcode', cell = '' + room + "-" + timecode + ''; } } else { - var track = schedule[room][timecode]; - var room_checkins = checkins['#' + track]; - var title = "No one is checked in here. " + - "DM the bot 'in #" + track + "' to check in."; - if (room_checkins) { - var attendees = room_checkins.map(function(checkin) { - return checkin.nick; - }).sort(); - title = 'Checked in here: ' + attendees.join(", "); - } - cell = '' + track; + cell = track_badge(schedule[room][timecode]); } } return new Handlebars.SafeString(cell);