def active_league(): where = 'c.id = ({id_query})'.format(id_query=active_competition_id_query()) leagues = competition.load_competitions(where) if len(leagues) == 0: start_date = dtutil.now(tz=dtutil.WOTC_TZ) end_date = determine_end_of_league(start_date) name = determine_league_name(end_date) comp_id = competition.get_or_insert_competition(start_date, end_date, name, 'League', None) leagues = [competition.load_competition(comp_id)] return guarantee.exactly_one(leagues)
def tournament(comp: Dict[str, Any]) -> None: comp = fetch_tools.fetch_json(comp['url']) dt = dtutil.ts2dt(comp['start_date']) de = dtutil.ts2dt(comp['end_date']) competition_id = competition.get_or_insert_competition( dt, de, comp['name'], comp['series_name'], comp['url'], top.Top(comp['top_n'])) loaded_competition = competition.load_competition(competition_id) if loaded_competition.num_decks < comp['num_decks']: for d in comp['decks']: store_deck(d)
def active_league(should_load_decks: bool = False) -> competition.Competition: where = 'c.id = ({id_query})'.format(id_query=active_competition_id_query()) leagues = competition.load_competitions(where, should_load_decks=should_load_decks) if len(leagues) == 0: start_date = dtutil.now(tz=dtutil.WOTC_TZ) end_date = determine_end_of_league(start_date, seasons.next_rotation()) name = determine_league_name(start_date, end_date) comp_id = competition.get_or_insert_competition(start_date, end_date, name, 'League', None, competition.Top.EIGHT) if not comp_id: raise InvalidDataException(f'No competition id with {start_date}, {end_date}, {name}') leagues = [competition.load_competition(comp_id)] return guarantee.exactly_one(leagues)
def active_league(): where = 'c.id = ({id_query})'.format( id_query=active_competition_id_query()) leagues = competition.load_competitions(where) if len(leagues) == 0: start_date = datetime.datetime.combine( dtutil.now().date(), datetime.time(tzinfo=dtutil.WOTC_TZ)) end_date = determine_end_of_league(start_date) name = "League {MM} {YYYY}".format( MM=calendar.month_name[end_date.month], YYYY=end_date.year) comp_id = competition.get_or_insert_competition( start_date, end_date, name, 'League', None) leagues = [competition.load_competition(comp_id)] return guarantee.exactly_one(leagues)
def competition_api(competition_id): return return_json(comp.load_competition(competition_id))
def competition(competition_id: int) -> str: view = Competition(comp.load_competition(competition_id)) return view.page()
def competition(competition_id): view = Competition(comp.load_competition(competition_id)) return view.page()
def competition_api(competition_id: int) -> Response: return return_json(comp.load_competition(competition_id))
def archetypes_sparkline(competition_id: int) -> str: path = determine_path(str(competition_id) + '-archetypes-sparkline.png') if os.path.exists(path): return path c = competition.load_competition(competition_id) return sparkline(path, list(c.base_archetypes_data().values()))