Simplify password validation error message in registration

- Replace multiple individual error messages with single clear message
- Consolidate password requirements into one user-friendly message
- Maintain same validation logic while improving user experience

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Claude 2025-07-26 02:07:34 +05:30
parent 916d37fd64
commit 3fc4783e64

View File

@ -18,29 +18,21 @@ logger = logging.getLogger(__name__)
def validate_password_strength(password): def validate_password_strength(password):
"""Validate password strength on backend""" """Validate password strength on backend"""
errors = [] # Check all requirements
has_length = len(password) >= 8
if len(password) < 8: has_lower = any(c.islower() for c in password)
errors.append("Password must be at least 8 characters long") has_upper = any(c.isupper() for c in password)
has_digit = any(c.isdigit() for c in password)
if not any(c.islower() for c in password): has_special = any(c in "!@#$%^&*()_+-=[]{}|;:,.<>?" for c in password)
errors.append("Password must contain at least one lowercase letter")
if not any(c.isupper() for c in password):
errors.append("Password must contain at least one uppercase letter")
if not any(c.isdigit() for c in password):
errors.append("Password must contain at least one number")
if not any(c in "!@#$%^&*()_+-=[]{}|;:,.<>?" for c in password):
errors.append("Password must contain at least one special character")
# Check for common weak passwords # Check for common weak passwords
common_passwords = ['password', '12345678', 'qwerty', 'abc123', 'password123', '123456789'] common_passwords = ['password', '12345678', 'qwerty', 'abc123', 'password123', '123456789']
if password.lower() in common_passwords: is_common = password.lower() in common_passwords
errors.append("Password is too common and easily guessable")
return errors if not (has_length and has_lower and has_upper and has_digit and has_special) or is_common:
return ["Password must be at least 8 characters with uppercase, lowercase, number, and special character"]
return []
def send_verification_email(user): def send_verification_email(user):