# AD Pro Price Lists — Changelog

## 1.7.1 (current)

### Version number single-source
- `CHCPL_VERSION` constant is now derived from the plugin header via `get_file_data()` instead of being hard-coded separately.
- Version only needs to be updated in one place (the `Version:` header line).

---

## 1.7

### Main plugin file renamed
- `ad-pro-price-list.php` → `ad-pro-price-lists.php`
- No code changes required; all internal references use `__FILE__` or constants.
- **Action required on upgrade:** reactivate the plugin once from the Plugins screen.

### About submenu
- New **About** submenu at the top of the Price Lists admin menu.
- Displays plugin name, version, author, website, and description.

### Styling page redesigned
- Settings grouped into labelled cards (Layout, Price List Cards, Inquiry Button, Lock Block Button, Modal Shell, Modal — Selected Service, Modal — Form Fields, Modal — Submit Button, Lock / Access Block).
- Single-column card layout, max 800 px wide.

### Submissions dashboard redesigned
- Stat cards (Total / Unread / Read) at the top of the page.
- Filter tabs: All / Unread / Read (server-side, URL-based).
- Bulk actions: mark as read, mark as unread, delete — with select-all checkbox and live selected count.
- Unread rows highlighted with a red left-border accent and dot indicator.
- Contact column combines name + email link; date splits into date + time.
- Icon-only row action buttons (checkmark / info / trash) with colour-coded hover states.
- Styled pagination with page X of Y indicator.
- Empty state with icon and contextual message per filter.

### Quote Requests dashboard redesigned
- Same layout and features as the Submissions dashboard.
- Service shown as a purple badge; message shown as a truncated preview with full text on hover.
- Bulk actions added (previously missing).
- Shared dashboard CSS enqueued once via `admin_enqueue_scripts` for both pages.

---

## 1.6

### Lock / Access Block
- Password-protected price lists with a lock card (surtitle, title, description, two-panel layout).
- Access request form: name, company, SIREN, email with honeypot field.
- Direct password unlock panel.
- Global password management with optional expiry dates (`chcpl_global_passwords` option).
- Admin auto-unlock bypass (configurable in Global Settings).
- Post-submission redirection: each Price List can redirect to a chosen page after a successful access request.

### Quote Requests table
- Separate DB table (`wp_chcpl_quote_requests`) for inquiry form submissions.
- Quote Requests submenu with read/unread tracking.

### Import / Export
- Tools page includes import/export for price lists.

---

## 1.5

### Global Settings
- Price suffix (e.g. HT, TTC) appended to displayed prices.
- Access request prompt, button text, and button subtext configurable.

### Service hover image overlay
- Optional image per service; shown as a floating overlay on desktop hover.
- Disabled on screens ≤ 1024 px.

---

## 1.0

### Initial release
- CPTs: `price_list`, `price_service`.
- Taxonomy: `price_category` with display order and icon support.
- Shortcode `[comhit_pricelist id="123"]` with per-instance style overrides.
- Inquiry modal with AJAX submission and email notification.
- Styling page with CSS variable injection.
- Shortcode column in Price Lists list table.
- Categories submenu.
