Use the home-with-person icon on the choose screen and key/viewfinder icons on employee code vs scan badge mode cards.
Co-authored-by: Cursor <cursoragent@cursor.com>
Uses the provided two-person outline icon with currentColor so it inherits the indigo accent on the choose screen.
Co-authored-by: Cursor <cursoragent@cursor.com>
Split staff identify into two steps with progress header, labeled fields, and icon mode cards; remove uppercase styling on employee code input.
Co-authored-by: Cursor <cursoragent@cursor.com>
Uses html5-qrcode with rear camera preview on Scan badge, keeps external scanner fallback, and still requires PIN after a successful scan.
Co-authored-by: Cursor <cursoragent@cursor.com>
After tapping begin, users pick Visitor or Staff icon cards before entering the respective check-in or sign-in flows.
Co-authored-by: Cursor <cursoragent@cursor.com>
Use a short index name and make the migration idempotent so redeploy recovers after the failed partial run.
Co-authored-by: Cursor <cursoragent@cursor.com>
Sync mobile-header-btn partials, mobile x-btn.create, and update dashboard header actions for consistent mobile FABs.
Co-authored-by: Cursor <cursoragent@cursor.com>
Extract shared quick-action and section-link partials so dashboard and visits headers share the same white and purple mobile FABs while section links keep indigo icon buttons.
Co-authored-by: Cursor <cursoragent@cursor.com>
Remove duplicate Billing header above Home; wallet card follows Billing
in menu order to match the desktop avatar dropdown.
Co-authored-by: Cursor <cursoragent@cursor.com>
Contractors are counted as visitors; drop the separate contractor line
including the redundant zero state.
Co-authored-by: Cursor <cursoragent@cursor.com>
Remove the standalone Contractors stat tile and show the contractor total
as a subtitle under Visitors Today.
Co-authored-by: Cursor <cursoragent@cursor.com>
Show compact pre-register and check-in actions beside the organization name
on mobile while keeping the existing white and purple styling.
Co-authored-by: Cursor <cursoragent@cursor.com>
Stack full-width check-in and pre-register buttons on mobile; show wallet card
in the profile bottom sheet with balance refresh on open.
Co-authored-by: Cursor <cursoragent@cursor.com>
Frontdesk now matches the Ladill mobile pattern: app name in the header,
Home/Search/Notifications/Profile in the bottom bar with a profile sheet.
Co-authored-by: Cursor <cursoragent@cursor.com>
Compliance and administration nav items now match the icon style used
across the rest of the Frontdesk sidebar.
Co-authored-by: Cursor <cursoragent@cursor.com>
Frontdesk now calls ladill.com/api/afia/chat using IDENTITY_API_KEY_FRONTDESK
so production does not need a separate OpenAI key in the frontdesk .env.
Co-authored-by: Cursor <cursoragent@cursor.com>
Adds a dedicated Pro page with wallet upgrade, gradient Upgrade to Pro
button in the sidebar footer, and view composer for plan status.
Co-authored-by: Cursor <cursoragent@cursor.com>
Host alerts use email/phone on the host record without requiring a Ladill
account link; SMS and over-quota emails debit the org wallet at platform rates.
Co-authored-by: Cursor <cursoragent@cursor.com>
Add the AI assistant button, chat endpoint, and Frontdesk-specific prompts, and include Frontdesk in the shared launcher config used by the app switcher.
Co-authored-by: Cursor <cursoragent@cursor.com>
Replace the static kiosk/printer token message with dynamic hints per device type so reception computers are not misread as getting unattended access.
Co-authored-by: Cursor <cursoragent@cursor.com>
Move kiosk logic into Alpine.data with explicit step methods, render one step at a time with x-if, and show inline validation errors.
Co-authored-by: Cursor <cursoragent@cursor.com>
Use novalidate and explicit click handler so browser validation on later steps does not prevent advancing the multistep form.
Co-authored-by: Cursor <cursoragent@cursor.com>
Place a circular back control at the top-left of the content area; return to welcome or previous form step.
Co-authored-by: Cursor <cursoragent@cursor.com>
Center visitor type carousel with swipe and dots; break check-in into About you, Your visit, optional type fields, and Photo & finish.
Co-authored-by: Cursor <cursoragent@cursor.com>
Show Ladill Frontdesk or uploaded logo top-left on kiosk; allow logo upload in onboarding and organization settings.
Co-authored-by: Cursor <cursoragent@cursor.com>
Show Frontdesk icon, company welcome message, and a prominent Tap to begin step before visitor type selection.
Co-authored-by: Cursor <cursoragent@cursor.com>
Replace inline teal button classes with shared btn-primary and indigo nav/link styling used by CRM and POS.
Co-authored-by: Cursor <cursoragent@cursor.com>
Only show the sidebar link when a host record is linked to the signed-in user, and redirect direct visits to the dashboard with a clear message instead of a 403 page.
Co-authored-by: Cursor <cursoragent@cursor.com>
Drop dark-mode toggle, fd-theme storage, and Tailwind dark variant to match sibling Ladill apps. Include boot splash in app-layout instead of regex middleware that truncated the body tag on Alpine x-init.
Co-authored-by: Cursor <cursoragent@cursor.com>
Use signed_out config for auth error views instead of hardcoded Ladill CRM assets left from the CRM template.
Co-authored-by: Cursor <cursoragent@cursor.com>
Other Ladill repos use a single on-host deploy workflow (runs-on: deploy) for fast releases. Tests run locally; optional ci.yml can be added on pull_request later per FAST-DEPLOY.md.
Co-authored-by: Cursor <cursoragent@cursor.com>