Enable demo mode features, auto-fill demo credentials, and enhance branding integration
- Added `DEMO_MODE` to backend configuration with relaxed security support for specific demo accounts. - Updated password validators to allow predefined weak passwords in demo mode. - Auto-fill login forms with demo credentials via query parameters for improved demo accessibility. - Introduced demo user creation logic during database initialization if `DEMO_MODE` is enabled. - Replaced `img` tags with `next/image` for consistent and optimized visuals in branding elements. - Refined footer, header, and layout components to incorporate improved logo handling.
This commit is contained in:
@@ -60,6 +60,15 @@ def validate_password_strength(password: str) -> str:
|
||||
>>> validate_password_strength("MySecureP@ss123") # Valid
|
||||
>>> validate_password_strength("password1") # Invalid - too weak
|
||||
"""
|
||||
# Check if we are in demo mode
|
||||
from app.core.config import settings
|
||||
|
||||
if settings.DEMO_MODE:
|
||||
# In demo mode, allow specific weak passwords for demo accounts
|
||||
demo_passwords = {"Demo123!", "Admin123!"}
|
||||
if password in demo_passwords:
|
||||
return password
|
||||
|
||||
# Check minimum length
|
||||
if len(password) < 12:
|
||||
raise ValueError("Password must be at least 12 characters long")
|
||||
|
||||
Reference in New Issue
Block a user