Example #1
0
def addMCQuestion():
    global loggedIn
    if (user.type != 1 and user.type != 2):
        return redirect("/login")

    print("sending question page")
    if request.method == "POST":
        global qList
        q = Question(-1)
        q.setName(request.form["question"])
        if not goodQuestion(q.getName()):
            return redirect("/questions")
        finished = 0
        i = 0
        q.setType('m')
        while not finished:
            try:
                q.addAnswer(request.form["a" + str(i)])
                if not goodOption(request.form["a" + str(i)]):
                    return redirect("/questions")  #only checked if valid
                i = i + 1
            except:
                finished = 1

        print(q.getID())
        print(q.getName())
        print(q.getAnswers())
        q = handle.addQuestion(q)
        print(q.getAnswers())
        return redirect("/questions")

    else:
        return render_template("createMCQ.html", numAnswers=2)
Example #2
0
def staffMCQ():
    global loggedIn
    if (user.type != 1 and user.type != 2):
        return redirect("/login")

    print("sending question page")
    if request.method == "POST":
        global qList
        q = Question(-1)
        q.setName(request.form["question"])
        finished = 0
        i = 0
        q.setMandatory(False)
        q.setType('m')
        while not finished:
            try:
                q.addAnswer(request.form["a" + str(i)])
                i = i + 1
            except:
                finished = 1

        print(q.getID())
        print(q.getName())
        print(q.getAnswers())
        q = handle.addQuestion(q)
        print(q.getAnswers())
        return redirect("/staffquestion")
    else:
        return render_template("staffCreateMCQ.html", numAnswers=2)
Example #3
0
 def getQuestion(self, qID):
     question = self._controller.getQuestion(qID)
     #print(question)
     qList = []
     for quest in question:
         if (quest[qDict['type']] == 'm'):
             q = Question(quest[qDict['id']])
             for a in quest[qDict['option']]:
                 q.addAnswer(a)
         elif (quest[qDict['type']] == 't'):
             q = Question(quest[qDict['id']])
         q.setType(quest[qDict['type']])
         q.setName(quest[qDict['name']])
         q.setMandatory(quest[qDict['isMandatory']])
         q.setDelete(quest[qDict['isDeleted']])
         qList.append(q)
     if qID == None:
         return qList
     else:
         return qList[0]
Example #4
0
s.removeQuestion(1)

t = Survey("test", 0, "/test")
t.addCourse("COMP2041 17s2")
t.addCourse("COMP1531 17s2")
t.addCourse("COMP2041 17s2")
t.addQuestion(0)
t.addQuestion(1)
t.addQuestion(2)
t.addQuestion(3)

saveSurveyList([s, t])

q = Question(0)
q.setName("testQ")
q.addAnswer("lol kek")
q.addAnswer("idk man")
q.addAnswer("i dislike python")

r = Question(1)
r.setName("testQ2")
r.addAnswer("kek kek")
r.addAnswer("ceebs")
r.addAnswer("defs ceebs")

saveQuestionList([r, q])

lst = getSurveyList()

qlst = getQuestionList()
Example #5
0
class MyJSONEncoder(JSONEncoder):
    def default(self, obj):
        if isinstance(obj, Question):
            return {"question": obj.question, "timePosted": obj.timePosted}
        elif isinstance(obj, Answer):
            return {"answer": obj.answer, "timePosted": obj.timePosted}
        else:
            return super(MyJSONEncoder, self).default(obj)


app = Flask(__name__)
app.json_encoder = MyJSONEncoder

q = Question("Who dis?")
q.addAnswer("A-a-ron")

questions = [q]


@app.route("/question", methods=['POST'])
def hello():

    questions.append(Question(request.form['question']))

    return request.form['question']


@app.route("/questions")
def getQuestions():