1.6.9
2026-07-22 Fix9 Tweak1Fixes
- Notifications configured against a WPML-translated group or course were not correctly triggered when enrollment uses the original-language post ID.
- Resolved an issue in the "A scheduled lesson is available to user" trigger where processing could skip remaining users and notifications when a delayed email was already queued.
- Resolved an issue in the "A scheduled lesson is available to user" trigger where the duplicate-send check did not properly filter by notification ID.
- Resolved an issue that caused the "X Days After Course Expires" trigger to not work correctly.
- Resolved an issue where a corrupt or orphaned queue item could deadlock the delayed notification queue, blocking all delayed notifications from sending.
- Resolved an issue where the "Complete a course" notification did not record the sent flag correctly, causing duplicate sends for the same user and course.
- Resolved an issue where the "User hasn't logged in for X days" trigger silently skipped enrolled students who carried the administrator role, producing no log entry, no queued email, and no notification.
- Resolved an issue where the "X days before/after course expires" and "A scheduled lesson is available" triggers silently skipped enrolled students who carried the administrator role.
- Resolved implicit-nullable type hints in
gather_emails()that caused deprecation notices on PHP 8.4.
Tweaks
- Added error logging when a delayed notification failed to insert into the queue, making silent database failures visible in the log.