def result(sid): s = Session.Get(sid) if (s == None): return render_template('error.html', title='404', quizdb=QuizDB.Instance(), errcode=ERROR_SESSION_ID_NOT_FOUND, errortext=sid) if (s.quiz.state != Quiz.DONE): s.Kill() return render_template('error.html', title='Error', quizsession=s, quizdb=QuizDB.Instance(), errcode=ERROR_SESSION_ERROR) else: s.Save() s.Kill() return render_template('result.html', title='Result', quizsession=s, quizdb=QuizDB.Instance())
def quiz(sid): s = Session.Get(sid) if (s == None): return render_template('error.html', title='404', quizdb=QuizDB.Instance(), errcode=ERROR_SESSION_ID_NOT_FOUND, errortext=sid) f = forms.file_list_form_builder(s, QuizCFG.ISDEBUG) if f.validate_on_submit(): rids = forms.rspids_from_form(f) if (len(rids) != 0): rc = s.quiz.Answer(rids) if (rc != Quiz.OK): return redirect(url_for('result', sid=s.sid)) return redirect(url_for('quiz', sid=s.sid)) return render_template('question.html', form=f, title='Quiz', quizsession=s, quizdb=QuizDB.Instance())