View raw

1 # -*- mode: python; -*- 2 3 4 from flask_wtf import FlaskForm 5 from wtforms import ( 6 SubmitField, 7 HiddenField, 8 StringField, 9 PasswordField, 10 BooleanField, 11 ) 12 from wtforms.validators import ( 13 InputRequired, 14 Length, 15 ValidationError, 16 ) 17 18 19 class LoginForm(FlaskForm): 20 username = StringField("Username", validators=[InputRequired()]) 21 password = PasswordField("Password", validators=[InputRequired()]) 22 remember = BooleanField("Remember") 23 submit = SubmitField("Login") 24 25 26 class RegisterForm(LoginForm): 27 def validate_invite_code(self, field): 28 if field.data != "mdltesters2022": 29 raise ValidationError("Invitation code does not match") 30 31 invitation_code = StringField("Invitation code", validators=[InputRequired()]) 32 name_first = StringField("First name", validators=[InputRequired()]) 33 name_last = StringField("Last name", validators=[InputRequired()]) 34 submit = SubmitField("Register") 35