Staff Portal

Secure Staff Tracker, Directory & Approvals

{{loginError}}
Protected with dual-person deletion approval & permanent audit logs

Staff Management Workspace

Transfers, Directory & Multi-Person Deletion Approval Audit Trail Active

{{ currentUser.charAt(0) }}
{{ currentUser }}
Sync
Local Storage
Syncing...
Offline
Live Synced

Total Records

{{ records.length }}

Police Portal Yes

{{ records.filter(r => r.policePortalCompleted === 'yes').length }}

Police Portal Pending

{{ records.filter(r => r.policePortalCompleted === 'pending').length }}

Deletion Requests

{{ pendingRequestsCount }} pending approval

There are {{ pendingRequestsCount }} pending deletion request(s) waiting for multi-person approval.

Policy requires at least one other team member to review and approve before any entry is permanently deleted.

Tracker Sheet

Auto-Protected Deletions
Branch Name Staff Name Reason for change Date Current Alarm Armer New Alarm Armer Sim Number Email ID ITD Completed Police Portal Trace Action
Current Branch Transferred Branch

No tracker records found.

Pending Approval
{{ row.lastEditedBy }}
{{ new Date(row.lastEditedAt).toLocaleString([], {hour: '2-digit', minute:'2-digit', month:'short', day:'numeric'}) }}

Branch Directory

Manage staff assigned to each branch with deletion approval safeguards.

Region Branch Staff Name Phone Email Status Trace Action
Pending Approval
{{ dir.lastEditedBy }}
{{ new Date(dir.lastEditedAt).toLocaleString([], {hour:'2-digit', minute:'2-digit', month:'short', day:'numeric'}) }}

No staff found.

Click 'Add Staff' to add people to the directory.

Pending Approvals

{{ pendingRequestsCount }}

Requires 1 other person

Approved & Deleted

{{ approvedDeletionsCount }}

Dual-verified deletions

Permanent Audit Logs

{{ deletionAuditLogs.length }}

Immutable records

Dual Sign-off Security

No user can delete records unilaterally. The requester cannot approve their own deletion. Audit logs cannot be removed by users.

All Clear — No Pending Deletion Requests

When a team member requests to delete a row in the Staff Tracker or Directory, it will appear here for review and second-person approval.

{{ req.targetType === 'tracker' ? 'Staff Tracker Sheet' : 'Branch Directory' }} Awaiting 2nd Person Approval
Requested {{ new Date(req.requestedAt).toLocaleString([], {month:'short', day:'numeric', hour:'2-digit', minute:'2-digit'}) }}

{{ req.staffName }}

Branch: {{ req.branch }}

Reason for Deletion

{{ req.reason }}

Record Info: {{ req.extraInfo }}

{{ req.requestedBy.charAt(0) }}
Requested by: {{ req.requestedBy }}

Permanent Deletion Audit Trail

Protected & Immutable

Complete record of who requested deletion and who approved or rejected it. This log cannot be altered or removed by users.

Outcome Source Staff Name & Branch Reason for Deletion Requested By (1st Person) Reviewed By (2nd Person) Record

No deletion audit records matching criteria.

Approved and rejected deletions will be logged here permanently.

Approved & Deleted Rejected / Restored {{ log.targetType }}
{{ log.staffName }}
{{ log.branch }}
{{ log.reason }}
{{ log.details }}
{{ (log.requestedBy || 'U').charAt(0) }}
{{ log.requestedBy }}
{{ new Date(log.requestedAt).toLocaleString([], {month:'short', day:'numeric', hour:'2-digit', minute:'2-digit'}) }}
{{ (log.approvedBy || 'U').charAt(0) }}
{{ log.approvedBy }}
{{ new Date(log.approvedAt).toLocaleString([], {month:'short', day:'numeric', hour:'2-digit', minute:'2-digit'}) }}

Request Record Deletion

Policy: Requires approval from at least 1 other team member

To protect against accidental data loss, deletions do not happen immediately. Your request will be queued, and another team member must review and approve it. Both names will be permanently recorded in the audit log.
Entry Source: {{ itemDeleteType === 'tracker' ? 'Staff Tracker' : 'Branch Directory' }}
Staff Name: {{ itemDeleteType === 'tracker' ? (itemToDelete.staffName || 'Unnamed Staff') : (itemToDelete['Staff Name'] || 'Unnamed Staff') }}
Branch: {{ itemDeleteType === 'tracker' ? (itemToDelete.currentBranch || 'N/A') : (itemToDelete.Branch || 'N/A') }}
Tracker Reason: {{ itemToDelete.reason }}

Record Snapshot Details

Preserved original data snapshot for compliance

{{ key }} {{ val || '—' }}
Protected Historical Data

Team Accounts

Manage users and reset passwords. User accounts cannot be deleted to preserve historical audit trail.

Security Policy: User accounts are permanent and cannot be deleted by users, ensuring that all deletion requests and second-person approvals maintain an unbroken audit trail.
Team Member Password Status Audit Trail Action
{{name.charAt(0)}}
{{name}}
{{ ADMINS.includes(name) ? 'Administrator' : 'Team Member' }}
Default (1234) Custom Secure
Reset by: {{usersData[name]?.resetBy || 'System'}}
{{new Date(usersData[name]?.resetAt || Date.now()).toLocaleString()}}

Set Secure Password

You are currently using the default password. For security, please set a new custom password to continue.

Enter your new custom password below.