def movie(): return render_template('movie.html', movie=Movie.next_for_user(g.user))
def decorated_function(*args, **kwargs): if not Movie.next_for_user(g.user): return redirect(url_for('leaderboard')) return func(*args, **kwargs)
@require_login def answer(): # Prevent user from guessing twice on the same movie try: guess = Guess.save( request.form['guess'], g.user.id, request.form['movie'] ) except IntegrityError, e: return 'Du har redan gissat på den här filmen', 403 return render_template( 'answer.html', movie=guess.movie, complete=(False if Movie.next_for_user(g.user) else True), guess=guess ) @app.route('/leaderboard', methods=['GET', 'POST']) @identify_user def leaderboard(): # Let user set their name if request.method == 'POST' and g.user: g.user.name = request.form['name'] g.user.update() return render_template( 'leaderboard.html', users=User.by_score(),