Access Restricted
You are not enrolled as a Gate Pass Issuer or Security Staff member. Site administrators manage enrollment under Gate Pass admin; ask an admin to add you to the correct role.
Security Gate Control
Scan a pass code to check in or out. Guest codes and staff codes (e.g. GS-…) open the same validation screen.
Pending Doorstep Acknowledgments (Violations)
{{ violations | length }} Active| Guest Name | Vehicle / Access | Check-In Time | Intended Host | Duration | Action |
|---|---|---|---|---|---|
| {{ pass.guest_name }} {% if pass.additional_guests > 0 %} (+{{ pass.additional_guests }}){% endif %} | {{ pass.vehicle_number }} | {{ pass.check_in_time | date_in_tz(timezone=tz, format=dt_fmt) | default(value="—") }} | {{ user_cell::render(name=pass.owner_name, email=pass.owner_email, avatar=pass.owner_avatar) }} | {{ pass.duration_hours }} hours | |
|
No active acknowledgment violations. All hosts confirmed arrival on time. |
|||||
Guests Currently Inside
{{ inside_guests | length }} Guests| Guest Name | Vehicle / Access | Check-In Time | Arrival Acknowledged | Intended Host | Action |
|---|---|---|---|---|---|
| {{ pass.guest_name }} {% if pass.additional_guests > 0 %} (+{{ pass.additional_guests }}){% endif %} | {{ pass.vehicle_number }} | {{ pass.check_in_time | date_in_tz(timezone=tz, format=dt_fmt) | default(value="—") }} | {% if pass.acknowledged_at %} Confirmed {% else %} Awaiting Receipt {% endif %} | {{ user_cell::render(name=pass.owner_name, email=pass.owner_email, avatar=pass.owner_avatar) }} | Entry / exit |
|
No guests currently checked in. |
|||||
Staff Currently Inside
{{ inside_staff | length }} Staff| Name | Vehicle / ID | Check-in | Host | Entry / exit |
|---|---|---|---|---|
| {{ pass.guest_name }} | {{ pass.vehicle_number }} | {{ pass.check_in_time | date_in_tz(timezone=tz, format=dt_fmt) | default(value="—") }} | {{ user_cell::render(name=pass.owner_name, email=pass.owner_email, avatar=pass.owner_avatar) }} | Record exit |
|
No staff checked in. Scan a |
||||
Staff Entry / Exit Log
| Name | Code | Check-in | Exit | Host | Status |
|---|---|---|---|---|---|
| {{ pass.guest_name }} | {{ pass.pass_code }} |
{{ pass.check_in_time | date_in_tz(timezone=tz, format=dt_fmt) | default(value="—") }} | {{ pass.checkout_time | date_in_tz(timezone=tz, format=dt_fmt) | default(value="—") }} | {{ user_cell::render(name=pass.owner_name, email=pass.owner_email, avatar=pass.owner_avatar) }} | {% if pass.computed_state == "checked_in" %} Inside {% else %} Exited {% endif %} |
|
No staff visits logged yet. |
|||||
Recent Guest Entries & Exits
| Guest Name | Vehicle / Access | Check-In Time | Checkout Time | Host | Pass Status |
|---|---|---|---|---|---|
| {{ pass.guest_name }} {% if pass.additional_guests > 0 %} (+{{ pass.additional_guests }}){% endif %} | {{ pass.vehicle_number }} | {{ pass.check_in_time | date_in_tz(timezone=tz, format=dt_fmt) | default(value="—") }} | {{ pass.checkout_time | date_in_tz(timezone=tz, format=dt_fmt) | default(value="—") }} | {{ user_cell::render(name=pass.owner_name, email=pass.owner_email, avatar=pass.owner_avatar) }} | {% if pass.computed_state == "checked_out" or pass.computed_state == "completed" %} Checked Out {% elif pass.computed_state == "violation" %} Violation {% elif pass.computed_state == "expired" %} Expired {% else %} Inside {% endif %} |
|
No activity logged for today. |
|||||
Guest Gate Passes
Generate entry passes and confirm your guest's arrival/departure.
Staff Authorizations
| Name | Valid period | Status | Actions |
|---|---|---|---|
| {{ auth.display_name }} | {{ auth.valid_from | date_in_tz(timezone=tz, format=dt_fmt) }} – {{ auth.valid_to | date_in_tz(timezone=tz, format=dt_fmt) }} | {% if auth.computed_state == "valid" %} Active {% elif auth.computed_state == "checked_in" %} Checked in {% elif auth.computed_state == "outside_schedule" %} Outside hours {% elif auth.computed_state == "expired" %} Expired {% elif auth.computed_state == "too_early" %} Not started {% else %} {{ auth.computed_state }} {% endif %} | QR |
Staff Visit Log
Guest Passes
| Guest Name | Vehicle / Access | Appointment Time | Duration | Status | Actions |
|---|---|---|---|---|---|
| {{ pass.guest_name }} {% if pass.additional_guests > 0 %} (+{{ pass.additional_guests }}){% endif %} | {{ pass.vehicle_number }} | {{ pass.appointment_time | date_in_tz(timezone=tz, format=dt_fmt) | default(value="—") }} | {{ pass.duration_hours }} hours | {% if pass.computed_state == "valid" %} Active {% elif pass.computed_state == "checked_in" %} At Gate / Inside {% elif pass.computed_state == "violation" %} Acknowledge Timeout! {% elif pass.computed_state == "acknowledged" %} Arrival Acknowledged {% elif pass.computed_state == "checked_out" %} Checked Out {% elif pass.computed_state == "completed" %} Completed / Left {% elif pass.computed_state == "expired" %} Expired {% elif pass.computed_state == "too_early" %} Scheduled {% else %} Cancelled {% endif %} | {% if pass.computed_state == "checked_in" or pass.computed_state == "violation" %} {% elif pass.computed_state == "acknowledged" %} {% endif %} {% if pass.computed_state == "valid" or pass.computed_state == "too_early" %} View QR {% else %} View Pass {% endif %} |
No Gate PassesYou haven't generated any gate passes yet. Create one to welcome your guests! Create First Pass |
|||||