twotalesanimation 88832d1af2 Fix: Rate limiting now checks email only, not IP address
The countRecentFailedAttempts() function was requiring BOTH email AND ip_address to match, which caused failed attempts from different IPs to not count together. This prevented account lockout from working properly.

Changed to count failed attempts by email only. IP address is still recorded for audit purposes but doesn't affect the failed attempt count.

This ensures:
- Failed attempts accumulate correctly regardless of IP changes
- Accounts lock after 5 failed attempts within 15 minutes
- Prevents attackers from bypassing by changing IP
2025-12-03 15:39:26 +02:00
2025-12-02 18:17:20 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-07-24 07:20:51 +02:00
2025-05-23 14:31:07 +02:00
2025-06-13 10:22:14 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-12-03 13:26:57 +02:00
2025-04-18 10:32:42 +02:00
2025-05-23 14:25:27 +02:00
2025-04-18 10:32:42 +02:00
2025-12-02 18:17:20 +02:00
2025-05-23 14:19:25 +02:00
2025-07-24 07:20:51 +02:00
2025-04-18 10:32:42 +02:00
2025-07-24 07:20:51 +02:00
2025-04-18 10:32:42 +02:00
2025-06-08 16:29:50 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-12-02 18:17:20 +02:00
2025-04-18 10:32:42 +02:00
2025-12-03 13:26:57 +02:00
2025-12-03 13:26:57 +02:00
2025-05-23 14:25:27 +02:00
2025-05-23 11:50:53 +02:00
2025-05-23 11:50:53 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-05-23 11:50:53 +02:00
2025-04-18 10:32:42 +02:00
2025-12-03 13:26:57 +02:00
2025-05-23 11:50:53 +02:00
2025-07-24 07:20:51 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-05-23 14:25:27 +02:00
2025-12-03 13:26:57 +02:00
2025-04-18 10:32:42 +02:00
2025-05-23 14:25:27 +02:00
2025-05-23 14:25:27 +02:00
2025-12-02 18:17:20 +02:00
2025-12-02 18:17:20 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-12-02 18:17:20 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-12-03 13:26:57 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-06-08 16:29:50 +02:00
2025-04-18 10:32:42 +02:00
2025-05-23 14:19:25 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-05-23 14:25:27 +02:00
2025-07-24 07:20:51 +02:00
2025-12-02 18:17:20 +02:00
2025-04-18 10:32:42 +02:00
2025-07-24 07:20:51 +02:00
2025-12-03 13:26:57 +02:00
2025-05-23 14:25:27 +02:00
2025-12-02 18:17:20 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-05-23 14:25:27 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
2025-05-23 14:31:07 +02:00
2025-12-03 13:26:57 +02:00
2025-07-24 07:20:51 +02:00
2025-05-23 14:25:27 +02:00
2025-05-23 14:25:27 +02:00
2025-05-23 14:25:27 +02:00
2025-05-23 14:25:27 +02:00
2025-04-18 10:32:42 +02:00
2025-04-18 10:32:42 +02:00
Description
No description provided
168 MiB
Languages
PHP 61.8%
CSS 26.1%
Sass 5.5%
HTML 4.4%
JavaScript 1.1%
Other 1.1%