Skip to content

Run bootcamp session check-in from the bootcamp admin page - #422

Merged
aamoghS merged 1 commit into
feat/checkin-for-everyonefrom
feat/bootcamp-checkin-admin
Sep 25, 2026
Merged

aamoghS merged 1 commit into
feat/checkin-for-everyonefrom
feat/bootcamp-checkin-admin

Conversation

@github-actions

@github-actions github-actions Bot commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

Stacked on #421 (merge that first; GitHub retargets this to dev).

What

  • Club Hub (/admin) no longer lists bootcamp sessions; the header points to the Bootcamp page. Its event form drops the bootcamp week / bootcamp-only fields (sessions are scheduled from the workshop modal, which already sets both).
  • /admin/bootcamp gets a Session check-in panel: each week's QR code (download / regenerate), open/close toggle, attendance list (manual check-in / remove), and count.
  • bootcamp.attendance (admin only) now returns each session's qrCode, currentCheckIns, maxCheckIns. myProgress keeps the student-facing query, which never selects the QR — holding the code is enough to check in from anywhere.
  • QR logic moves out of the Club Hub into useEventQR (components/portal/EventQR.tsx), shared by both pages. EventAttendanceModal also refreshes the bootcamp grid.

Sessions are still events underneath: same door QR, same /checkin scanner for attendees, bootcamp-only enrolment check unchanged.

Verification

pnpm typecheck 9/9, pnpm lint 8/8, pnpm test 828 passing.

Manual check

/admin: Linear Regression and Core Libraries & Data Wrangling should be gone from the list (if they were created with a bootcamp week). /admin/bootcamp: both appear under Session check-in with working QR / Open-Close / Attendance.

Bootcamp sessions no longer appear in the Club Hub check-in manager.
/admin/bootcamp gets a "Session check-in" panel with each week's QR
code, open/close toggle, attendance list, and count.

- bootcamp.attendance (admin only) now returns each session's qrCode,
  currentCheckIns and maxCheckIns via adminSessionsForTerm. myProgress
  keeps the member-facing sessionsForTerm, which never selects the QR:
  holding the code is enough to check in from anywhere.
- The QR generate/download/regenerate logic moves out of the Club Hub
  into useEventQR (components/portal/EventQR.tsx), shared by both pages.
- The Club Hub event form drops the bootcamp week and bootcamp-only
  fields; sessions are scheduled from the workshop modal (upsertSession),
  which already sets both.
- EventAttendanceModal also refreshes the bootcamp grid, since it now
  opens from that page too.
@github-actions
github-actions Bot requested a review from aamoghS as a code owner September 25, 2026 01:52
@aamoghS aamoghS changed the title Feature: feat/bootcamp-checkin-admin to dev Run bootcamp session check-in from the bootcamp admin page Sep 25, 2026
@aamoghS
aamoghS changed the base branch from dev to feat/checkin-for-everyone September 25, 2026 01:52
@github-actions

Copy link
Copy Markdown
Contributor Author

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

Scanned Files

None

@github-actions

github-actions Bot commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor Author

Visit the preview URL for this PR (updated for commit 8a3e31d):

https://hacklytics2027--pr-422-tj3q1bgn.web.app

(expires Fri, 02 Oct 2026 02:11:20 GMT)

🔥 via Firebase Hosting GitHub Action 🌎

Sign: c48ba34db61581e25fe2978355160b5eefe0e83f

@aamoghS
aamoghS merged commit ab33ca8 into feat/checkin-for-everyone Sep 25, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant