diff options
author | Marian Sigler <m@qjym.de> | 2012-09-26 02:37:56 +0200 |
---|---|---|
committer | Marian Sigler <m@qjym.de> | 2012-09-26 02:37:56 +0200 |
commit | 7216ec0a7fe4051611990c237652eaaa50e26e42 (patch) | |
tree | 697d0798852ecdcc5c33b37b4a76f785badc273e /forms.py | |
parent | cc31815e01c6cb36fb1e88f02a9ae463745dac59 (diff) | |
download | web-7216ec0a7fe4051611990c237652eaaa50e26e42.tar.gz web-7216ec0a7fe4051611990c237652eaaa50e26e42.tar.bz2 web-7216ec0a7fe4051611990c237652eaaa50e26e42.zip |
start with form and template changes for service password management
Diffstat (limited to 'forms.py')
-rw-r--r-- | forms.py | 25 |
1 files changed, 24 insertions, 1 deletions
@@ -1,13 +1,17 @@ # -*- coding: utf-8 -*- +from account import SERVICES from flask.ext.wtf import Form, validators, TextField, PasswordField from utils import _username_re + username = TextField('Benutzername', [validators.Regexp(_username_re, message=u'Benutzername darf nur aus a-z bestehen (2-16 Zeichen)')]) + class RegisterForm(Form): username = username mail = TextField('E-Mail-Adresse', [validators.Email(), validators.Length(min=6, max=50)]) + class RegisterCompleteForm(Form): password = PasswordField('Passwort', [validators.Required(), validators.EqualTo('password_confirm', message=u'Passwörter stimmen nicht überein')]) @@ -20,8 +24,27 @@ class LoginForm(Form): class SettingsForm(Form): - old_password = PasswordField('Passwort', [validators.Required(u'Bitte gib dein (altes) Passwort an, um deine Daten zu ändern.')]) + old_password = PasswordField('Bisheriges Passwort', + [validators.Required(u'Bitte gib dein (altes) Passwort an, um deine Daten zu ändern.')]) password = PasswordField('Neues Passwort', [validators.Optional(), validators.EqualTo('password_confirm', message=u'Passwörter stimmen nicht überein')]) password_confirm = PasswordField(u'Passwort bestätigen') mail = TextField('E-Mail-Adresse', [validators.Optional(), validators.Email(), validators.Length(min=6, max=50)]) + + + def get_servicepassword(self, service_id): + return getattr(self, 'password_%s' % service_id) + def get_servicepasswordconfirm(self, service_id): + return getattr(self, 'password_confirm_%s' % service_id) + + +#TODO: find out how we can use app.all_services in that early state +for service in SERVICES: + setattr(SettingsForm, 'password_%s' % service.id, + PasswordField(u'Passwort für %s' % service.name, [ + validators.Optional(), + validators.EqualTo('password_confirm_%s' % service.id, message=u'Passwörter stimmen nicht überein'), + ])) + setattr(SettingsForm, 'password_confirm_%s' % service.id, + PasswordField(u'Passwort für %s (Bestätigung)' % service.name)) + |