Files @ 2cd934dc8bb9
Branch filter:

Location: FVDE/ennstatus/ennstatus/root/forms.py

Dennis Fink
Merged version_5
from flask_wtf import Form
from wtforms import (SelectField,
                     StringField,
                     RadioField,
                     BooleanField,
                     SubmitField
                     )
from wtforms.validators import InputRequired, Email, Length, DataRequired


COUNTRIES = [
    ('luxembourg', 'Luxembourg'),
    ('belgium', 'Belgium'),
    ('france', 'France'),
    ('germany', 'Germany'),
]


class BPMForm(Form):
    country = SelectField('Country',
                          validators=[DataRequired()],
                          choices=COUNTRIES)


class MembershipForm(Form):

    username = StringField('Username*',
                           validators=[
                               InputRequired('This field is required!'),
                               Length(max=255)
                           ]
                           )
    email = StringField('E-Mail*',
                        validators=[
                            InputRequired('This field is required!'),
                            Email()
                        ]
                        )
    fullname = StringField('Full name',
                           validators=[Length(max=65536)],
                           )
    street = StringField('Nr., Street',
                         validators=[Length(max=4000)],
                         )
    zip = StringField('ZIP-Code',
                      validators=[Length(max=30)],
                      )
    city = StringField('City/Town',
                       validators=[Length(max=500)],
                       )
    country = StringField('Country',
                          validators=[Length(max=500)],
                          )
    gpg = StringField('GPG-ID',
                      validators=[Length(max=18)],
                      )

    membership = RadioField('Membership Plan*',
                            validators=[
                                InputRequired(
                                    'Please select one of the options!'
                                )
                            ],
                            choices=[
                                ('regular', 'Regular membership (120€/year)'),
                                ('student', 'Student membership (60€/year)'),
                                ('starving',
                                 'Starving Hacker - Get in touch with us at info@enn.lu'
                                 ),
                            ]
                            )

    c3l = BooleanField(
        'Include "Chaos Computer Club Lëtzebuerg" Membership<sup>1</sup>'
    )
    submit = SubmitField('Become a member')


class BridgeprogramForm(Form):

    fullname = StringField('Full name',
                           validators=[Length(max=65536)],
                           )

    email = StringField('E-Mail*',
                        validators=[
                            InputRequired('This field is required!'),
                            Email()
                        ]
                        )

    bridgename = StringField('Bridge name',
                             validators=[
                                 InputRequired('This field is required!'),
                                 Length(max=65536)
                             ]
                             )

    duration = RadioField('Duration',
                          validators=[
                              InputRequired(
                                  'Please select one of the options!'
                              )
                          ],
                          choices=[
                              ('1', '1 year'),
                              ('2', '2 years'),
                          ]
                          )

    payment = RadioField('Payment Method',
                         validators=[
                             InputRequired('Please select one of the options!')
                         ],
                         choices=[
                             ('wiretransfer', 'Wiretransfer'),
                             ('bitcoin', 'Bitcoin'),
                             ('paypal', 'PayPal'),
                             ('snailmail', 'Snailmail')
                         ]
                         )

    submit = SubmitField('Apply')