Example #1
0
def display_leaderboard():
    data = data_utils.get_sorted_leaderboard()
    return render_template(
        "high.html",
        the_title="This is the leaderboard",
        the_data=data,
        the_len=len(data),
    )
Example #2
0
def update_high_scores_table():
    who = request.form["the_winner"]
    data_utils.add_to_scores(who, session["how_long"], session["attempts"])
    position = (data_utils.get_sorted_leaderboard().index(
        (who, session["how_long"], session["attempts"])) + 1)
    flash(
        f"Well done, you placed {position} out of {len(data_utils.get_sorted_leaderboard())} on the leaderboard."
    )
    return redirect(url_for("start_game"))
Example #3
0
def add_winner():
    if request.method == 'POST':
        if session.get('winner'):
            data_utils.add_to_scores(request.form.get('user_name'),
                                     session.get('final_time'))
            session['winner'] = False
            session['time_taken'] = False
            leaderboard = data_utils.get_sorted_leaderboard()[:10]
            return render_template(
                'leaderboard.html',
                the_title='WordGame',
                leaderboard=leaderboard,
            )
        return redirect('/')
Example #4
0
def record_high_score() -> 'html':
    if not session['done']:
        session['done'] = True
        user = request.form['username']
        how_long = float(session['how_long'])
        sw = session['sourceword']
        data_utils.add_to_scores(user, how_long, sw)
        board = data_utils.get_sorted_leaderboard()
        return render_template('leaderboard.html',
                               title='How did you do?',
                               leaderboard=board,
                               position=board.index((how_long, user, sw)) + 1,
                               outof=len(board))
    else:
        return redirect('/')
Example #5
0
def processtime():
    leaderBoard = data_utils.get_sorted_leaderboard()
    if request.method == 'GET':
        return render_template('processtime.html',
                               the_title='Top Ten for Word Game',
                               board=leaderBoard)
    elif request.method == 'POST':
        find = (session['timeTook'], session['name'], sesson['sourceword'])
        length = len(leaderBoard)
        message = Markup('<h3>You placed {0} out of {1}</h3>'.format(
            leaderBoard.index(find) + 1, length))
        return render_template('processtime.html',
                               the_title='Top Ten for Word Game',
                               board=leaderBoard,
                               message=message)
Example #6
0
        ]
        if short_words:
            we_have_a_winner = False
            print('These words are too small:', sorted(short_words))
        if word_utils.duplicates(seven_words):
            we_have_a_winner = False
            print('You have duplicates:', sorted(seven_words))
        if word_utils.check_not_sourceword(seven_words, sourceword):
            we_have_a_winner = False
            print('You cannot use the source word:', sourceword)
        if we_have_a_winner:
            how_long = round(end_time - start_time, 2)
            print('You took', how_long, 'seconds.', end=' ')
            user = input("What's your name: ").strip()
            data_utils.add_to_scores(user, how_long)
            board = data_utils.get_sorted_leaderboard()
            print()
            print("Here's the leaderboard. How did you do?")
            print()
            pos = 1
            for timetook, username in board[:10]:
                print(f'{pos:2}: {username} in a time of {timetook} seconds.')
                pos += 1
            print()
            print('Position',
                  board.index((how_long, user)) + 1, 'out of', len(board))
        print()
        ret = input('Are you going to go again? (y/n): ')
        if ret.lower()[0] == 'n':
            break