full refactor Thread class
parent
1655dbccb7
commit
0e1616bf7c
|
|
@ -93,9 +93,9 @@ class AbstractCreate(AbstractUtilsCRUD):
|
|||
"""
|
||||
|
||||
@classmethod
|
||||
def addObject(request, privilige):
|
||||
def addObject(self, request, privilige):
|
||||
"""
|
||||
create object
|
||||
create object without parent
|
||||
"""
|
||||
object = jsonLoad(request)
|
||||
if checkSession(request, privilige):
|
||||
|
|
@ -121,6 +121,20 @@ class AbstractCreate(AbstractUtilsCRUD):
|
|||
newObject.save()
|
||||
return HttpResponse(f"Add new Object: {newObject.toDict()}")
|
||||
|
||||
@classmethod
|
||||
def addObject(self, request, parentID, privilige):
|
||||
"""
|
||||
create object with parent
|
||||
"""
|
||||
object = jsonLoad(request)
|
||||
if checkSession(request, privilige):
|
||||
if self._validateUnique(object):
|
||||
return self._saveObject(parentID, object)
|
||||
else:
|
||||
return HttpResponse("Object Is Already Exist")
|
||||
else:
|
||||
return HttpResponse("No Permission")
|
||||
|
||||
def _saveObject(self, parentID, objectDict):
|
||||
"""
|
||||
save object with parent & subject + comment & set trigger time
|
||||
|
|
@ -135,10 +149,10 @@ class AbstractCreate(AbstractUtilsCRUD):
|
|||
newObject.save()
|
||||
return HttpResponse(f"Add new Object: {newObject.toDict()}")
|
||||
|
||||
def _createFirstComment(newSubject, objectDict):
|
||||
def _createFirstComment(self, newSubject, objectDict):
|
||||
pass
|
||||
|
||||
def _setActualTimeTrigger():
|
||||
def _setActualTimeTrigger(self):
|
||||
pass
|
||||
|
||||
class Meta:
|
||||
|
|
|
|||
|
|
@ -220,57 +220,15 @@ class Threads(AbstractCRUD):
|
|||
"moderator_avatar": self.user.avatar,
|
||||
"moderator_privilige": self.user.privilige}
|
||||
|
||||
# Get One Thread
|
||||
# Create Thread (validation)
|
||||
|
||||
def __getObjectNormal(objectID):
|
||||
object = Threads.objects.get(pk = objectID).toDict()
|
||||
return HttpResponse(json.dumps(object))
|
||||
|
||||
# Create Thread
|
||||
|
||||
@classmethod
|
||||
def addObject(request, privilige):
|
||||
object = jsonLoad(request)
|
||||
if checkSession(request, privilige):
|
||||
if self.__validateUnique(object):
|
||||
return self.__saveObject(object)
|
||||
else:
|
||||
return HttpResponse("Object Is Already Exist")
|
||||
else:
|
||||
return HttpResponse("No Permission")
|
||||
|
||||
def __validateUnique(objectDict):
|
||||
def _validateUnique(self, objectDict):
|
||||
objectsAll = Threads.__allObjectsDict(model)
|
||||
for x in objectsAll:
|
||||
if x['name'].upper() == objectDict['name'].upper():
|
||||
return False
|
||||
return True
|
||||
|
||||
def __saveObject(objectDict):
|
||||
newObject = Threads()
|
||||
newObject.fromDict(objectDict)
|
||||
newObject.save()
|
||||
return HttpResponse(f"Add new Thread: {newObject.toDict()}")
|
||||
|
||||
# Update Thread
|
||||
|
||||
def updateObject(request, objectDict, objectID):
|
||||
objectOld = Threads.objects.get(pk = objectID)
|
||||
objectOld.fromDict(objectDict)
|
||||
objectOld.save()
|
||||
return HttpResponse(f"Thread: {objectOld.toDict()} has been updated")
|
||||
|
||||
# Delete Thread
|
||||
|
||||
@classmethod
|
||||
def deleteObject(request, objectID, privilige):
|
||||
objectDel = Threads.objects.get(pk = objectID)
|
||||
if checkSession(request, privilige) and checkUserPermission(objectDel.toDict(), request):
|
||||
objectDel.delete()
|
||||
return HttpResponse(f"Thread: {objectDel} has been deleted")
|
||||
else:
|
||||
return HttpResponse("No Permission")
|
||||
|
||||
|
||||
class Subjects(AbstractCRUD):
|
||||
name = models.CharField(max_length=30)
|
||||
|
|
|
|||
Loading…
Reference in New Issue