def closeThread(request): if request.method == "POST": requestData = json.loads(request.body) requiredData = ["thread"] try: tryParam(input=requestData, required=requiredData) threads = ThreadsHelper.toggleThreadHelper(id=requestData["thread"], isClosed=1) except Exception as e: return generateError(e.message) return getResponse(threads) else: return HttpResponse(status=400)
def updateThread(request): if request.method == "POST": requestData = json.loads(request.body) requiredData = ["thread", "slug", "message"] try: tryParam(input=requestData, required=requiredData) threads = ThreadsHelper.updateThreadHelper(id=requestData["thread"], slug=requestData["slug"], message=requestData["message"]) except Exception as e: return generateError(e.message) return getResponse(threads) else: return HttpResponse(status=400)
def detailsThread(request): if request.method == "GET": requestData = getParam(request) requiredData = ["thread"] related = getRelated(requestData) try: tryParam(input=requestData, required=requiredData) threads = ThreadsHelper.detailsThreadHelper(id=requestData["thread"], related=related) except Exception as e: return generateError(e.message) return getResponse(threads) else: return HttpResponse(status=400)
def detailsPostHelper(id, option): post = postQueryHelper(id) if post is None: raise Exception("no post with id = "+id) if "user" in option: post["user"] = UsersHelper.detailsHelper(post["user"]) if "forum" in option: post["forum"] = ForumsHelper.detailForumHelper(short_name=post["forum"], related=[]) if "thread" in option: post["thread"] = ThreadsHelper.detailsThreadHelper(id=post["thread"], related=[]) return post
def listThreadsForum(request): if request.method == "GET": required = ["forum"] request = getParam(request) related = getRelated(request) optional = getOptional(request=request, values=["limit", "order", "since"]) try: tryParam(input=request, required=required) arrayThreads = ThreadsHelper.listThreadHelper(table="forum", id=request["forum"], related=related, params=optional) except Exception as e: return generateError(e.message) return getResponse(arrayThreads) else: return HttpResponse(status=400)
def createThread(request): if request.method == "POST": requestData = json.loads(request.body) requiredData = ["forum", "title", "isClosed", "user", "date", "message", "slug"] option = getOptional(request=requestData, values=["isDeleted"]) try: tryParam(input=requestData, required=requiredData) threads = ThreadsHelper.createThreadHelper(forum=requestData["forum"], title=requestData["title"], isClosed=requestData["isClosed"], user=requestData["user"], date=requestData["date"], message=requestData["message"], slug=requestData["slug"], optional=option) except Exception as e: return generateError(e.message) return getResponse(threads) else: return HttpResponse(status=400)
def thread_list(request): if request.method == "GET": requestData = getParam(request) id = None try: id = requestData["forum"] table = "forum" except KeyError: try: id = requestData["user"] table = "user" except KeyError: return generateError("No user or forum parameters setted") optional = getOptional(request=requestData, values=["limit", "order", "since"]) try: t_list = ThreadsHelper.listThreadHelper(table=table, id=id, related=[], params=optional) except Exception as e: return generateError(e.message) return getResponse(t_list) else: return HttpResponse(status=400)