Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def my_ranking(url):
- import challonge
- from connect import my_connect
- err = my_connect(challonge, "LeFrenchMelee")
- from tools import url_parse
- subdomain, name = url_parse(url)
- if subdomain:
- name = subdomain+'-'+name
- import json
- ranking_l = json.dumps({name: ranking_groups(name)}, sort_keys=True, indent=4)
- from html import page, par, form, input, br, link, val, textarea
- ranking_s = textarea(rows="50", cols="100", txt=ranking_l)
- tournaments = challonge.tournaments.index()
- other_links = [t['full-challonge-url'] for t in tournaments]
- other_list = [link(l.split("/")[-1], "./ranking?url="+l) for l in other_links]
- other_l = br().join(other_list)
- my_form = form(input("url"), "Ranking?")
- return page("Ranking", par(val("name", name))+my_form+par(ranking_s)+par(other_l))
- def ranking_groups(name):
- import challonge
- tournament = challonge.tournaments.show(name)
- tid = tournament["id"]
- from operator import itemgetter
- participants = sorted(challonge.participants.index(tid), key=itemgetter("final-rank"))
- from itertools import groupby
- return {k: [p['name'] for p in l] for k, l in groupby(participants, itemgetter("final-rank"))}
- def all_rankings():
- import challonge
- from connect import my_connect
- err = my_connect(challonge, "LeFrenchMelee")
- tournaments = challonge.tournaments.index()
- urls = [t['full-challonge-url'] for t in tournaments]
- from tools import url_parse
- subns = [url_parse(url) for url in urls]
- names = [s+'-'+n if s else n for (s, n) in subns]
- rankings = [ranking_groups(n) for n in names]
- import json
- return json.dumps({i: j for (i, j) in zip(names, rankings)}, sort_keys=True, indent=4)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement