Let an operator scan a ticket QR code at the door to mark attendance.

Attendance is already first-class in the engine's lifecycle: a confirmed booking becomes completed when honored (attended) or unused when not (a no-show), through BookingManager::complete() and markUnused(), with lifecycle events and order-level actions already in place. So "scan to mark attendance" maps directly onto complete(), with no new state needed.

Proposed yoyaku_checkin submodule, with no core changes: a permissioned endpoint that takes the ticket QR token, validates it, loads the referenced booking or order, and calls complete() to mark it attended. A no-show is then either the absence of a check-in by slot end or an explicit markUnused().

Pairs with the ticket generation submodule #3611638, which produces the QR token this consumes, and complements the numbered seating submodule #3611637.

Issue fork yoyaku-3611639

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

mably created an issue. See original summary.

mably’s picture

Status: Active » Needs review

  • mably committed 8eddcabd on 1.x
    fix: #3611639 Attendance check-in submodule (yoyaku_checkin): scan a...
mably’s picture

Status: Needs review » Fixed

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.