def list(request): try: parameters = request.GET.dict() validate_optional_parameters(parameters, ['since', 'limit', 'order'], [None, None, 'desc']) if 'forum' in parameters and 'thread' not in parameters: from API.requests import forum_requests posts = forum_requests.getPostsList(parameters['forum'], parameters['since'], parameters['order'], parameters['limit'], []) elif 'thread' in parameters and 'forum' not in parameters: from API.requests import thread_requests posts = thread_requests.getPostsList(parameters['thread'], parameters['since'], parameters['order'], parameters['limit']) else: raise Exception("Wrong required parameters") response_json = { 'code': 0, 'response': posts, } except Exception as e: response_json = { 'code': 1, 'response': str(e), } return HttpResponse(json.dumps(response_json, ensure_ascii=False), content_type='application/json')
def details(request): try: parameters = request.GET.dict() validate_required_parameters(parameters, ["thread"]) validate_optional_parameters(parameters, ["related"], [[]]) thread = thread_requests.getDetailedThread(parameters["thread"], parameters["related"]) response_json = {"code": 0, "response": thread} except Exception as e: response_json = {"code": 1, "response": str(e)} return HttpResponse(json.dumps(response_json, ensure_ascii=False), content_type="application/json")
def listPosts(request): try: parameters = request.GET.dict() validate_required_parameters(parameters, ["thread"]) validate_optional_parameters(parameters, ["since", "limit", "order"], [None, None, "desc"]) threads = thread_requests.getPostsList( parameters["thread"], parameters["since"], parameters["order"], parameters["limit"] ) response_json = {"code": 0, "response": threads} except Exception as e: response_json = {"code": 1, "response": str(e)} return HttpResponse(json.dumps(response_json, ensure_ascii=False), content_type="application/json")
def details(request): try: parameters = request.GET.dict() validate_required_parameters(parameters, ['forum']) validate_optional_parameters(parameters, ['related'], [[]]) forum = forum_requests.getDetailedForum(parameters['forum'], parameters['related']) response_json = { 'code': 0, 'response': forum, } except Exception as e: response_json = { 'code': 1, 'response': str(e), } return HttpResponse(json.dumps(response_json, ensure_ascii=False), content_type='application/json')
def listUsers(request): try: parameters = request.GET.dict() validate_required_parameters(parameters, ['forum']) validate_optional_parameters(parameters, ['limit', 'order', 'since_id'], [None, 'desc', None]) users = forum_requests.getUsersList(parameters['forum'], parameters['since_id'], parameters['order'], parameters['limit']) response_json = { 'code': 0, 'response': users, } except Exception as e: response_json = { 'code': 1, 'response': str(e), } return HttpResponse(json.dumps(response_json, ensure_ascii=False), content_type='application/json')
def create(request): try: parameters = json.loads(request.body, encoding='utf-8') validate_required_parameters(parameters, ['date', 'thread', 'message', 'user', 'forum']) validate_optional_parameters(parameters, ['parent', 'isApproved', 'isHighlighted', 'isEdited', 'isSpam', 'isDeleted'], [None, False, False, False, False, False]) post_requests.addPost(parameters['forum'], parameters['thread'], parameters['user'], parameters['message'], parameters['date'], parameters['parent'], parameters['isApproved'], parameters['isHighlighted'], parameters['isEdited'], parameters['isSpam'], parameters['isDeleted']) post = post_requests.getAddedPost(parameters['forum'], parameters['thread'], parameters['user'], parameters['date']) response_json = { 'code': 0, 'response': post, } except Exception as e: response_json = { 'code': 1, 'response': str(e), } return HttpResponse(json.dumps(response_json, ensure_ascii=False), content_type='application/json')
def create(request): try: parameters = json.loads(request.body, encoding="utf-8") validate_required_parameters(parameters, ["forum", "title", "isClosed", "user", "date", "message", "slug"]) validate_optional_parameters(parameters, ["isDeleted"], [False]) thread_requests.addThread( parameters["forum"], parameters["slug"], parameters["title"], parameters["message"], parameters["user"], parameters["date"], parameters["isClosed"], parameters["isDeleted"], ) thread = thread_requests.getAddedThread(parameters["forum"], parameters["slug"]) response_json = {"code": 0, "response": thread} except Exception as e: response_json = {"code": 1, "response": str(e)} return HttpResponse(json.dumps(response_json, ensure_ascii=False), content_type="application/json")
def list(request): try: parameters = request.GET.dict() validate_optional_parameters(parameters, ["since", "limit", "order"], [None, None, "desc"]) if "user" in parameters and "forum" not in parameters: from API.requests import user_requests threads = user_requests.getThreadsList( parameters["user"], parameters["since"], parameters["order"], parameters["limit"] ) elif "forum" in parameters and "user" not in parameters: from API.requests import forum_requests threads = forum_requests.getThreadsList( parameters["forum"], parameters["since"], parameters["order"], parameters["limit"], [] ) else: raise Exception("Wrong required parameters") response_json = {"code": 0, "response": threads} except Exception as e: response_json = {"code": 1, "response": str(e)} return HttpResponse(json.dumps(response_json, ensure_ascii=False), content_type="application/json")