def update_event(event_id): year = int(event_id[0:4]) year_config = get_year_config(year) if not os.path.isdir("./data/" + event_id): os.path.mkdir("./data/" + event_id) open("./data/" + event_id + "/event_info.json", "w+").write("") event_info = TBA.get_event_data(event_id) event_teams = TBA.get_event_teams(event_id) team_list = map(lambda x: x["team_number"], event_teams) event_info["team_info"] = event_teams event_info["team_list"] = team_list pickle.dump(event_info, open("./data/" + event_id + "/event_info.json", "w"))
def get_team_list(event): teams = TBA.get_event_teams(event) team_list = [] for team in teams: team_list.append(int(team["team_number"])) return sorted(team_list)
def get_event_ranks(event_id): ranks = TBA.get_event_ranks(event_id) rank_dict = {} for team in ranks[1:]: line = dict(zip(ranks[0], team)) rank_dict[line["Team"].encode('ascii', 'ignore')] = line return rank_dict
def get_events_for_team(team, year): events = TBA.get_team_events(team, year) event_list = [] for event in events: if REQ_OFFICIAL and event["official"] == False: continue event_list.append(event["key"]) return event_list
def gen_data(event_id): team_list = TBA.get_event_teams(event_id) teams = [] for team in team_list: teams.append(team["team_number"]) data = create_data_for_teams(teams) headers = get_year_config(int(event_id[0:4]))["headers"]
def get_schedule(event): matches = TBA.get_event_matches(event) ddict = {} for match in matches: match_num = int(match["match_number"]) ddict[match_num] = {} for alli in ["red", "blue"]: for i in range(1, 4): ddict[match_num][alli + str(i)] = int(match["alliances"][alli]["teams"][i-1][3:]) return matches, ddict
def select_event(year, redir, submit, request, user_level): if request.method == "POST": form = request.form event_id = form["event"] return redirect(redir + event_id + "/") try: events = TBA.get_event_name_key_list(year) except: events = listdir(config.dir + "/data/") for event in events: if events[0] == ".": continue if int(event[0:4]) != int(year): events.remove(event) return render_template('select_event.html', submit = submit, events = events, user_level = get_user_level())
def get_matches(event): match_json = TBA.get_event_matches(event) scores = [] for match in match_json: if IGNORE_ELIMS and match["comp_level"] != "qm": continue if "frc0" in match["alliances"]["red"]["teams"] or "frc0" in match["alliances"]["blue"]["teams"]: continue for alli in ["red", "blue"]: alliance = [ int(match["alliances"][alli]["teams"][0][3:]), int(match["alliances"][alli]["teams"][1][3:]), int(match["alliances"][alli]["teams"][2][3:]), match["alliances"][alli]["score"] ] scores.append(alliance) return scores
def load_matches(event_id): return TBA.get_event_matches(event_id)