forked from prakharcode/Blogit
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathforms.py
More file actions
31 lines (24 loc) · 1.27 KB
/
forms.py
File metadata and controls
31 lines (24 loc) · 1.27 KB
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
from app import app, g
import wtforms
from wtforms import validators
from models import User
from wtforms import HiddenField
class LoginForm(wtforms.Form):
email = wtforms.StringField('E-mail',validators = [validators.DataRequired()])
password = wtforms.PasswordField('Password',validators = [validators.DataRequired()])
remember_me = wtforms.BooleanField('Remember Me',default = True)
def validate(self):
if not super(LoginForm,self).validate():
return False
self.user = User.authenticate(self.email.data, self.password.data)
if not self.user:
self.email.errors.append('Invalid email or password')
return False
return True
class SignUpForm(wtforms.Form):
name = wtforms.StringField('Name', validators = [validators.DataRequired()])
email = wtforms.StringField('E-mail', validators = [validators.DataRequired()])
password_hash = wtforms.PasswordField('Password', validators = [validators.DataRequired()])
confirmpass = wtforms.PasswordField('Confirm Password', validators = [validators.DataRequired(),validators.EqualTo('password_hash','Not same as Password')])
def save_entry(self):
return User.create(email = self.email.data, password = self.password_hash.data,name = self.name.data)