def getDoneRecord(request): userid = 0 if request.GET.has_key('userid') == 0: return get_response(403, '{"message":"no userid"}', {}) else: userid = int(request.GET["userid"]) test = Users.objects.filter(id=userid) if test.count() == 0: return get_response(403, '{"message":"no such user"}', {}) userquestion = UserQuestion.objects.filter(righte=1, userid=userid) questions = Question.objects.all() result_list = [] for question in questions: # no .values, it is an object, use . instead of [], [] is for dictionary questionid = question.id test = userquestion.filter(questionid=questionid) result_item = {} if test.count() == 0: result_item = { "questionid": questionid, "isdone": False, "result": "" } else: result = test[0].correct result_item = { "questionid": questionid, "isdone": True, "result": result } result_list.append(result_item) return HttpResponse(json.dumps(result_list), content_type="application/json")
def getQuestionSuggestion(request): questionid = 0 if request.GET.has_key('questionid'): questionid = request.GET["questionid"] test = Question.objects.filter(id=questionid).count() if test == 0: return get_response(403, '{"message":"no such question"}', {}) else: return get_response(403, '{"message":"no questionid"}', {}) result = QuestionSuggestion.objects.filter(questionid = questionid) return HttpResponse(serializers.serialize("json", result), content_type="application/json")
def get(request,id): z = Question.objects.filter(id=id).defer("answer") if z.count()==1: w = [m.name for m in Question._meta.get_fields()] w.remove("answer") w.remove("linkneuron") w.remove("rightproblems") w.remove("wrongproblems") w.remove("twinproblems") w.remove("users") w.remove("userquestion") return get_response(200,serialize("json",z,fields=tuple(w)),{}) else: return get_response(200,'{"e":"no"}',{})
def usefulquestions(request,questionid,userid): if request.GET.has_key("choice")==0: return get_response(403,"",{}) e = Users.objects.filter(id=userid) if e.count()==0: return get_response(403,"",{}) z = Question.objects.filter(id=questionid) if z.count()==0: return get_response(403,"",{}) o = Useful.objects.filter(questionid=questionid,userid=userid) if o.count()!=0: return get_response(200,"",{}) o = Useful(questionid=z[0],userid=e[0],answer=int(request.GET["choice"]),time=datetime.datetime.now(),right=1) o.save() return get_response(200,"",{})
def questionlikes(request, userid, questionid): w = Question.objects.filter(id=int(questionid)) if w.count() == 0: return get_response(200, "z", {}) e = Users.objects.filter(id=int(userid)) if e.count() == 0: return get_response(200, "z", {}) p = UserQuestionLikes.objects.filter(userid=int(userid), questionid=int(questionid)) if p.count() == 0: i = UserQuestionLikes(userid=e[0], questionid=w[0]) i.save() return get_response(200, "okl", {}) else: p.delete() return get_response(200, "w", {})
def getquestion(request, userid): e = UserQuestion.objects.filter(righte=1, userid=userid) if request.GET.has_key("right"): e = UserQuestion.objects.filter(righte=1, userid=userid, correct=request.GET["right"]) return get_response(200, serialize("json", e), {})
def getquestionbychapter(request): question = Question.objects.all() pagenum = 10 page = 1 if request.GET.has_key('chapter'): chapter = str(request.GET["chapter"]) question = question.filter(code__startswith = chapter) else: return get_response(403, '{"message":"no chapter"}', {}) if request.GET.has_key('category'): category = int(request.GET["category"]) question = question.filter(category = category) print(category) if request.GET.has_key('pagenum'): pagenum = int(request.GET["pagenum"]) if request.GET.has_key('page'): page = int(request.GET["page"]) start = (page-1) * pagenum # start form page 1 end = page * pagenum question = question.order_by("id")[start:end] return HttpResponse(serializers.serialize("json", question), content_type="application/json")
def get(request,token): z = Users.objects.filter(token=token) if z.count()==0: return get_response(200,'{"message":"you are not the people in the program"}',{}) else: o = HttpResponseRedirect("http://lala.ust.hk:8000") o.set_cookie("token",token) o.set_cookie("id",z[0].pk) o.set_cookie("userid",z[0].names) o.__setitem__("Cache-Control",3600) create(request,o,z[0].pk) return o
def preferquestions(request, questionid, userid): if request.GET.has_key("choice") == 0: return get_response(403, "no choice", {}) e = Users.objects.filter(id=userid) if e.count() == 0: return get_response(403, "no such user", {}) z = Question.objects.filter(id=questionid) if z.count() == 0: return get_response(403, "no such question", {}) o = Prefer.objects.filter(questionid=questionid, userid=userid) if o.count() == 0: # return get_response(200,"",{}) o = Prefer(questionid=z[0], userid=e[0], answer=int(request.GET["choice"]), time=datetime.datetime.now(), right=1) o.save() return get_response(200, "success", {}) else: return get_response(500, "failed", {})
def postSystemSuggestion(request): userid = 0 username = "" comment = "" if request.POST.has_key("userid") == 0: return get_response(403, '{"message":"no userid"}', {}) else: userid = request.POST["userid"] test = Users.objects.filter(id = userid).count() if test == 0: return get_response(403, '{"message":"no such userid"}', {}) else: userid = Users.objects.filter(id = userid)[0] if request.POST.has_key("username") == 0: return get_response(403, '{"message":"no username"}', {}) else: username = request.POST["username"] test = Users.objects.filter(names=username).count() if test == 0: return get_response(403, '{"message":"no such username"}', {}) if request.POST.has_key("comment") == 0: return get_response(403, '{"message":"no comment"}', {}) else: comment = request.POST["comment"] record = Suggestion(userid = userid, username=username, comment=comment,time=datetime.now()) record.save() return get_response(200, '{"message":"upload success"}', {})
def atquestion(request, userid, questionid): userid = int(userid) questionid = int(questionid) print(questionid) if request.POST.has_key("choice") == 0: return get_response(403, '{"message":"no choice"}', {}) p = Question.objects.filter(id=questionid) if p.count() == 0: return get_response(403, '{"message":"no question"}', {}) e = Users.objects.filter(id=userid) if e.count() == 0: return get_response(403, '{"message":"no use"}', {}) userid = Users.objects.filter(id=userid)[0] questionid = Question.objects.filter(id=questionid)[0] if request.POST["choice"] == p[0].answer: l = "right" else: l = "wrong" e = UserQuestion.objects.filter(questionid=questionid, userid=userid, righte=0) if e.count() == 0: z = UserQuestion(righte=1, questionid=questionid, userid=userid, answer=request.POST["choice"], time=datetime.now(), right=p[0].answer, correct=l) z.save() if p[0].answer == request.POST["choice"]: e = neuron(userid, questionid) return get_response(200, '{"message":"right"}', {}) else: w = neuron(userid, questionid) return get_response(200, '{"message":"wrong"}', {})
def getlist(request): w = Action.objects.all() z = w.values() e = open("theall/ew.csv", "w") for l in z[0]: e.write(str(l) + ",") e.write("\n") for w in z: for p, o in w.items(): if p != "content": e.write(str(o) + ",") else: e.write(pro(w["url"], w["method"]) + ",") e.write("\n") e.close() return get_response(200, "lala.ust.hk:8000/theall/ew.csv", {})
def postQuestionSuggestion(request): userid = 0 # cookie's id username = "" # cookie's userid questionid = 0 comment = "" if request.POST.has_key("userid") == 0: return get_response(403, '{"message":"no userid"}', {}) else: userid = request.POST["userid"] test = Users.objects.filter(id=userid).count() if test == 0: return get_response(403, '{"message":"no such userid"}', {}) else: userid = Users.objects.filter(id=userid)[0] if request.POST.has_key("username") == 0: return get_response(403, '{"message":"no username"}', {}) else: username = request.POST["username"] test = Users.objects.filter(names=username).count() if test == 0: return get_response(403, '{"message":"no such username"}', {}) if request.POST.has_key("questionid") == 0: return get_response(403, '{"message":"no questionid"}', {}) else: questionid = request.POST["questionid"] test = Question.objects.filter(id=questionid).count() if test == 0: return get_response(403, '{"message":"no such question"}', {}) else: questionid = Question.objects.filter(id=questionid)[0] if request.POST.has_key("comment") == 0: return get_response(403, '{"message":"no comment"}', {}) else: comment = request.POST["comment"] # userid must be a Users instance!!! same as other foreign key record = QuestionSuggestion(userid=userid, username=username, comment=comment, time=datetime.now(), questionid=questionid) record.save() return get_response(200, '{"message":"upload success"}', {})
def wez(request,userid): e = Users.objects.filter(id=int(userid)) if e.count()==0: return get_response(200,"z",{}) w = UserQuestion.objects.filter(userid=int(userid)).update(righte=0) return get_response(200,"e",{})
def getuseraction(request,userid): e = Action.objects.filter(userid=userid) z = e.values("token").annotate(log=Max("time"),out=Min("time")) return get_response(200,json.dumps(list(z),cls=DjangoJSONEncoder),{})
def getquestionlikes(reuqest, userid): w = Users.objects.filter(id=int(userid)) if w.count() == 0: return get_response(200, "z", {}) e = UserQuestionLikes.objects.filter(userid=int(userid)) return get_response(200, serialize("json", e), {})
def get(request,id): e = Question.objects.filter(id=id) if e.count()==1: return get_response(200,serialize(e[0]),{}) else: return get_response(200,"no",{})