def scoreboard(): result = sorted(mdl.score_totals(), key=attrgetter('score_sum'), reverse=True) if not result: return gettext('No scores available yet!') # Remove cancelled groups & handle tied positions. output = [] pos = 0 last_score = 0 num_tied = 0 for row in result: group = mdl.Group.one(id=row.group_id) if group.cancelled: continue if row.score_sum == last_score: num_tied += 1 else: pos += 1 + num_tied num_tied = 0 output.append(ScoreBoardRow( pos, group.name, row.score_sum, row.ppm, group.completed)) last_score = row.score_sum return render_template('scoreboard.html', scores=output)
def scoreboard(): result = sorted(score_totals(), key=attrgetter('score_sum'), reverse=True) output = [] pos = 1 for row in result: group = get_grps_by_id(row.group_id) output.append([pos, group.name, row.score_sum]) pos+=1 return render_template('scoreboard.html', scores=output)
def settings(): result = sorted(mdl.score_totals(), key=attrgetter('score_sum'), reverse=True) groups = [mdl.Group.one(id=row.group_id) for row in result] settings = {stng.key: stng.value for stng in mdl.Setting.all(mdl.DB.session)} return render_template('settings.html', settings=settings, groups=groups, first_place=settings.get('first_place', 0), second_place=settings.get('second_place', 0), third_place=settings.get('third_place', 0), )