Merge remote-tracking branch 'upstream/master' into basic_auth
[mediagoblin.git] / mediagoblin / plugins / basic_auth / forms.py
1 # GNU MediaGoblin -- federated, autonomous media hosting
2 # Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
3 #
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.
8 #
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.
13 #
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/>.
16 import wtforms
17
18 from mediagoblin.tools.translate import lazy_pass_to_ugettext as _
19 from mediagoblin.auth.tools import normalize_user_or_email_field
20
21
22 class RegistrationForm(wtforms.Form):
23 username = wtforms.TextField(
24 _('Username'),
25 [wtforms.validators.Required(),
26 normalize_user_or_email_field(allow_email=False)])
27 password = wtforms.PasswordField(
28 _('Password'),
29 [wtforms.validators.Required(),
30 wtforms.validators.Length(min=5, max=1024)])
31 email = wtforms.TextField(
32 _('Email address'),
33 [wtforms.validators.Required(),
34 normalize_user_or_email_field(allow_user=False)])
35
36
37 class LoginForm(wtforms.Form):
38 username = wtforms.TextField(
39 _('Username or Email'),
40 [wtforms.validators.Required(),
41 normalize_user_or_email_field()])
42 password = wtforms.PasswordField(
43 _('Password'),
44 [wtforms.validators.Required(),
45 wtforms.validators.Length(min=5, max=1024)])