blob: d0408ac0f702b09b6aecc4137abd338f2c103a37 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
#!/usr/bin/env python3
import json
from os import environ
import sys
import os
import poll
f = 'suggestions.json'
title=" ".join(sys.argv[1:])
db = poll.load_db(f)
# only print the last N values (default 1)
limit = int(sys.argv[1]) if len(sys.argv) > 1 else 1
num = 0
last_vote = 9001
# stolen from http://stackoverflow.com/questions/9647202/ordinal-numbers-replacement
suffixes = ["th", "st", "nd", "rd", ] + ["th"] * 16
for entry in poll.sort_by_votes(db):
# if two entries have the same number of upvotes, do not increment the rank
current_vote = sum(entry['votes'].values())
if current_vote < last_vote:
num = num + 1
last_vote = current_vote
# exit if we are above the limit
if num > limit:
sys.exit(0)
suffixed_num = str(num) + suffixes[num % 100]
print("%s: '%s' (%d votes)" %
(suffixed_num,entry['title'],sum(entry['votes'].values())))
|