forked from DGNum/gestioCOF
move pwd change to method
Signed-off-by: Ludovic Stephan <lstephan@clipper.ens.fr>
This commit is contained in:
parent
7dc7d57a5e
commit
6315ddf6b8
2 changed files with 10 additions and 8 deletions
|
@ -154,6 +154,7 @@ class Account(models.Model):
|
||||||
# - Enregistre User, CofProfile à partir de "data"
|
# - Enregistre User, CofProfile à partir de "data"
|
||||||
# - Enregistre Account
|
# - Enregistre Account
|
||||||
def save(self, data = {}, *args, **kwargs):
|
def save(self, data = {}, *args, **kwargs):
|
||||||
|
|
||||||
if self.pk and data:
|
if self.pk and data:
|
||||||
# Account update
|
# Account update
|
||||||
|
|
||||||
|
@ -200,6 +201,12 @@ class Account(models.Model):
|
||||||
self.cofprofile = cof
|
self.cofprofile = cof
|
||||||
super(Account, self).save(*args, **kwargs)
|
super(Account, self).save(*args, **kwargs)
|
||||||
|
|
||||||
|
def change_pwd(self, pwd):
|
||||||
|
pwd_sha256 = hashlib.sha256(pwd.encode('utf-8'))\
|
||||||
|
.hexdigest()
|
||||||
|
self.password = pwd_sha256
|
||||||
|
self.save()
|
||||||
|
|
||||||
# Surcharge de delete
|
# Surcharge de delete
|
||||||
# Pas de suppression possible
|
# Pas de suppression possible
|
||||||
# Cas à régler plus tard
|
# Cas à régler plus tard
|
||||||
|
|
|
@ -421,10 +421,7 @@ def account_update(request, trigramme):
|
||||||
if (request.user.has_perm('kfet.change_account_password')
|
if (request.user.has_perm('kfet.change_account_password')
|
||||||
and pwd_form.is_valid()):
|
and pwd_form.is_valid()):
|
||||||
pwd = pwd_form.cleaned_data['pwd1']
|
pwd = pwd_form.cleaned_data['pwd1']
|
||||||
pwd_sha256 = hashlib.sha256(pwd.encode('utf-8'))\
|
account.change_pwd(pwd)
|
||||||
.hexdigest()
|
|
||||||
Account.objects.filter(pk=account.pk).update(
|
|
||||||
password=pwd_sha256)
|
|
||||||
messages.success(request, 'Mot de passe mis à jour')
|
messages.success(request, 'Mot de passe mis à jour')
|
||||||
|
|
||||||
# Checking perm to manage perms
|
# Checking perm to manage perms
|
||||||
|
@ -459,6 +456,7 @@ def account_update(request, trigramme):
|
||||||
'Informations du compte %s mises à jour'
|
'Informations du compte %s mises à jour'
|
||||||
% account.trigramme)
|
% account.trigramme)
|
||||||
|
|
||||||
|
# Modification de ses propres informations
|
||||||
if request.user == account.user:
|
if request.user == account.user:
|
||||||
missing_perm = False
|
missing_perm = False
|
||||||
account.refresh_from_db()
|
account.refresh_from_db()
|
||||||
|
@ -476,10 +474,7 @@ def account_update(request, trigramme):
|
||||||
if request.user.has_perm('kfet.is_team') \
|
if request.user.has_perm('kfet.is_team') \
|
||||||
and pwd_form.is_valid():
|
and pwd_form.is_valid():
|
||||||
pwd = pwd_form.cleaned_data['pwd1']
|
pwd = pwd_form.cleaned_data['pwd1']
|
||||||
pwd_sha256 = hashlib.sha256(pwd.encode('utf-8'))\
|
account.change_pwd(pwd)
|
||||||
.hexdigest()
|
|
||||||
Account.objects.filter(pk=account.pk).update(
|
|
||||||
password=pwd_sha256)
|
|
||||||
messages.success(
|
messages.success(
|
||||||
request, 'Votre mot de passe a été mis à jour')
|
request, 'Votre mot de passe a été mis à jour')
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue