summaryrefslogtreecommitdiff
path: root/app/forms.py
diff options
context:
space:
mode:
authorRené 'Necoro' Neumann <necoro@necoro.net>2013-10-19 15:33:16 +0200
committerRené 'Necoro' Neumann <necoro@necoro.net>2013-10-19 15:39:51 +0200
commitee596b2b55afa08f386ac4992ff3019250920ccf (patch)
tree342d9c0a11039bde64f22d128d36ac06c7b9913d /app/forms.py
parentdf2f973109c47faee74d3b889c93bb211e865819 (diff)
downloadkosten-ee596b2b55afa08f386ac4992ff3019250920ccf.tar.gz
kosten-ee596b2b55afa08f386ac4992ff3019250920ccf.tar.bz2
kosten-ee596b2b55afa08f386ac4992ff3019250920ccf.zip
'Change password' support
Diffstat (limited to 'app/forms.py')
-rw-r--r--app/forms.py15
1 files changed, 14 insertions, 1 deletions
diff --git a/app/forms.py b/app/forms.py
index 8cf9b6e..6c5782a 100644
--- a/app/forms.py
+++ b/app/forms.py
@@ -3,7 +3,7 @@ import flask
from flask.ext.wtf import Form as _Form
from wtforms.fields import DateField, IntegerField, StringField, HiddenField, PasswordField
from wtforms import validators as v
-from wtforms import fields
+from wtforms import fields, ValidationError
from wtforms.ext.sqlalchemy.fields import QuerySelectField
from wtforms.ext.i18n.form import Form as i18nForm
@@ -113,3 +113,16 @@ class LoginForm(Form):
self.user = user
return True
+
+class ChangePwdForm(Form):
+ old = PasswordField(u'Passwort', req)
+ new = PasswordField(u'Neues Passwort', req + [v.EqualTo('confirm', u'Passwörter stimmen nicht überein')])
+ confirm = PasswordField(u'Wdh. neues Passwort', req)
+
+ def validate_old(self, field):
+ if not login.current_user.check_password(field.data):
+ raise ValidationError(u"Falsches Passwort")
+
+ @property
+ def newpwd(self):
+ return self.new.data