From 51aa6f7eb64578ea34aa8564a983fe36dc1aa586 Mon Sep 17 00:00:00 2001 From: TBS093A Date: Fri, 28 Aug 2020 15:42:17 +0200 Subject: [PATCH] refactor update in abstract (User) --- generalApp/models.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/generalApp/models.py b/generalApp/models.py index dc16755..647d834 100755 --- a/generalApp/models.py +++ b/generalApp/models.py @@ -195,6 +195,25 @@ class Users(ObjectAbstract): # Update User + @classmethod + def putObject(self, request, objectID, privilige): + object = jsonLoad(request) + if checkSession(request, privilige) and checkUserPermission(object, request) + return self.updateObject(self, request, object, objectID) + else: + return HttpResponse("No Permission") + + def updateObject(request, userDict, objectID): + putUser = User.objects.get(pk = objectID) + if checkPassHash(userDict['passwordOld'], putUser.password): + if 'passwordNew' in userDict.keys(): + userDict['password'] = createPassHash(objectDict['passwordNew']) + else: + return HttpResponse('Bad Password') + putUser.fromDict(userDict) + putUser.save() + return HttpResponse(f"User: {putUser.toDict()} has been updated") + # Delete User