def signups(id): season = Season(id) season.load() form = DivisionForm(request.form) form.user_id.choices = season.get_unasigned_signup_list() if request.method == 'POST' and form.validate_on_submit(): if form.user_id.data: if form.action.data == "assign" and season.add_to_division(form.division.data, form.user_id.data): flash("Division assigned") elif form.action.data == "remove" and season.remove_signups(form.user_id.data): flash("Signups removed") else: flash("Failed") else: flash("No players selected") form.user_id.choices = season.get_unasigned_signup_list() form.season_id.data = id add_user_form = SignupForm() add_user_form.season_id.data = id add_user_form.user_id.choices = season.get_users_for_signup() divisions = get_divisions(season) return render_template("admin/signups.html", season=season, form=form, signups=season.get_signups(), add_user_form=add_user_form)
def matches(id): form = GenerateMatchesForm(request.form) if request.method == 'POST' and form.validate_on_submit(): season = Season(form.season_id.data) maps = form.maps.data interval = form.interval.data start = form.first_default_time.data for division in season.get_division_numbers(): if season.create_matches(division, maps, start, interval): flash("Generated matches for division " + str(division)) else: flash("Failed to generate matches for division " + str(division)) season = Season(id) season.load() form.season_id.data = id divisions = get_divisions(season) return render_template("admin/matches.html", season=season, form=form, matches=season.get_matches())
def map_pool(id): season = Season(id) season.load() form = MapPoolForm(request.form) form.map_id.choices = season.get_maps_not_in_pool() if request.method == 'POST' and form.validate_on_submit(): query = """ INSERT INTO season_maps(season_id, map_id) VALUES(?, ?) """ values = (form.season_id.data, form.map_id.data) cur = g.db.execute(query, values) if cur.rowcount: flash("Map added to the pool") g.db.commit() else: flash("Failed to add map") g.db.rollback() form.season_id.data = id form.map_id.choices = season.get_maps_not_in_pool() return render_template("admin/map_pool.html", form=form, season=season)