use new password entry widget for register page (#5805)
This commit is contained in:
parent
4a91c263ea
commit
1505495a35
|
@ -52,8 +52,8 @@ def test_user_registration_mismatch():
|
|||
page = app.get('/register/')
|
||||
register_form = page.forms[0]
|
||||
register_form['username'] = 'foo'
|
||||
register_form['password'] = 'bar'
|
||||
register_form['password2'] = 'baz'
|
||||
register_form['password$pwd1'] = 'bar'
|
||||
register_form['password$pwd2'] = 'baz'
|
||||
resp = register_form.submit()
|
||||
assert 'Passwords do not match' in resp.body
|
||||
|
||||
|
@ -65,8 +65,8 @@ def do_user_registration(username='foo', password='bar'):
|
|||
register_form = page.forms[0]
|
||||
register_form['username'] = username
|
||||
if password is not None:
|
||||
register_form['password'] = password
|
||||
register_form['password2'] = password
|
||||
register_form['password$pwd1'] = 'bar'
|
||||
register_form['password$pwd2'] = 'bar'
|
||||
resp = register_form.submit()
|
||||
assert resp.status_int == 302
|
||||
assert resp.location == 'http://example.net/login'
|
||||
|
|
|
@ -416,10 +416,9 @@ class MethodDirectory(Directory):
|
|||
form = Form(enctype='multipart/form-data', action='forgotten')
|
||||
form.add(HiddenWidget, 't', value = tokenv)
|
||||
form.add(HiddenWidget, 'a', value = action)
|
||||
form.add(PasswordWidget, 'new_password', title = _('New Password'),
|
||||
required=True)
|
||||
form.add(PasswordWidget, 'new2_password', title = _('New Password (confirm)'),
|
||||
required=True)
|
||||
form.add(PasswordEntryWidget, 'new_password', title=_('New Password'),
|
||||
required=True, formats=['cleartext'],
|
||||
**get_cfg('passwords', {}))
|
||||
form.add_submit('submit', _('Submit'))
|
||||
form.add_submit('cancel', _('Cancel'))
|
||||
|
||||
|
@ -428,11 +427,7 @@ class MethodDirectory(Directory):
|
|||
return redirect('.')
|
||||
|
||||
if form.is_submitted() and not form.has_errors():
|
||||
check_password(form, 'new_password')
|
||||
new_password = form.get_widget('new_password').parse()
|
||||
new2_password = form.get_widget('new2_password').parse()
|
||||
if new_password != new2_password:
|
||||
form.set_error('new2_password', _('Passwords do not match'))
|
||||
new_password = form.get_widget('new_password').parse().get('plain')
|
||||
|
||||
if form.is_submitted() and not form.has_errors():
|
||||
account = PasswordAccount.get(token.username)
|
||||
|
@ -514,38 +509,13 @@ class MethodDirectory(Directory):
|
|||
r = TemplateIO(html=True)
|
||||
|
||||
if not passwords_cfg.get('generate', True):
|
||||
form.add(PasswordWidget, 'password', title = _('Password'), size=25, required=True)
|
||||
form.add(PasswordWidget, 'password2', title = _('Password (confirm)'), size=25, required=True)
|
||||
get_response().add_javascript(['jquery.js', 'jquery.passstrength.js'])
|
||||
r += htmltext('''<script>
|
||||
$(function() {
|
||||
$('input#form_password').passStrengthify({
|
||||
levels: ["%(veryweak)s", "%(veryweak)s", "%(weak)s", "%(weak)s", "%(moderate)s", "%(good)s", "%(strong)s", "%(verystrong)s"],
|
||||
labels: {
|
||||
passwordStrength: "%(password_strength)s",
|
||||
tooShort: "%(tooshort)s"
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>''') % {'veryweak': _('Very weak'),
|
||||
'weak': _('Weak'),
|
||||
'moderate': _('Moderate'),
|
||||
'good': _('Good'),
|
||||
'strong': _('Strong'),
|
||||
'verystrong': _('Very strong'),
|
||||
'password_strength': _('Password strength:'),
|
||||
'tooshort': _('Too short')}
|
||||
form.add(PasswordEntryWidget, 'password', title=_('Password'),
|
||||
size=25, required=True,
|
||||
formats=['cleartext'],
|
||||
**get_cfg('passwords', {}))
|
||||
|
||||
form.add_submit('submit', _('Create Account'))
|
||||
|
||||
if form.is_submitted() and not form.has_errors():
|
||||
if not passwords_cfg.get('generate', True):
|
||||
check_password(form, 'password')
|
||||
new_password = form.get_widget('password').parse()
|
||||
new2_password = form.get_widget('password2').parse()
|
||||
if new_password != new2_password:
|
||||
form.set_error('password2', _('Passwords do not match'))
|
||||
|
||||
if form.is_submitted() and not form.has_errors():
|
||||
tmp = self.register_submit(form, formdef)
|
||||
if not form.has_errors():
|
||||
|
@ -581,19 +551,15 @@ $(function() {
|
|||
form.set_error(username_field_key,
|
||||
_('There is already a user with that email address'))
|
||||
|
||||
password = None
|
||||
|
||||
if not passwords_cfg.get('generate', True):
|
||||
check_password(form, 'password')
|
||||
else:
|
||||
password = make_password()
|
||||
# an email will be sent afterwards
|
||||
|
||||
if form.has_errors():
|
||||
return
|
||||
|
||||
if not passwords_cfg.get('generate', True):
|
||||
password = form.get_widget('password').parse()
|
||||
password = None
|
||||
if passwords_cfg.get('generate', True):
|
||||
password = make_password()
|
||||
# an email will be sent afterwards
|
||||
else:
|
||||
password = form.get_widget('password').parse().get('cleartext')
|
||||
|
||||
user = get_publisher().user_class()
|
||||
user.name = username
|
||||
|
|
Loading…
Reference in New Issue