Release: v1.1.0
[1.1.0] - 2025-01-05
Added
- Configurable Restricted Access for Unverified Email Users
- New administrator configuration option
allow_unverified_email_loginenables controlled access for users with unverified email addresses - When enabled, users can log in without email verification but with the following restrictions:
- Allowed: Enroll in free courses, access course resources, complete evaluations, and earn certificates
- Restricted: Enroll in paid courses, use discount coupons (including 100% off), post in forums, or send private messages
- Flash messages inform users about their limited access status during login
- Administrators can manually verify user emails from
/admin/users/list_inactivevia the new verification button - Manual verification by admin immediately activates the account and grants full access
- Default behavior unchanged: unverified users are blocked by default (backward compatible, non-breaking change)
- New administrator configuration option
Changed
- Login flow enhanced to support conditional access for unverified users based on system configuration
- Admin inactive users list now includes email verification functionality
Database Migration Required
IMPORTANT: This version introduces database schema changes. After updating, you must run database migrations:
# Using lmsctl
lmsctl database upgrade
# Or using Flask-Alembic directly
flask db upgradeMigration file: now_lms/migrations/20260105_145517_add_allow_unverified_email_login.py
The migration adds the allow_unverified_email_login column to the configuracion table with a default value of False to maintain backward compatibility.