fix: disable public signup and restore local login flow

This commit is contained in:
2026-04-13 10:06:56 +02:00
parent c4775c623f
commit 9a87ef9562
8 changed files with 70 additions and 17 deletions

View File

@@ -5,21 +5,23 @@ from flask_wtf.file import FileAllowed, FileField
from wtforms import (
BooleanField,
DateField,
EmailField,
IntegerField,
PasswordField,
SelectField,
StringField,
SelectField,
SubmitField,
TextAreaField,
)
from wtforms.validators import DataRequired, Email, EqualTo, Length, NumberRange, Optional, ValidationError
from wtforms.validators import DataRequired, EqualTo, Length, NumberRange, Optional, Regexp, ValidationError
from .models import User
EMAIL_LIKE = Regexp(r"^[^@\s]+@[^@\s]+\.[^@\s]+$", message="Bitte gib eine gültige E-Mail-Adresse ein.")
class LoginForm(FlaskForm):
email = EmailField("E-Mail", validators=[DataRequired(), Email(), Length(max=255)])
email = StringField("E-Mail", validators=[DataRequired(), EMAIL_LIKE, Length(max=255)])
password = PasswordField("Passwort", validators=[DataRequired(), Length(min=6, max=128)])
remember_me = BooleanField("Angemeldet bleiben")
submit = SubmitField("Einloggen")
@@ -27,7 +29,7 @@ class LoginForm(FlaskForm):
class RegisterForm(FlaskForm):
name = StringField("Name", validators=[DataRequired(), Length(min=2, max=120)])
email = EmailField("E-Mail", validators=[DataRequired(), Email(), Length(max=255)])
email = StringField("E-Mail", validators=[DataRequired(), EMAIL_LIKE, Length(max=255)])
password = PasswordField("Passwort", validators=[DataRequired(), Length(min=6, max=128)])
password_confirm = PasswordField(
"Passwort wiederholen",
@@ -76,7 +78,7 @@ class TaskForm(FlaskForm):
class SettingsProfileForm(FlaskForm):
name = StringField("Name", validators=[DataRequired(), Length(min=2, max=120)])
email = EmailField("E-Mail", validators=[DataRequired(), Email(), Length(max=255)])
email = StringField("E-Mail", validators=[DataRequired(), EMAIL_LIKE, Length(max=255)])
password = PasswordField("Neues Passwort", validators=[Optional(), Length(min=6, max=128)])
avatar = FileField(
"Avatar",
@@ -96,4 +98,3 @@ class SettingsProfileForm(FlaskForm):
return
if User.query.filter_by(email=value).first():
raise ValidationError("Diese E-Mail-Adresse wird bereits verwendet.")