/
forms.py
62 lines (53 loc) · 2.27 KB
/
forms.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
from flask_wtf import Form
from wtforms import StringField, TextAreaField
from wtforms.fields.html5 import EmailField
from wtforms.validators import DataRequired, Email
from api.scripts.add_client import add_client_id
from api.scripts.email_handler import send_id_email
from api.scripts.add_documentation import add_documentation
from api.scripts.add_member import add_member
class SignupForm(Form):
name = StringField('Name', validators=[DataRequired()])
email = EmailField('Email', validators=[DataRequired(), Email()])
def validate(self):
if Form.validate(self):
client_id = add_client_id(self.email.data, self.name.data)
if client_id:
send_id_email(self.email.data, self.name.data, client_id)
return True
else:
self.email.errors.append("Client ID could not be created. Is your email correct?")
return False
else:
return False
class DocumentationForm(Form):
name = StringField('Name', validators=[DataRequired()])
urlname = StringField('URL Name', validators=[DataRequired()])
imageurl = StringField('Image URL', validators=[DataRequired()])
contents = TextAreaField('Contents', validators=[DataRequired()])
def validate(self):
if Form.validate(self):
documentation = add_documentation(self.contents.data,
self.name.data, self.urlname.data, self.imageurl.data)
if documentation:
return True
else:
self.name.errors.append("Client ID could not be created.")
return False
else:
return False
class MemberForm(Form):
name = StringField('Name', validators=[DataRequired()])
imageurl = StringField('Image URL', validators=[DataRequired()])
about = TextAreaField('Contents', validators=[DataRequired()])
def validate(self):
if Form.validate(self):
member = add_member(self.about.data,
self.name.data, self.imageurl.data)
if member:
return True
else:
self.name.errors.append("Member could not be created.")
return False
else:
return False