== Changelog == = 1.5.1 = * Bugfix: Typos * Bugfix: Fixed a fatal error (TypeError) during Remote API list synchronisation. * Bugfix: Fixed a fatal error that could occur in proxy ("client type") mode when no valid forwarded address was present. * Bugfix: Fixed an "Array to string conversion" warning on the settings page when the dashboard-counter option had not been saved yet. * Improvement: Added "Trusted proxies" setting. In proxy mode the client IP is now only used when the request arrives via a configured trusted proxy. = 1.5.0 = * Tested with WordPress 7.0 * Bugfix: Removed an empty list item that appeared above the locked-out address counter in the "At a Glance" dashboard widget. * Bugfix: Locking out an IP address no longer clears all other active lockouts. * Bugfix: Remote API list synchronisation now runs as intended (the previous check never triggered a sync); local block-/allowlist entries are no longer lost when merging with remote lists. * Bugfix: Remote API calls now use the correct endpoint paths, so block, allow, release and list operations work against a paired site. * Bugfix: Lockout times in the settings list and WP-CLI output now use the site's configured time zone instead of always showing UTC. * Bugfix: Corrected the swapped "your IP has (not) changed" message on the allowlist screen. * Bugfix: Reverse-proxy ("client type") handling now works as configured, and falls back to the direct connection address when no valid forwarded address is present. * Bugfix: Hardened against division-by-zero and undefined-value notices when retry/notification thresholds are set to 0 or no attempts have been recorded yet. * Bugfix: Activation and uninstall routines are now registered against the main plugin file so they run reliably. * Improvement: The settings override filters now work as documented. * Improvement: Removed an unnecessary PHP session start on every authentication and a redundant database write on every admin page load. * Improvement: Added `Text Domain` and `Domain Path` plugin headers and a translation template. * Development: Codebase migrated to new Coding Standard. = 1.4.7 = * Bugfix: Fixed Bug in at-a-glance widget = 1.4.6 = * Migration path of password strength rules * Tested with WordPress 6.8 * Improvement: Added description texts to blocklist, allowlist and blocked-addresses list * Improvement: Added Copy-to-Clipboard for Remote API settings * Improvement: One-Click auto-generate for Remote API key = 1.4.5 = * Bugfix: Error message "Invalid credentials" was displayed, when wp-login.php ist called directly or hidden by renaming of Admin Login URL = 1.4.4 = * Bugfix: Fixed issue an invalid login was recognize on logging out from WP * Bugfix: Fixes issue error message always was "too many failed login attempts" even when it was the first trial = 1.4.3 = * Bugfix: Fixed button "Add IP address to allowlist and release" * Bugfix: Fixed displaying setting in "At a glance widget" = 1.4.2 = * Removed "Your IP address" on blocklist tab * Added headlines on allowlist, blocklist and blocked ip addresses * Removed .github dir = 1.4.1 = * Bugfix: Fixed issue that prevented "Add own ip address to allowlist" from working * Auto re-create WP sessions on activating plugin * Bugfix: Fixed issue on creating session cookie on multisite = 1.4.0 = * Automatically clean up the locked-out list a week after IP addresses have been cleared * Improve the design of empty IP lists * Add own IP v6 / IPv6 - Address to allowlist * Check for blocked IP on XML-RPC * Bugfix: Fixed issues that prevented the plugin from discovering that it runs on a multisite * Bugfix: Compatibility fixes to PHP 7.4 * Bugfix: Removed ending slashes from Rest API namespaces = 1.3.1 = * Bugfix: Improved error handling if non-numeric value is stored in wp_options * Cleanup: Removed leading whitespace in translation file for widget * Bugfix: Settings visible on multisite if name of the plugin directory is not "protect-login" * Bugfix: An error occurred on WP multisites with enabled WP_DEBUG, because of too early load of translation files * Moved "settings" sections to admin_init - action * WP 6.7 compatibility = 1.3.0 = * Count of currently locked-out address visible in "At a glance" Widget * Fixed bug on activation plugin through wp-cli in a multisite environment * Remote API support * Improved multisite support = 1.2.0 = * IPv6 support * Endpoints for WP-CLI * Added filter for password strength * "Settings" link in plugin overview * Bugfix: string "password too short" erroneous appeared in Quick Draft widget, removed. = 1.1.1 = * Removed unused strings * Added translator comments * Restructured some strings for easier translations = 1.1.0 = * Tested with WordPress 6.6 * Added Multisite Support * Added filters to set protection levels programmatically * Fixed issue with timestamps always using UTC = 1.0.1 = * Fixed minor bugs = 1.0 = * Initial version * based on Limit Login Attempts 1.7.1 by Johan Eenfeldt