Add NopaqueForm as a base for all others

This commit is contained in:
Patrick Jentsch
2023-03-29 09:25:08 +02:00
parent 9de09519d6
commit 9b2353105e
13 changed files with 57 additions and 76 deletions

View File

@@ -1,5 +1,4 @@
from flask_login import current_user
from flask_wtf import FlaskForm
from wtforms import (
FileField,
PasswordField,
@@ -16,12 +15,13 @@ from wtforms.validators import (
Length,
Regexp
)
from app.forms import NopaqueForm
from app.models import User, UserSettingJobStatusMailNotificationLevel
from app.auth import USERNAME_REGEX
from app.wtf_validators import FileSizeLimit
class EditAccountForm(FlaskForm):
class EditAccountForm(NopaqueForm):
email = StringField(
'E-Mail',
validators=[DataRequired(), Length(max=254), Email()]
@@ -46,8 +46,6 @@ class EditAccountForm(FlaskForm):
user = kwargs.get('user', current_user._get_current_object())
if 'data' not in kwargs:
kwargs['data'] = user.to_json_serializeable()
if 'prefix' not in kwargs:
kwargs['prefix'] = 'edit-profile-settings-form'
super().__init__(*args, **kwargs)
self.user = user
@@ -65,7 +63,7 @@ class EditAccountForm(FlaskForm):
return self.submit.data and self.validate()
class EditProfileForm(FlaskForm):
class EditProfileForm(NopaqueForm):
avatar = FileField(
'Image File',
[FileSizeLimit(max_size_in_mb=2)]
@@ -104,8 +102,6 @@ class EditProfileForm(FlaskForm):
if 'data' not in kwargs:
user = current_user._get_current_object()
kwargs['data'] = user.to_json_serializeable()
if 'prefix' not in kwargs:
kwargs['prefix'] = 'edit-public-profile-information-form'
super().__init__(*args, **kwargs)
def validate_image_file(self, field):
@@ -116,7 +112,7 @@ class EditProfileForm(FlaskForm):
return self.submit.data and self.validate()
class ChangePasswordForm(FlaskForm):
class ChangePasswordForm(NopaqueForm):
password = PasswordField('Old password', validators=[DataRequired()])
new_password = PasswordField(
'New password',
@@ -136,8 +132,6 @@ class ChangePasswordForm(FlaskForm):
def __init__(self, *args, **kwargs):
user = kwargs.get('user', current_user._get_current_object())
if 'prefix' not in kwargs:
kwargs['prefix'] = 'change-password-form'
super().__init__(*args, **kwargs)
self.user = user
@@ -149,7 +143,7 @@ class ChangePasswordForm(FlaskForm):
return self.submit.data and self.validate()
class EditNotificationsForm(FlaskForm):
class EditNotificationsForm(NopaqueForm):
job_status_mail_notification_level = SelectField(
'Job status mail notification level',
choices=[
@@ -164,8 +158,6 @@ class EditNotificationsForm(FlaskForm):
if 'data' not in kwargs:
user = current_user._get_current_object()
kwargs['data'] = user.to_json_serializeable()
if 'prefix' not in kwargs:
kwargs['prefix'] = 'edit-notification-settings-form'
super().__init__(*args, **kwargs)
def validate_on_submit(self):