{"id":11,"date":"2026-09-29T14:07:33","date_gmt":"2026-09-29T14:07:33","guid":{"rendered":"https:\/\/checkin.bpa.org\/?page_id=11"},"modified":"2026-09-29T14:07:33","modified_gmt":"2026-09-29T14:07:33","slug":"contest-proctors-check-in","status":"publish","type":"page","link":"https:\/\/checkin.bpa.org\/?page_id=11","title":{"rendered":"Contest Proctors Check-In"},"content":{"rendered":"<div class=\"bpa-ci bpa-ci-desk\" x-data=\"bpaCiDesk({&quot;group&quot;:{&quot;id&quot;:4,&quot;slug&quot;:&quot;proctors&quot;,&quot;label&quot;:&quot;Contest Proctors&quot;,&quot;roles&quot;:[&quot;proctor&quot;],&quot;can_edit&quot;:true,&quot;is_enabled&quot;:true,&quot;session_hours&quot;:14,&quot;has_passcode&quot;:false},&quot;groups&quot;:[],&quot;conference&quot;:null})\" x-init=\"init()\">\n\t\n\t<!-- LOGIN -->\n\t<div class=\"ci-card ci-center ci-login\" x-show=\"!session\" x-cloak>\n\t\t<div class=\"ci-lock\">\ud83d\udd12<\/div>\n\t\t<h1 x-text=\"cfg.group.label + ' Check-In'\"><\/h1>\n\t\t<p class=\"ci-muted\" x-text=\"cfg.conference ? cfg.conference.name : 'No active conference'\"><\/p>\n\t\t<form @submit.prevent=\"login()\" class=\"ci-form\">\n\t\t\t<label>Your name <input type=\"text\" x-model=\"loginName\" placeholder=\"e.g. Pat\" autocomplete=\"name\" required><\/label>\n\t\t\t<label>Desk passcode <input type=\"password\" x-model=\"loginCode\" autocomplete=\"off\" required><\/label>\n\t\t\t<button class=\"ci-btn ci-primary\" type=\"submit\" :disabled=\"busy\">Open the desk<\/button>\n\t\t\t<p class=\"ci-err\" x-text=\"loginError\"><\/p>\n\t\t<\/form>\n\t\t<p class=\"ci-muted ci-small\">The passcode comes from BPA staff. Nothing on this page is shared publicly.<\/p>\n\t<\/div>\n\n\t<!-- DESK -->\n\t<div x-show=\"session\" x-cloak>\n\t\t<header class=\"ci-top\">\n\t\t\t<div class=\"ci-titlebar\">\n\t\t\t\t<h1><span x-text=\"cfg.group.label\"><\/span> <small class=\"ci-live\" :class=\"live?'on':'off'\"><i><\/i><span x-text=\"liveText\"><\/span><\/small><\/h1>\n\t\t\t\t<div class=\"ci-seg\" role=\"group\" aria-label=\"Block\">\n\t\t\t\t\t<button :aria-pressed=\"block===0\" @click=\"setBlock(0)\">All<\/button>\n\t\t\t\t\t<template x-for=\"b in S.blocks\" :key=\"b.id\"><button :aria-pressed=\"block===b.id\" @click=\"setBlock(b.id)\" x-text=\"b.name\"><\/button><\/template>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"ci-who\"><span x-text=\"session ? session.operator : ''\"><\/span> \u00b7 <a href=\"#\" @click.prevent=\"logout()\">Sign out<\/a><\/div>\n\t\t\t<\/div>\n\t\t\t<div class=\"ci-stats\">\n\t\t\t\t<div class=\"ci-stat\"><em>Checked in<\/em><b><span x-text=\"st.in\"><\/span><span> \/ <span x-text=\"st.expected\"><\/span><\/span><\/b><div class=\"ci-bar\"><i :style=\"'width:'+st.pct+'%'\"><\/i><\/div><\/div>\n\t\t\t\t<div class=\"ci-stat\" :class=\"st.short?'bad':(S.competitions.length?'ok':'')\"><em>Sections short<\/em><b x-text=\"st.short\"><\/b><\/div>\n\t\t\t\t<div class=\"ci-stat\"><em>Fully staffed<\/em><b><span x-text=\"st.ready\"><\/span><span> \/ <span x-text=\"st.sections\"><\/span><\/span><\/b><\/div>\n\t\t\t\t<div class=\"ci-stat\"><em>Backups on hand<\/em><b><span x-text=\"st.backupsIn\"><\/span><span x-text=\"st.backupsComing?' + '+st.backupsComing+' coming':''\"><\/span><\/b><\/div>\n\t\t\t\t<div class=\"ci-stat\"><em>Checked out<\/em><b x-text=\"st.out\"><\/b><\/div>\n\t\t\t<\/div>\n\t\t\t<nav class=\"ci-tabs\" role=\"tablist\">\n\t\t\t\t<template x-for=\"t in tabs\" :key=\"t.key\"><button role=\"tab\" :aria-selected=\"tab===t.key\" @click=\"setTab(t.key)\"><span x-text=\"t.label\"><\/span><span class=\"ci-n\" x-show=\"badge(t.key)!==''\" :class=\"badgeClass(t.key)\" x-text=\"badge(t.key)\"><\/span><\/button><\/template>\n\t\t\t<\/nav>\n\t\t<\/header>\n\n\t\t<p class=\"ci-banner\" x-show=\"!cfg.group.can_edit\">This desk is view-only. Ask BPA staff for a desk that can check people in.<\/p>\n\t\t<p class=\"ci-banner ci-error\" x-show=\"error\" x-text=\"error\"><\/p>\n\n\t\t<!-- CHECK-IN -->\n\t\t<section x-show=\"tab==='checkin'\">\n\t\t\t<div class=\"ci-toolbar\">\n\t\t\t\t<div class=\"ci-search\"><input type=\"search\" x-model=\"q\" @keydown.enter.prevent=\"enterCheckIn()\" placeholder=\"Type a name, event, room or organization\u2026\" autocomplete=\"off\" x-ref=\"q\"><\/div>\n\t\t\t\t<div class=\"ci-seg\" role=\"group\"><button :aria-pressed=\"ciF==='waiting'\" @click=\"ciF='waiting'\">Not here<\/button><button :aria-pressed=\"ciF==='in'\" @click=\"ciF='in'\">Checked in<\/button><button :aria-pressed=\"ciF==='out'\" @click=\"ciF='out'\">Checked out<\/button><button :aria-pressed=\"ciF==='all'\" @click=\"ciF='all'\">Everyone<\/button><\/div>\n\t\t\t\t<button class=\"ci-btn\" x-show=\"cfg.group.can_edit\" @click=\"openWalkin()\">+ Walk-in<\/button>\n\t\t\t<\/div>\n\t\t\t<p class=\"ci-hint\">Press Enter to check in when only one person matches. Checking someone in covers every assignment they have in this block.<\/p>\n\t\t\t<div class=\"ci-list\">\n\t\t\t\t<template x-for=\"p in ciList()\" :key=\"p.id\">\n\t\t\t\t\t<div class=\"ci-row\" :class=\"p.status\">\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t<div class=\"ci-nm\"><span x-text=\"p.name\"><\/span>\n\t\t\t\t\t\t\t\t<span class=\"ci-chip in\" x-show=\"p.status==='in'\" x-text=\"'\u2713 In '+fmtT(p.at)\"><\/span>\n\t\t\t\t\t\t\t\t<span class=\"ci-chip out\" x-show=\"p.status==='out'\" x-text=\"'Out '+fmtT(p.outAt)\"><\/span>\n\t\t\t\t\t\t\t\t<span class=\"ci-chip noshow\" x-show=\"p.status==='noshow'\">No-show<\/span>\n\t\t\t\t\t\t\t\t<span class=\"ci-chip backup\" x-show=\"p.hasBackup\">Backup<\/span>\n\t\t\t\t\t\t\t\t<span class=\"ci-chip late\" x-show=\"p.status==='expected' && p.late\">Late<\/span>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class=\"ci-sub\"><span class=\"ci-muted\" x-show=\"p.organization\" x-text=\"p.organization\"><\/span><template x-for=\"a in p.items\" :key=\"a.id\"><span x-html=\"itemLine(a)\"><\/span><\/template><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"ci-acts\" x-show=\"cfg.group.can_edit\">\n\t\t\t\t\t\t\t<button class=\"ci-btn ci-go\" x-show=\"p.status!=='in'&&p.status!=='out'\" @click=\"checkIn(p)\" x-text=\"p.status==='noshow'?'Check in anyway':'Check in'\"><\/button>\n\t\t\t\t\t\t\t<button class=\"ci-btn ci-ghost\" x-show=\"p.status==='in'\" @click=\"undo(p)\">Undo<\/button>\n\t\t\t\t\t\t\t<button class=\"ci-btn\" x-show=\"p.status==='in'\" @click=\"checkOut(p)\">Check out<\/button>\n\t\t\t\t\t\t\t<button class=\"ci-btn ci-ghost\" x-show=\"p.status==='out'\" @click=\"undoOut(p)\">Undo check-out<\/button>\n\t\t\t\t\t\t\t<button class=\"ci-btn ci-ghost\" @click=\"openPerson(p)\">Edit<\/button>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/template>\n\t\t\t\t<div class=\"ci-empty\" x-show=\"!ciList().length\" x-text=\"emptyText()\"><\/div>\n\t\t\t<\/div>\n\t\t<\/section>\n\n\t\t<!-- COMPETITIONS -->\n\t\t<section x-show=\"tab==='comps'\">\n\t\t\t<div class=\"ci-toolbar\">\n\t\t\t\t<div class=\"ci-seg\" role=\"group\"><button :aria-pressed=\"evF==='all'\" @click=\"evF='all'\">All<\/button><button :aria-pressed=\"evF==='attention'\" @click=\"evF='attention'\">Needs attention<\/button><button :aria-pressed=\"evF==='short'\" @click=\"evF='short'\">Short only<\/button><\/div>\n\t\t\t\t<span class=\"ci-hint\">Tap a name to edit, move or mark them.<\/span>\n\t\t\t\t<button class=\"ci-btn\" x-show=\"cfg.group.can_edit\" @click=\"openComp(null)\">+ Add competition<\/button>\n\t\t\t<\/div>\n\t\t\t<template x-for=\"g in compGroups()\" :key=\"g.key\">\n\t\t\t\t<div class=\"ci-slot\">\n\t\t\t\t\t<h3><span x-text=\"g.label\"><\/span><span class=\"ci-mono\" x-text=\"g.time\"><\/span><\/h3>\n\t\t\t\t\t<div class=\"ci-list\">\n\t\t\t\t\t\t<template x-for=\"c in g.items\" :key=\"c.id\">\n\t\t\t\t\t\t\t<div class=\"ci-ev\" :class=\"c.state\">\n\t\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t<div class=\"ci-h\"><strong x-text=\"c.section||'Panel'\"><\/strong><span class=\"ci-meta\" x-text=\"roomText(c.room)\"><\/span><span class=\"ci-chip\" :class=\"c.state\" x-text=\"c.stateText\"><\/span><\/div>\n\t\t\t\t\t\t\t\t\t<template x-for=\"rc in c.roles\" :key=\"rc.key\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"ci-people\" x-show=\"rc.need||rc.on.length\"><em class=\"ci-rolelabel\" x-text=\"rc.label+' '+rc.in+'\/'+rc.need\"><\/em>\n\t\t\t\t\t\t\t\t\t\t\t<template x-for=\"a in rc.on\" :key=\"a.id\"><button class=\"ci-pp\" :class=\"a.status\" @click=\"openAssignment(a)\" :title=\"statusText(a.status)\"><i><\/i><span x-text=\"personName(a.person_id)\"><\/span><span x-show=\"a.kind==='backup'\"> (backup)<\/span><\/button><\/template>\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"ci-hint\" x-show=\"!rc.on.length\">No one assigned<\/span>\n\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/template>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"ci-acts ci-col\" x-show=\"cfg.group.can_edit\"><button class=\"ci-btn ci-sm ci-primary\" x-show=\"c.state!=='ready'\" @click=\"pickBackup(c)\">Send backup<\/button><button class=\"ci-btn ci-sm ci-ghost\" @click=\"openComp(c)\">Edit<\/button><\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/template>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/template>\n\t\t\t<div class=\"ci-empty\" x-show=\"!compGroups().length\" x-text=\"S.competitions.length?'Nothing needs attention here right now.':'No competitions loaded for this block.'\"><\/div>\n\t\t<\/section>\n\n\t\t<!-- NOT HERE YET -->\n\t\t<section x-show=\"tab==='missing'\">\n\t\t\t<p class=\"ci-hint\" x-text=\"missingHint()\"><\/p>\n\t\t\t<template x-for=\"g in missingGroups()\" :key=\"g.key\">\n\t\t\t\t<div class=\"ci-slot\">\n\t\t\t\t\t<h3><span x-text=\"g.label\"><\/span><span class=\"ci-hint\" x-text=\"g.items.length+' not here'\"><\/span><\/h3>\n\t\t\t\t\t<div class=\"ci-list\">\n\t\t\t\t\t\t<template x-for=\"a in g.items\" :key=\"a.id\">\n\t\t\t\t\t\t\t<div class=\"ci-row\">\n\t\t\t\t\t\t\t\t<div><div class=\"ci-nm\"><span x-text=\"personName(a.person_id)\"><\/span> <span class=\"ci-chip\" x-text=\"roleLabel(a.role)\"><\/span><span class=\"ci-chip late\" x-show=\"isLate(a)\">Late<\/span><\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"ci-sub\"><span x-html=\"itemLine(a)\"><\/span><span x-html=\"contactLine(a.person_id)\"><\/span><\/div><\/div>\n\t\t\t\t\t\t\t\t<div class=\"ci-acts\" x-show=\"cfg.group.can_edit\">\n\t\t\t\t\t\t\t\t\t<button class=\"ci-btn ci-sm\" @click=\"checkInOne(a)\">Check in<\/button>\n\t\t\t\t\t\t\t\t\t<button class=\"ci-btn ci-sm ci-ghost\" x-show=\"S.sms_enabled&&person(a.person_id).sms_ok\" @click=\"nudge(a,'sms')\">Text<\/button>\n\t\t\t\t\t\t\t\t\t<button class=\"ci-btn ci-sm ci-ghost\" x-show=\"person(a.person_id).email_ok\" @click=\"nudge(a,'email')\">Email<\/button>\n\t\t\t\t\t\t\t\t\t<button class=\"ci-btn ci-sm ci-danger\" @click=\"noShow(a)\">No-show<\/button>\n\t\t\t\t\t\t\t\t\t<button class=\"ci-btn ci-sm ci-primary\" x-show=\"a.competition_id\" @click=\"pickBackup(comp(a.competition_id), a)\">Replace<\/button>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/template>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/template>\n\t\t\t<div class=\"ci-empty\" x-show=\"!missingGroups().length\">Everyone expected in this block has checked in or been handled.<\/div>\n\t\t<\/section>\n\n\t\t<!-- BACKUPS -->\n\t\t<section x-show=\"tab==='backups'\">\n\t\t\t<div class=\"ci-grid2\">\n\t\t\t\t<div>\n\t\t\t\t\t<div class=\"ci-toolbar\"><strong class=\"ci-h2\">Backup pool<\/strong><button class=\"ci-btn ci-sm\" x-show=\"cfg.group.can_edit\" @click=\"openWalkin(true)\">+ Add backup<\/button><\/div>\n\t\t\t\t\t<div class=\"ci-list\">\n\t\t\t\t\t\t<template x-for=\"a in backupPool()\" :key=\"a.id\">\n\t\t\t\t\t\t\t<div class=\"ci-row\"><div><div class=\"ci-nm\"><span x-text=\"personName(a.person_id)\"><\/span> <span class=\"ci-chip\" x-text=\"roleLabel(a.role)\"><\/span> <span class=\"ci-chip\" :class=\"a.status\" x-text=\"a.status==='in'?'Here '+fmtT(a.checked_in_at):statusText(a.status)\"><\/span><\/div><div class=\"ci-sub\"><span x-html=\"contactLine(a.person_id)\"><\/span><span class=\"ci-hint\" x-text=\"a.notes\"><\/span><\/div><\/div>\n\t\t\t\t\t\t\t\t<div class=\"ci-acts\" x-show=\"cfg.group.can_edit\"><button class=\"ci-btn ci-sm ci-primary\" @click=\"pickCompetition(a)\">Assign to competition<\/button><button class=\"ci-btn ci-sm\" x-show=\"a.status!=='in'\" @click=\"checkInOne(a)\">Check in<\/button><button class=\"ci-btn ci-sm ci-ghost\" @click=\"openAssignment(a)\">Edit<\/button><\/div><\/div>\n\t\t\t\t\t\t<\/template>\n\t\t\t\t\t\t<div class=\"ci-empty\" x-show=\"!backupPool().length\">No free backups in this block.<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<p class=\"ci-hint\" x-show=\"backupsUsed().length\" x-text=\"backupsUsedText()\"><\/p>\n\t\t\t\t<\/div>\n\t\t\t\t<div>\n\t\t\t\t\t<div class=\"ci-toolbar\"><strong class=\"ci-h2\">Sections that need someone<\/strong><\/div>\n\t\t\t\t\t<div class=\"ci-list\">\n\t\t\t\t\t\t<template x-for=\"c in needList()\" :key=\"c.id\">\n\t\t\t\t\t\t\t<div class=\"ci-ev\" :class=\"c.state\"><div><div class=\"ci-h\"><strong x-text=\"c.label+(c.section?' \u2014 '+c.section:'')\"><\/strong><span class=\"ci-meta\" x-text=\"(c.start_time?fmtT2(c.start_time)+' \u00b7 ':'')+roomText(c.room)\"><\/span><\/div><div class=\"ci-sub\" x-text=\"shortRolesText(c)\"><\/div><\/div>\n\t\t\t\t\t\t\t\t<div class=\"ci-acts\" x-show=\"cfg.group.can_edit\"><button class=\"ci-btn ci-sm ci-primary\" @click=\"pickBackup(c)\">Send backup<\/button><\/div><\/div>\n\t\t\t\t\t\t<\/template>\n\t\t\t\t\t\t<div class=\"ci-empty\" x-show=\"!needList().length\">Every section in this block is covered.<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/section>\n\n\t\t<!-- CHECK-OUT -->\n\t\t<section x-show=\"tab==='checkout'\">\n\t\t\t<div class=\"ci-toolbar\"><span class=\"ci-hint\" x-text=\"inNow().length+' people currently checked in'+(block?' in this block':'')+'.'\"><\/span><button class=\"ci-btn ci-danger\" x-show=\"cfg.group.can_edit&&inNow().length\" @click=\"checkOutAll()\">Check out everyone<\/button><\/div>\n\t\t\t<div class=\"ci-list\">\n\t\t\t\t<template x-for=\"p in inNow()\" :key=\"p.id\">\n\t\t\t\t\t<div class=\"ci-row in\"><div><div class=\"ci-nm\"><span x-text=\"p.name\"><\/span> <span class=\"ci-chip in\" x-text=\"'In '+fmtT(p.at)\"><\/span><\/div><div class=\"ci-sub\"><template x-for=\"a in p.items\" :key=\"a.id\"><span x-html=\"itemLine(a)\"><\/span><\/template><\/div><\/div>\n\t\t\t\t\t\t<div class=\"ci-acts\" x-show=\"cfg.group.can_edit\"><button class=\"ci-btn\" @click=\"checkOut(p)\">Check out<\/button><\/div><\/div>\n\t\t\t\t<\/template>\n\t\t\t\t<div class=\"ci-empty\" x-show=\"!inNow().length\">No one is checked in right now.<\/div>\n\t\t\t<\/div>\n\t\t<\/section>\n\n\t\t<!-- ACTIVITY -->\n\t\t<section x-show=\"tab==='activity'\">\n\t\t\t<div class=\"ci-toolbar\"><span class=\"ci-hint\">Latest changes from every desk, all blocks.<\/span><button class=\"ci-btn ci-sm\" @click=\"exportCsv()\">Download check-in record (.csv)<\/button><\/div>\n\t\t\t<div class=\"ci-card\"><div class=\"ci-feed\">\n\t\t\t\t<template x-for=\"x in S.activity\" :key=\"x.id\"><div><time x-text=\"fmtT(x.at)\"><\/time><span><strong x-text=\"x.person\"><\/strong> <span x-text=\"x.detail\"><\/span> <span class=\"ci-by\" x-show=\"x.actor\" x-text=\"'by '+x.actor\"><\/span><\/span><\/div><\/template>\n\t\t\t\t<div class=\"ci-empty\" x-show=\"!S.activity.length\">No activity yet.<\/div>\n\t\t\t<\/div><\/div>\n\t\t<\/section>\n\n\t\t<!-- MODALS -->\n\t\t<div class=\"ci-overlay\" x-show=\"modal\" x-cloak @click.self=\"modal=null\" @keydown.escape.window=\"modal=null\">\n\t\t\t<div class=\"ci-modal\" role=\"dialog\" aria-modal=\"true\">\n\t\t\t\t<template x-if=\"modal&&modal.kind==='walkin'\">\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<h2 x-text=\"modal.backup?'Add backup':'Walk-in'\"><\/h2>\n\t\t\t\t\t\t<p class=\"ci-hint\" x-text=\"modal.backup?'Adds them to the backup pool for this block as not here yet.':'Checks them in now and puts them in the backup pool so you can send them where they are needed.'\"><\/p>\n\t\t\t\t\t\t<form class=\"ci-form\" @submit.prevent=\"saveWalkin()\">\n\t\t\t\t\t\t\t<label>Name <input type=\"text\" x-model=\"modal.name\" required><\/label>\n\t\t\t\t\t\t\t<label>Role <select x-model=\"modal.role\"><template x-for=\"(r,k) in S.roles\" :key=\"k\"><option :value=\"k\" x-text=\"r.label\"><\/option><\/template><\/select><\/label>\n\t\t\t\t\t\t\t<div class=\"ci-2col\"><label>Mobile <input type=\"tel\" x-model=\"modal.phone\"><\/label><label>Email <input type=\"email\" x-model=\"modal.email\"><\/label><\/div>\n\t\t\t\t\t\t\t<label>Organization <input type=\"text\" x-model=\"modal.organization\"><\/label>\n\t\t\t\t\t\t\t<label>Notes <input type=\"text\" x-model=\"modal.notes\" placeholder=\"e.g. can judge accounting events\"><\/label>\n\t\t\t\t\t\t\t<div class=\"ci-foot\"><span><\/span><span><button type=\"button\" class=\"ci-btn\" @click=\"modal=null\">Cancel<\/button> <button class=\"ci-btn ci-primary\" type=\"submit\" :disabled=\"busy\" x-text=\"modal.backup?'Add backup':'Check in'\"><\/button><\/span><\/div>\n\t\t\t\t\t\t<\/form>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/template>\n\t\t\t\t<template x-if=\"modal&&modal.kind==='pickBackup'\">\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<h2>Send a backup<\/h2>\n\t\t\t\t\t\t<p class=\"ci-hint\"><span x-text=\"modal.comp.label+(modal.comp.section?' \u2014 '+modal.comp.section:'')\"><\/span> \u00b7 <span x-text=\"roomText(modal.comp.room)\"><\/span><span x-show=\"modal.replace\"><br>Replacing <strong x-text=\"modal.replace?personName(modal.replace.person_id):''\"><\/strong> (will be marked no-show)<\/span><\/p>\n\t\t\t\t\t\t<div class=\"ci-pick\">\n\t\t\t\t\t\t\t<template x-for=\"a in backupCandidates(modal)\" :key=\"a.id\"><button @click=\"sendBackup(a, modal.comp, modal.replace)\"><span><strong x-text=\"personName(a.person_id)\"><\/strong> <span class=\"ci-chip\" x-text=\"roleLabel(a.role)\"><\/span> <span class=\"ci-mono\" x-text=\"person(a.person_id).phone_display\"><\/span><\/span><span class=\"ci-chip\" :class=\"a.status\" x-text=\"a.status==='in'?'Here':'Not here yet'\"><\/span><\/button><\/template>\n\t\t\t\t\t\t\t<div class=\"ci-empty\" x-show=\"!backupCandidates(modal).length\">No free backups in this block. Add one on the Backups tab or check in a walk-in.<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"ci-foot\"><span><\/span><button class=\"ci-btn\" @click=\"modal=null\">Cancel<\/button><\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/template>\n\t\t\t\t<template x-if=\"modal&&modal.kind==='pickComp'\">\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<h2 x-text=\"'Assign '+personName(modal.a.person_id)\"><\/h2>\n\t\t\t\t\t\t<p class=\"ci-hint\">Sections that need someone are listed first.<\/p>\n\t\t\t\t\t\t<div class=\"ci-pick\">\n\t\t\t\t\t\t\t<template x-for=\"c in compChoices(modal.a)\" :key=\"c.id\"><button @click=\"sendBackup(modal.a, c, null)\"><span><span class=\"ci-mono\" x-text=\"fmtT2(c.start_time)\"><\/span> <strong x-text=\"c.label+(c.section?' \u2014 '+c.section:'')\"><\/strong> \u00b7 <span x-text=\"roomText(c.room)\"><\/span><\/span><span class=\"ci-chip\" :class=\"c.state\" x-text=\"c.roleCov(modal.a.role)\"><\/span><\/button><\/template>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"ci-foot\"><span><\/span><button class=\"ci-btn\" @click=\"modal=null\">Cancel<\/button><\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/template>\n\t\t\t\t<template x-if=\"modal&&modal.kind==='person'\">\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<h2 x-text=\"modal.p.name\"><\/h2>\n\t\t\t\t\t\t<form class=\"ci-form\" @submit.prevent=\"savePerson()\">\n\t\t\t\t\t\t\t<div class=\"ci-2col\"><label>First name <input type=\"text\" x-model=\"modal.first_name\" required><\/label><label>Last name <input type=\"text\" x-model=\"modal.last_name\"><\/label><\/div>\n\t\t\t\t\t\t\t<div class=\"ci-2col\"><label>Mobile <input type=\"tel\" x-model=\"modal.phone\"><\/label><label>Email <input type=\"email\" x-model=\"modal.email\"><\/label><\/div>\n\t\t\t\t\t\t\t<label>Organization <input type=\"text\" x-model=\"modal.organization\"><\/label>\n\t\t\t\t\t\t\t<label>Notes <textarea rows=\"2\" x-model=\"modal.notes\"><\/textarea><\/label>\n\t\t\t\t\t\t\t<h3>Assignments in this block<\/h3>\n\t\t\t\t\t\t\t<template x-for=\"a in modal.p.items\" :key=\"a.id\"><div class=\"ci-row ci-tight\"><span x-html=\"itemLine(a)\"><\/span><span class=\"ci-acts\"><span class=\"ci-chip\" :class=\"a.status\" x-text=\"statusText(a.status)\"><\/span><button type=\"button\" class=\"ci-btn ci-sm ci-ghost\" @click=\"openAssignment(a)\">Edit<\/button><\/span><\/div><\/template>\n\t\t\t\t\t\t\t<div class=\"ci-foot\"><span><\/span><span><button type=\"button\" class=\"ci-btn\" @click=\"modal=null\">Cancel<\/button> <button class=\"ci-btn ci-primary\" type=\"submit\" :disabled=\"busy\">Save<\/button><\/span><\/div>\n\t\t\t\t\t\t<\/form>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/template>\n\t\t\t\t<template x-if=\"modal&&modal.kind==='assignment'\">\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<h2 x-text=\"personName(modal.a.person_id)\"><\/h2>\n\t\t\t\t\t\t<p class=\"ci-hint\" x-text=\"roleLabel(modal.a.role)+(modal.a.kind==='backup'?' \u00b7 Backup':'')+(modal.a.checked_in_at?' \u00b7 Checked in '+fmtDT(modal.a.checked_in_at):'')\"><\/p>\n\t\t\t\t\t\t<form class=\"ci-form\" @submit.prevent=\"saveAssignment()\">\n\t\t\t\t\t\t\t<label>Competition <select x-model=\"modal.competition_id\"><option value=\"0\">\u2014 Backup pool (no competition) \u2014<\/option><template x-for=\"c in blockComps()\" :key=\"c.id\"><option :value=\"c.id\" x-text=\"(c.start_time?fmtT2(c.start_time)+' \u00b7 ':'')+c.label+(c.section?' \u2014 '+c.section:'')+' \u00b7 Room '+(c.room||'TBA')\"><\/option><\/template><\/select><\/label>\n\t\t\t\t\t\t\t<div class=\"ci-2col\">\n\t\t\t\t\t\t\t\t<label>Status <select x-model=\"modal.status\"><option value=\"expected\">Not here yet<\/option><option value=\"in\">Checked in<\/option><option value=\"out\">Checked out<\/option><option value=\"noshow\">No-show<\/option><\/select><\/label>\n\t\t\t\t\t\t\t\t<label>Role <select x-model=\"modal.role\"><template x-for=\"(r,k) in S.roles\" :key=\"k\"><option :value=\"k\" x-text=\"r.label\"><\/option><\/template><\/select><\/label>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<label>Notes <textarea rows=\"2\" x-model=\"modal.notes\"><\/textarea><\/label>\n\t\t\t\t\t\t\t<div class=\"ci-foot\"><span><button type=\"button\" class=\"ci-btn ci-sm ci-danger\" @click=\"removeAssignment()\">Remove<\/button><\/span><span><button type=\"button\" class=\"ci-btn\" @click=\"modal=null\">Cancel<\/button> <button class=\"ci-btn ci-primary\" type=\"submit\" :disabled=\"busy\">Save<\/button><\/span><\/div>\n\t\t\t\t\t\t<\/form>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/template>\n\t\t\t\t<template x-if=\"modal&&modal.kind==='comp'\">\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<h2 x-text=\"modal.id?'Edit competition':'Add a competition'\"><\/h2>\n\t\t\t\t\t\t<p class=\"ci-hint\" x-show=\"!modal.id\">For a room or event added on site.<\/p>\n\t\t\t\t\t\t<form class=\"ci-form\" @submit.prevent=\"saveComp()\">\n\t\t\t\t\t\t\t<div class=\"ci-2col\"><label>Block <select x-model=\"modal.block_id\"><option value=\"0\">\u2014<\/option><template x-for=\"b in S.blocks\" :key=\"b.id\"><option :value=\"b.id\" x-text=\"b.name\"><\/option><\/template><\/select><\/label><label>Room <input type=\"text\" x-model=\"modal.room\"><\/label><\/div>\n\t\t\t\t\t\t\t<div class=\"ci-2col\"><label>Start <input type=\"time\" x-model=\"modal.start_time\"><\/label><label>End <input type=\"time\" x-model=\"modal.end_time\"><\/label><\/div>\n\t\t\t\t\t\t\t<div class=\"ci-2col\"><label>Event code <input type=\"text\" x-model=\"modal.event_code\" placeholder=\"120\"><\/label><label>Division <input type=\"text\" x-model=\"modal.division\" placeholder=\"S, PS, ML\"><\/label><\/div>\n\t\t\t\t\t\t\t<label>Event name <input type=\"text\" x-model=\"modal.event_name\" required><\/label>\n\t\t\t\t\t\t\t<label>Section <input type=\"text\" x-model=\"modal.section\" placeholder=\"Section 1\"><\/label>\n\t\t\t\t\t\t\t<div class=\"ci-needs\"><template x-for=\"(r,k) in S.roles\" :key=\"k\"><label x-show=\"r.needs\"><span x-text=\"r.plural+' needed'\"><\/span><input type=\"number\" min=\"0\" max=\"99\" x-model=\"modal.needs[k]\"><\/label><\/template><\/div>\n\t\t\t\t\t\t\t<div class=\"ci-foot\"><span><button type=\"button\" class=\"ci-btn ci-sm ci-danger\" x-show=\"modal.id\" @click=\"removeComp()\">Remove<\/button><\/span><span><button type=\"button\" class=\"ci-btn\" @click=\"modal=null\">Cancel<\/button> <button class=\"ci-btn ci-primary\" type=\"submit\" :disabled=\"busy\">Save<\/button><\/span><\/div>\n\t\t\t\t\t\t<\/form>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/template>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<div class=\"ci-toast\" x-show=\"toast\" x-cloak :class=\"toastErr?'err':''\" x-text=\"toast\"><\/div>\n\t<\/div>\n\t<\/div>\n\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-11","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/checkin.bpa.org\/index.php?rest_route=\/wp\/v2\/pages\/11","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/checkin.bpa.org\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/checkin.bpa.org\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/checkin.bpa.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/checkin.bpa.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=11"}],"version-history":[{"count":0,"href":"https:\/\/checkin.bpa.org\/index.php?rest_route=\/wp\/v2\/pages\/11\/revisions"}],"wp:attachment":[{"href":"https:\/\/checkin.bpa.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=11"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}