Lead Workspace
Authorized clients manage leads on front routes—list, detail, and Add Lead—without WordPress admin chrome. Permanent deletion stays operator-only in wp-admin.
Routes
| Route | Purpose |
|---|---|
/vexal-intake/leads/ | Lead inbox (Active / Archived / All) |
/vexal-intake/leads/add/ | Manual Add Lead (1.0.029+) |
/vexal-intake/leads/{id}/ | Lead detail Workspace |
?lead_view=active|archived|all | Preserved across search, pagination, and per-page |
Pretty permalinks require the plugin to be active and rewrite rules flushed. Inactive Intake produces a WordPress 404 for these paths even when other permalinks work.
Client actions (no permanent delete)
- Archive — soft archive with optional reason; CRM status is unchanged
- Mark as Spam — soft archive with reason
spam - Restore — clears archive meta; returns the lead to the active inbox
- Add Lead — manual entry via the shared submission repository (
_wi_entry_source=manual); does not send public-form owner notification mail
Archive state is separate from CRM status (_wi_crm_*). While archived, CRM status changes are locked until restore.
Action buttons show a spinner / aria-busy loading state while POST redirects complete (1.0.032).
Operator-only permanent delete
Available only in WordPress admin on Intake submissions:
- Requires manage / delete CPT capability and
vexal_intake_delete_leads - Exact operator email from
VEXAL_INTAKE_DELETE_OPERATOR_EMAIL(defaultnadmedia@gmail.com) — not a production filter - POST + nonce; CPT delete runs before file / invite cleanup
- Minimal deletion audit (no lead PII payload)
- Not exposed on front-end HTML, JavaScript config, or localized routes
Other administrators and clients cannot permanently delete leads.
Hub Leads card counts
Hub pulls Intake summaries via the Module Manifest + Workspace adapters. Count rules (1.0.030+):
| Field | Includes archived / spam? |
|---|---|
total_leads, leads_today | Yes — historical acquisition |
active_leads | No — non-archived only |
archived_leads | Yes — archived including spam |
new_leads, open_leads, quoted_leads | No — active workflow only |
active_leads and archived_leads are additive; existing Hub fields remain compatible.
Version map
- 1.0.029 — Operator delete + client Add Lead
- 1.0.030 — Archive / spam / restore; Hub active/archived counts; delete hardening
- 1.0.031 — Isolated test-database bootstrap for CLI suites (automated-test baseline)
- 1.0.032 — Busy loaders on Lead Workspace action buttons