1 # GNU MediaGoblin -- federated, autonomous media hosting
2 # Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
4 # This program is free software: you can redistribute it and/or modify
5 # it under the terms of the GNU Affero General Public License as published by
6 # the Free Software Foundation, either version 3 of the License, or
7 # (at your option) any later version.
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 # GNU Affero General Public License for more details.
14 # You should have received a copy of the GNU Affero General Public License
15 # along with this program. If not, see <http://www.gnu.org/licenses/>.
18 from mediagoblin
.tools
.translate
import lazy_pass_to_ugettext
as _
19 from mediagoblin
.auth
.tools
import normalize_user_or_email_field
22 class RegistrationForm(wtforms
.Form
):
23 username
= wtforms
.StringField(
25 [wtforms
.validators
.InputRequired(),
26 normalize_user_or_email_field(allow_email
=False)])
27 password
= wtforms
.PasswordField(
29 [wtforms
.validators
.InputRequired(),
30 wtforms
.validators
.Length(min=5, max=1024)])
31 email
= wtforms
.StringField(
33 [wtforms
.validators
.InputRequired(),
34 normalize_user_or_email_field(allow_user
=False)])
37 class LoginForm(wtforms
.Form
):
38 username
= wtforms
.StringField(
39 _('Username or Email'),
40 [wtforms
.validators
.InputRequired(),
41 normalize_user_or_email_field()])
42 password
= wtforms
.PasswordField(
44 stay_logged_in
= wtforms
.BooleanField(
46 description
=_('Stay logged in'))
49 class ForgotPassForm(wtforms
.Form
):
50 username
= wtforms
.StringField(
51 _('Username or email'),
52 [wtforms
.validators
.InputRequired(),
53 normalize_user_or_email_field()])
56 class ChangeForgotPassForm(wtforms
.Form
):
57 password
= wtforms
.PasswordField(
59 [wtforms
.validators
.InputRequired(),
60 wtforms
.validators
.Length(min=5, max=1024)])
61 token
= wtforms
.HiddenField(
63 [wtforms
.validators
.InputRequired()])
66 class ChangePassForm(wtforms
.Form
):
67 old_password
= wtforms
.PasswordField(
69 [wtforms
.validators
.InputRequired()],
71 "Enter your old password to prove you own this account."))
72 new_password
= wtforms
.PasswordField(
74 [wtforms
.validators
.InputRequired(),
75 wtforms
.validators
.Length(min=6, max=30)],