diff --git a/apps/api/src/admin/participant_manager.py b/apps/api/src/admin/participant_manager.py index 354aefe9a..f4af0fa40 100644 --- a/apps/api/src/admin/participant_manager.py +++ b/apps/api/src/admin/participant_manager.py @@ -52,7 +52,15 @@ async def check_in_applicant(uid: str, associate: User) -> None: record: Optional[dict[str, object]] = await mongodb_handler.retrieve_one( Collection.USERS, {"_id": uid, "role": Role.APPLICANT} ) - if not record or record["status"] not in (Status.ATTENDING, Status.CONFIRMED): + if not record: + raise ValueError + + try: + status = record["status"] + except KeyError: + raise RuntimeError + + if status not in (Status.ATTENDING, Status.CONFIRMED): raise ValueError new_checkin_entry = (utc_now(), associate.uid) diff --git a/apps/api/src/routers/admin.py b/apps/api/src/routers/admin.py index e8b81be52..f5154e0ac 100644 --- a/apps/api/src/routers/admin.py +++ b/apps/api/src/routers/admin.py @@ -258,7 +258,6 @@ async def checkin( ) -> None: """Check in participant at IrvineHacks.""" try: - # TODO: non-hackers await participant_manager.check_in_applicant(uid, associate) except ValueError: raise HTTPException(status.HTTP_404_NOT_FOUND)