def submit_quiz(): if request.get_json() is None: return jsonify({"result": "error", "field":"", "message": "Not valid model!"}), 200 quiz = Quiz.factory_form_json(request.get_json()) if quiz.get_points() is "": return jsonify({"result": "error", "field":"points", "message": "Points cannot be empty"}), 200 if not quiz.is_valid_model(): return jsonify({"result": "error", "field":"", "message": "Not valid model!"}), 200 if len(quiz.get_title()) == 0: return jsonify({"result": "error", "field": "title", "message": "Title cannot be empty!"}), 200 if quiz.get_points() < 0: return jsonify({"result": "error", "field":"points", "message": "Points cannot be less then 0!"}), 200 quiz_real = Quiz.get_by_id(uuid.UUID(quiz._id)) passed = False if quiz_real.mark_subbmitted_quiz(quiz): passed = True try: QuizProfile.get_by_composite_id(uuid.UUID(quiz._id),session['email']) return jsonify({"result": "ok", "field": "title", "message": "", "relocateTo": "/quiz_profile/"+str(quiz_real.get_id()) }), 200 except NoSuchQuizProfileExistException as e: new_quiz_profile = QuizProfile(uuid.UUID(quiz._id),session['email'],datetime.now(),0,passed) new_quiz_profile.save_to_db() User.update_user_points(session['email'],"virtual",quiz_real.get_points()) return jsonify({"result": "ok", "field": "title", "message": "", "relocateTo": "/quiz_profile/"+str(quiz_real.get_id())}), 200
def submit_quiz(): if request.get_json() is None: return jsonify({ "result": "error", "field": "", "message": "Not valid model!" }), 200 quiz = Quiz.factory_form_json(request.get_json()) if quiz.get_points() is "": return jsonify({ "result": "error", "field": "points", "message": "Points cannot be empty" }), 200 if not quiz.is_valid_model(): return jsonify({ "result": "error", "field": "", "message": "Not valid model!" }), 200 if len(quiz.get_title()) == 0: return jsonify({ "result": "error", "field": "title", "message": "Title cannot be empty!" }), 200 if quiz.get_points() < 0: return jsonify({ "result": "error", "field": "points", "message": "Points cannot be less then 0!" }), 200 quiz_real = Quiz.get_by_id(uuid.UUID(quiz._id)) passed = False if quiz_real.mark_subbmitted_quiz(quiz): passed = True try: QuizProfile.get_by_composite_id(uuid.UUID(quiz._id), session['email']) return jsonify({ "result": "ok", "field": "title", "message": "", "relocateTo": "/quiz_profile/" + str(quiz_real.get_id()) }), 200 except NoSuchQuizProfileExistException as e: new_quiz_profile = QuizProfile(uuid.UUID(quiz._id), session['email'], datetime.now(), 0, passed) new_quiz_profile.save_to_db() User.update_user_points(session['email'], "virtual", quiz_real.get_points()) return jsonify({ "result": "ok", "field": "title", "message": "", "relocateTo": "/quiz_profile/" + str(quiz_real.get_id()) }), 200
def get_quiz_view(quiz_id): try: QuizProfile.get_by_composite_id(quiz_id,session['email']) abort(401) except NoSuchQuizProfileExistException as e: quiz = Quiz.get_by_id(quiz_id) return render_template('quiz/user/quiz.html', active_quiz=quiz.to_json())
def get_admin_quizzes_view_add(): quizzes = Quiz.get_all() quizzes_json = [] active_quiz = None for quiz in quizzes: quizzes_json.append(quiz.to_json()) return render_template('quiz/admin/main.html', quizzes=quizzes_json, active_quiz=None, it_is_new="True")
def edit_quiz(): if request.get_json() is None: return jsonify({ "result": "error", "field": "", "message": "Not valid model!" }), 200 quiz = Quiz.factory_form_json(request.get_json()) if quiz.get_points() is "": return jsonify({ "result": "error", "field": "points", "message": "Points cannot be empty" }), 200 if not quiz.is_valid_model(): return jsonify({ "result": "error", "field": "", "message": "Not valid model!" }), 200 if len(quiz.get_title()) == 0: return jsonify({ "result": "error", "field": "title", "message": "Title cannot be empty!" }), 200 if quiz.get_points() < 0: return jsonify({ "result": "error", "field": "points", "message": "Points cannot be less then 0!" }), 200 quiz.sync_to_db() return render_template('quiz/user/quiz.html', quiz=quiz)
def add_quiz(): if request.get_json() is None: return jsonify({ "result": "error", "field": "", "message": "Not valid model!" }), 200 quiz = Quiz.factory_form_json(request.get_json()) if quiz.get_points() is "": return jsonify({ "result": "error", "field": "points", "message": "Points cannot be empty" }), 200 if not quiz.is_valid_model(): return jsonify({ "result": "error", "field": "", "message": "Not valid model!" }), 200 if len(quiz.get_title()) == 0: return jsonify({ "result": "error", "field": "title", "message": "Title cannot be empty!" }), 200 if quiz.get_points() < 0: return jsonify({ "result": "error", "field": "points", "message": "Points cannot be less then 0!" }), 200 quiz.save_to_db() return jsonify({"result": "ok"}), 200
def get_quiz_view(quiz_id): try: QuizProfile.get_by_composite_id(quiz_id, session['email']) abort(401) except NoSuchQuizProfileExistException as e: quiz = Quiz.get_by_id(quiz_id) return render_template('quiz/user/quiz.html', active_quiz=quiz.to_json())
def get_admin_quizzes_view(quiz_title=None): quizzes = Quiz.get_all() quizzes_json = [] active_quiz = None for quiz in quizzes: if quiz._title == quiz_title: active_quiz=quiz.to_json() quizzes_json.append(quiz.to_json()) return render_template('quiz/admin/main.html', quizzes=quizzes_json, active_quiz = active_quiz)
def get_admin_quizzes_view(quiz_title=None): quizzes = Quiz.get_all() quizzes_json = [] active_quiz = None for quiz in quizzes: if quiz._title == quiz_title: active_quiz = quiz.to_json() quizzes_json.append(quiz.to_json()) return render_template('quiz/admin/main.html', quizzes=quizzes_json, active_quiz=active_quiz)
def edit_quiz(): if request.get_json() is None: return jsonify({"result": "error", "field":"", "message": "Not valid model!"}), 200 quiz = Quiz.factory_form_json(request.get_json()) if quiz.get_points() is "": return jsonify({"result": "error", "field":"points", "message": "Points cannot be empty"}), 200 if not quiz.is_valid_model(): return jsonify({"result": "error", "field":"", "message": "Not valid model!"}), 200 if len(quiz.get_title()) == 0: return jsonify({"result": "error", "field":"title", "message": "Title cannot be empty!"}), 200 if quiz.get_points() < 0: return jsonify({"result": "error", "field":"points", "message": "Points cannot be less then 0!"}), 200 quiz.sync_to_db(); return render_template('quiz/user/quiz.html', quiz=quiz)
def add_quiz(): if request.get_json() is None: return jsonify({"result": "error", "field":"", "message": "Not valid model!"}), 200 quiz = Quiz.factory_form_json(request.get_json()) if quiz.get_points() is "": return jsonify({"result": "error", "field":"points", "message": "Points cannot be empty"}), 200 if not quiz.is_valid_model(): return jsonify({"result": "error", "field":"", "message": "Not valid model!"}), 200 if len(quiz.get_title()) == 0: return jsonify({"result": "error", "field": "title", "message": "Title cannot be empty!"}), 200 if quiz.get_points() < 0: return jsonify({"result": "error", "field":"points", "message": "Points cannot be less then 0!"}), 200 quiz.save_to_db() return jsonify({"result": "ok"}), 200
def get_quizzes_view(): quizzes = Quiz.get_all() quizzes_json = [] for quiz in quizzes: quizzes_json.append(quiz.to_json()) return render_template('quiz/user/list.html', quizzes=quizzes_json)
def delete_quiz(quiz_id): quiz = Quiz.get_by_id(quiz_id) quiz.remove_from_db() return jsonify({"result": "ok", "field": "title", "message": ""}), 200