Пример #1
0
def new_quiz():
    """Create new quiz, available to users who have taken enough quizzes."""

    if not g.user.is_new_quiz_eligible():
        num = g.user.num_quizzes_created*10 + 10 - len(g.user.quizzes)
        flash(f"Take {num} more quizzes to create new quiz.")
        return redirect('/')

    form = QuizCreationForm()

    if form.validate_on_submit():
        quiz = Quiz.create(form.family.data)

        if quiz:
            quiz.created_by = g.user.username
            g.user.num_quizzes_created += 1
            db.session.commit()
            flash("Quiz successfully created!", "success")
            return redirect(f'/quiz/{quiz.id}')

        else:
            flash("Something went wrong. Please try again later.")

    return render_template('create_quiz.html', form=form)