Esempio n. 1
0
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")
Esempio n. 2
0
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")
Esempio n. 3
0
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"}',{})
Esempio n. 4
0
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,"",{})
Esempio n. 5
0
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", {})
Esempio n. 6
0
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), {})
Esempio n. 7
0
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")
Esempio n. 8
0
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
Esempio n. 9
0
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", {})
Esempio n. 10
0
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"}', {})
Esempio n. 11
0
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"}', {})
Esempio n. 12
0
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", {})
Esempio n. 13
0
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"}', {})
Esempio n. 14
0
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",{})
Esempio n. 15
0
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),{})
Esempio n. 16
0
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), {})
Esempio n. 17
0
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",{})