diff --git a/account/views.py b/account/views.py index 5b4d4a6..f664d22 100644 --- a/account/views.py +++ b/account/views.py @@ -3,6 +3,7 @@ import os import hashlib +import smbpasswd from django.conf import settings from django.http import HttpResponseRedirect @@ -163,7 +164,15 @@ def password(request): if form.is_valid(): new_password = form.cleaned_data['password1'] + + # change the password for the Wifi + member.set('sambaLMPassword', smbpasswd.lmhash(new_password)) + member.set('sambaNTPassword', smbpasswd.nthash(new_password)) + member.save() + + # change the LDAP password member.change_password(new_password) + key = store_ldap_password(request, new_password) request.session.save() new_form = PasswordForm() @@ -171,6 +180,7 @@ def password(request): {'message': _('Your password was changed. Thank you!'), 'form': new_form, 'member': member.to_dict()}) response.set_cookie('sessionkey', key) + return response else: return render(request, 'password.html', {'form': form, 'member': member.to_dict()}) diff --git a/requirements.txt b/requirements.txt index 942ca60..c17f2f0 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,3 +4,4 @@ django-auth-ldap==1.1.4 django-json-rpc==0.6.1 django-crispy-forms==1.4.0 pycrypto==2.6.1 +smbpasswd==1.0.2