Launch self-service punch kiosks and one-click PDF reports
The attendance system now supports dedicated wall-mounted punch stations and full PDF report downloads, closing the last gaps with the old application.
- Punch kiosks are back, done properly: Admins can register shared punch stations (for example, a tablet at the front gate) from a new admin page. Employees scan their personal QR code and the kiosk automatically records check-in or check-out based on the day's state, with a live screen showing today's attendance counters and the most recent punches.
- Secure device credentials: Each kiosk gets its own secret key, shown only once at setup and stored encrypted. Keys can be rotated or revoked instantly from the admin panel, so a lost or compromised tablet never exposes employee data. Kiosks never hold a personal employee or admin login.
- Direct PDF downloads everywhere: Attendance history, monthly team reports, leave, permits, overtime, visits, work reports, and payslips can now all be downloaded as polished PDF files directly from the browser, with photos and evidence embedded. No print dialogs, no extra software on the server.
- Complete report coverage: Monthly reports include every calendar day (holidays, leave, and absences included), per-employee totals, and GPS coordinates, matching everything the old printable reports contained and more.
- Verified end to end: The full API test suite now runs against the staging database with 143 of 143 routes exercised and 559 checks passing, including the new kiosk punch, feed, and key rotation flows.
Approve requests straight from the queue with photo previews
Reviewing attendance requests gets faster for admins, and submitted evidence is now visible without leaving the page.
- One-click decisions: Pending leave, permit, overtime, visit, and work report requests now show an approve/reject dropdown directly in the queue table's status column, like the old admin reports. No more opening each request just to make a decision.
- Photo previews in place: Clicking an evidence thumbnail (check-in selfie, check-out photo, or visit photo) now opens the full image in a pop-up window on the same page instead of jumping to a new browser tab, so admins can review evidence without losing their place in the list.
- Cleaner buttons: Menu and filter buttons across the app now share the same rounded shape and size as the rest of the interface, for a consistent look on every page.
Photo evidence in admin tables and bilingual notifications
Attendance records and notifications become more informative and readable for everyone.
- Selfie evidence at a glance: Admin attendance lists now show check-in and check-out photo thumbnails right in the table, next to the punch times, so day-to-day oversight no longer requires opening each record to see the evidence.
- Clearer punch layout: Check-in and check-out are grouped into a single labeled column with the punctuality status (on time or late) directly beneath each time, and dates show the weekday underneath, making the tables read like a calendar.
- Notifications in your language: Approval and submission notifications (leave, permits, visits, work reports) are now stored as templates and rendered in the reader's chosen language, so Indonesian-speaking employees no longer receive English notifications.
- Safer photo access: Evidence photos are served through a protected, authenticated channel with permission checks per feature, replacing direct storage links. Someone with a photo link alone can no longer open another employee's evidence.

