Generates fake JWT via btoa(header).btoa(payload).signature → stored as authToken + session in memory.
Create account
Signup requires email / password / confirm / first_name / last_name / age 18+ / user_type (user or support).
Validates age ≥18, matching confirm, and unique email. Creates user_type user/support and issues JWT.
Hash routing: #login / #signup toggles views · role-aware nav updates Hello, First Last · logout clears token.
Preview as
Admin sees all · can update any status & assign
Current: You (admin) — full access. Switch to User to see only your tickets and no Created By/Assigned To columns. Switch to Support to see all but only assigned rows can update status.
Dashboard
Filter Tickets
Filter by status and assignment — query params ?status=&assigned=.
Total Tickets
6
Open Tickets
2
Resolved Tickets
1
Urgent Tickets
1
Your Tickets
6 tickets · role: admin
ID
Title
Status
Priority
Created
Created By
Assigned To
Actions
No tickets found.
Table columns ID · Title · Status · Priority · Created · Created By · Assigned To · Actions — badges: status yellow/blue/green/gray, priority green/blue/orange/red. Click View for detail.