# LMN Site Monitor – Changelog

## [0.8.1] - 2026-03-14

- FIX: Fix translation errors.

## [0.8.0] - 2026-03-14

- NEW: New languages: Arabic, German, Basque, Italian, Japanese, Korean, Dutch, Portuguese, Turkish, Ukrainian, and Simplified Chinese.
- NEW: Automatic retry after downtime to avoid false positives.
- NEW: Domain expiry notifications.
- MAINT: i18n maintained; PHPCS/WPCS compliant.

---

## [0.7.0] – 2026-03-03

- NEW: Cards are now wider, displaying more information at a glance.
- NEW: Bulk actions now include sorting options: alphabetical (A→Z) and by date added.
- NEW: Drag-and-drop card reordering with persistent storage between sessions.
- NEW: Pin system — pin any site to keep it fixed at the top, excluded from sorting.
- NEW: WHOIS / DNS lookup button on each card: shows IP, DNS provider, NS, MX records, TTL and SSL expiry. Native PHP only, no external APIs or API keys required.
- NEW: JetBrains Mono font integrated for monospace elements, self-hosted (GDPR-safe, no external CDN).
- IMPROVE: Full PHPCS / WPCS compliance — zero warnings. Proper nonce and capability checks, sanitization and escaping throughout.
- IMPROVE: All new strings are fully translatable and i18n-compatible.
- IMPROVE: Responsive design preserved and refined across all screen sizes.
- FIX: Removed duplicate `wp_mail_failed` hook and unified error handlers.
- FIX: Native WP cron schedules (`hourly`, `daily`) are no longer overwritten.
- FIX: Added `file_exists()` check before reading `changelog.txt`.
- FIX: Added missing `wp_unslash()` in widget preferences handler.
- FIX: SSL badge severity now syncs with the user-configured expiry threshold.
- FIX: PHPCS `MissingTranslatorsComment` resolved in alert email builders.
- IMPROVE: Removed dead `load_textdomain()` method.
- IMPROVE: Fixed inconsistent indentation in `ajax_save_order`.

---

## [0.6.5] – 2025-10-31

### Full internationalization

- NEW: Full internationalization (en_US, es_ES, ca, fr_FR).
- NEW: Added Catalan (ca) and French (fr_FR) translations.
- IMPROVE: Hybrid textdomain loader – automatically loads WP.org language packs and falls back to /languages for ZIP installs.
- FIX: Added translators comments for all placeholders to comply with WordPress I18n standards.
- FIX: Escaped all dynamic outputs in admin interface and header tips.
- MAINT: Removed deprecated load_plugin_textdomain() function per Plugin Check recommendations.

---

## [0.6.4] – 2025-10-25

### 🎯 Complete sanitisation and 0 warnings

- Removed **all PHPCS/WPCS warnings** (0 warnings, 0 errors).
- Added thorough sanitization with `wp_unslash()`, `sanitize_text_field()`, `esc_url_raw()`, `sanitize_key()`, `is_uploaded_file()` and more.
- Nonce and permission verification has been reordered across all handlers.
- Includes documented instances of `phpcs:ignore` where the validator failed to detect the nonce.
- Full compatibility with PHP 8.3+ and WordPress 6.8.3+ has been confirmed.
- No logic or UI changes; only internal security refactoring.

---

## [0.6.3] – 2025-10-16

### Accessibility and unique IDs

- FIX: Duplicate IDs in forms and nonces.
- IMPROVE: General accessibility and DOM structure.
- IMPROVE: Clean console without warnings.
- Bump version to v0.6.3.

---

## [0.6.2] – 2025-10-15

### Secure Header and Markdown

- Unified blue header with version badge.
- Lightweight Markdown rendering in the "Changelog" tab.
- Version bump to v0.6.2.

---

## [0.6.1] – 2025-10-15

### New tab “Changelog”

- Direct reading of `changelog.txt` from the panel.
- Improved typographic rhythm and Markdown tag compatibility.

---

## [0.6.0] – 2025-10-07

### Imports and mass stockpiles

- Import CSV files in the same format as exported files.
- Bulk deletion actions using standard nonces and handlers.
- Visual improvements to the list and status messages.

---

## [0.5.3] – 2025-10-06

- NEW: Export CSV from the "About Site Monitor" section.
- NEW: "About Site Monitor" section with quick metrics and cron status.
- IMPROVE: Minor cleanup of headers and constants (VERSION).

---

## [0.5.2] – 2025-10-06

- NEW: “About Site Monitor” box in the right column of the administrator.

---

## [0.5.1] – 2025-10-06

- CHANGE: Email HTML light by default + automatic dark mode with prefers-color-scheme.

---

## [0.5.0] – 2025-10-06

- NEW: HTML alert email with badges, details table, and action buttons.
- NEW: User preference in the widget (number of sites to display).
- IMPROVED: Enhanced classic UI (light/dark theme, responsive tables and forms).
- FIX: Text contrast in dark theme (labels, cells, and descriptions).

---

## [0.4.0] – 2025-10-05

- NEW: Admin page with listing, quick actions, and settings.
- NEW: HTTP checks + SSL expiration with email alerts.
- NEW: Scheduleable cron job (5 min, 15 min, hour, day) and "force check".
