from flask_wtf import FlaskForm from wtforms import StringField, SubmitField, PasswordField, IntegerField, RadioField, TextAreaField, DateField, FloatField from flask_wtf.file import FileField, FileAllowed, FileRequired from wtforms.validators import DataRequired class LoginForm(FlaskForm): email = StringField(validators=[DataRequired()]) passwd = PasswordField(validators=[DataRequired()]) submit = SubmitField('Login') class RegForm(FlaskForm): email = StringField(validators=[DataRequired()]) username = StringField(validators=[DataRequired()]) passwd_1 = PasswordField(validators=[DataRequired()]) passwd_2 = PasswordField(validators=[DataRequired()]) submit = SubmitField('Register') class UPForm(FlaskForm): cpasswd = PasswordField(validators=[DataRequired()]) passwd_1 = PasswordField(validators=[DataRequired()]) passwd_2 = PasswordField(validators=[DataRequired()]) submit = SubmitField('Update Password') class PicForm(FlaskForm): upload = FileField(validators=[ FileRequired(), FileAllowed(['jpg', 'jpeg', 'png'], 'Images only!') ]) submit = SubmitField('Update Picture') class CAForm(FlaskForm): art_name = StringField(validators=[DataRequired()]) art_desc = TextAreaField(validators=[DataRequired()]) min_price = IntegerField(validators=[DataRequired()]) buyout_price = FloatField(validators=[DataRequired()]) close_date = DateField(validators=[DataRequired()]) upload = FileField(validators=[ #FileRequired(), removing this allows this to be optional FileAllowed(['jpg', 'jpeg', 'png'], 'Images only!') ]) submit = SubmitField('Mint Picture') class BidForm(FlaskForm): price = FloatField(validators=[DataRequired()]) submit = SubmitField('Bid') class MFAForm(FlaskForm): otp = StringField(validators=[DataRequired()]) submit = SubmitField('Authenticate') class MFAForm2(FlaskForm): send_key = SubmitField('Send Key to Email') reset_key = SubmitField('Reset Key') class WalletForm(FlaskForm): amount = FloatField(validators=[DataRequired()]) submit = SubmitField('Top Up') class SearchForm(FlaskForm): searchterm = StringField(validators=[DataRequired()]) submit = SubmitField('Search')