mirror of
				https://gitlab.ub.uni-bielefeld.de/sfb1288inf/nopaque.git
				synced 2025-11-03 20:02:47 +00:00 
			
		
		
		
	Allow username for login
This commit is contained in:
		@@ -6,7 +6,7 @@ from wtforms.validators import DataRequired, Email, EqualTo, Length, Regexp
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class LoginForm(FlaskForm):
 | 
			
		||||
    email = StringField('Email', validators=[DataRequired(), Email()])
 | 
			
		||||
    user = StringField('Email or username', validators=[DataRequired()])
 | 
			
		||||
    password = PasswordField('Password', validators=[DataRequired()])
 | 
			
		||||
    remember_me = BooleanField('Keep me logged in')
 | 
			
		||||
    submit = SubmitField('Log In')
 | 
			
		||||
 
 | 
			
		||||
@@ -30,14 +30,16 @@ def login():
 | 
			
		||||
        return redirect(url_for('main.dashboard'))
 | 
			
		||||
    login_form = LoginForm(prefix='login-form')
 | 
			
		||||
    if login_form.validate_on_submit():
 | 
			
		||||
        user = User.query.filter_by(email=login_form.email.data).first()
 | 
			
		||||
        user = User.query.filter_by(username=login_form.user.data).first()
 | 
			
		||||
        if user is None:
 | 
			
		||||
            user = User.query.filter_by(email=login_form.user.data).first()
 | 
			
		||||
        if user is not None and user.verify_password(login_form.password.data):
 | 
			
		||||
            login_user(user, login_form.remember_me.data)
 | 
			
		||||
            next = request.args.get('next')
 | 
			
		||||
            if next is None or not next.startswith('/'):
 | 
			
		||||
                next = url_for('main.dashboard')
 | 
			
		||||
            return redirect(next)
 | 
			
		||||
        flash('Invalid email or password.')
 | 
			
		||||
        flash('Invalid email/username or password.')
 | 
			
		||||
    return render_template('auth/login.html.j2', login_form=login_form,
 | 
			
		||||
                           title='nopaque')
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user