def add_maps(self, user): if self.mappick_team1.choices is None: self.mappick_team1.choices = [] mapchoices = config_setting('MAPLIST') if self.mappick_team2.choices is None: self.mappick_team2.choices = [] self.mappick_team1.choices = map(lambda name: ( name, util.format_mapname( name)), mapchoices) self.mappick_team2.choices = map(lambda name: ( name, util.format_mapname( name)), mapchoices) self.mappick_bo3.choices = map(lambda name: ( name, util.format_mapname( name)), mapchoices)
class MatchForm(Form): server_id = SelectField('Server', coerce=int, validators=[validators.required()]) match_title = StringField('Match title text', default='Map {MAPNUMBER} of {MAXMAPS}', validators=[validators.Length(min=-1, max=Match.title.type.length)]) series_type = RadioField('Series type', validators=[validators.required()], default='bo1', choices=[ ('bo1-preset', 'Bo1 with preset map'), ('bo1', 'Bo1 with map vetoes'), ('bo2', 'Bo2 with map vetoes'), ('bo3', 'Bo3 with map vetoes'), ('bo5', 'Bo5 with map vetoes'), ('bo7', 'Bo7 with map vetoes'), ]) side_type = RadioField('Side type', validators=[validators.required()], default='standard', choices=[ ('standard', 'Standard: Team that doesn\'t pick map gets side choice'), ('never_knife', 'Never Knife: Team 1 is CT and Team 2 is T.'), ('always_knife', 'Always Knife: Always have knife round.'), ]) team1_id = SelectField('Team 1', coerce=int, validators=[validators.required()]) team1_string = StringField('Team 1 title text', default='', validators=[validators.Length(min=-1, max=Match.team1_string.type.length)]) team2_id = SelectField('Team 2', coerce=int, validators=[validators.required(), different_teams_validator]) team2_string = StringField('Team 2 title text', default='', validators=[validators.Length(min=-1, max=Match.team2_string.type.length)]) mapchoices = config_setting('MAPLIST') default_mapchoices = config_setting('DEFAULT_MAPLIST') veto_mappool = MultiCheckboxField('Map pool', choices=map(lambda name: ( name, util.format_mapname( name)), mapchoices), default=default_mapchoices, validators=[mappool_validator], ) veto_first = RadioField('Veto', default='CT', choices=[ ('CT', 'CT gets first veto'), ('T', 'T get first veto'), ]) season_selection = SelectField('Season', coerce=int, validators=[validators.optional()]) enforce_teams = BooleanField('Enforce Teams', default=True) def add_teams(self, user): if self.team1_id.choices is None: self.team1_id.choices = [] if self.team2_id.choices is None: self.team2_id.choices = [] team_ids = [team.id for team in user.teams] for team in Team.query.filter_by(public_team=True): if team.id not in team_ids: team_ids.append(team.id) team_tuples = [] for teamid in team_ids: team_tuples.append((teamid, Team.query.get(teamid).name)) self.team1_id.choices += team_tuples self.team2_id.choices += team_tuples def add_servers(self, user): if self.server_id.choices is None: self.server_id.choices = [] server_ids = [] for s in user.servers: if not s.in_use: server_ids.append(s.id) for s in GameServer.query.filter_by(public_server=True): if not s.in_use and s.id not in server_ids: server_ids.append(s.id) server_tuples = [] for server_id in server_ids: server_tuples.append( (server_id, GameServer.query.get(server_id).get_display())) self.server_id.choices += server_tuples def add_seasons(self): if self.season_selection.choices is None: self.season_selection.choices = [] season_tuples = [] season_tuples.append((0, 'No Season')) for seasons in Season.query.filter(Season.end_date >= datetime.now()).order_by(-Season.id): season_tuples.append((seasons.id, seasons.name)) self.season_selection.choices += season_tuples
def test_format_mapname(self): self.assertEqual(util.format_mapname('de_inferno'), 'Inferno') self.assertEqual(util.format_mapname('de_test'), 'Test') self.assertEqual(util.format_mapname('de_dust2'), 'Dust II') self.assertEqual(util.format_mapname('de_cbble'), 'Cobblestone')
class MatchForm(Form): server_id = SelectField('Server', coerce=int, validators=[validators.required()]) match_title = StringField('Match title text', default='Map {MAPNUMBER} of {MAXMAPS}', validators=[validators.Length(min=-1, max=Match.title.type.length)]) series_type = RadioField('Series type', validators=[validators.required()], default='bo1', choices=[ ('bo1-preset', 'Bo1 with preset map'), ('bo1', 'Bo1 with map vetoes'), ('bo2', 'Bo2 with map vetoes'), ('bo3', 'Bo3 with map vetoes'), ('bo5', 'Bo5 with map vetoes'), ('bo7', 'Bo7 with map vetoes'), ]) team1_id = SelectField('Team 1', coerce=int, validators=[validators.required()]) team1_string = StringField('Team 1 title text', default='', validators=[validators.Length(min=-1, max=Match.team1_string.type.length)]) team2_id = SelectField('Team 2', coerce=int, validators=[validators.required(), different_teams_validator]) team2_string = StringField('Team 2 title text', default='', validators=[validators.Length(min=-1, max=Match.team2_string.type.length)]) mapchoices = config_setting('MAPLIST') default_mapchoices = config_setting('DEFAULT_MAPLIST') veto_mappool = MultiCheckboxField('Map pool', choices=map(lambda name: ( name, util.format_mapname(name)), mapchoices), default=default_mapchoices, validators=[mappool_validator], ) def add_teams(self, user): if self.team1_id.choices is None: self.team1_id.choices = [] if self.team2_id.choices is None: self.team2_id.choices = [] team_ids = [team.id for team in user.teams] for team in Team.query.filter_by(public_team=True): if team.id not in team_ids: team_ids.append(team.id) team_tuples = [] for teamid in team_ids: team_tuples.append((teamid, Team.query.get(teamid).name)) self.team1_id.choices += team_tuples self.team2_id.choices += team_tuples def add_servers(self, user): if self.server_id.choices is None: self.server_id.choices = [] server_ids = [] for s in user.servers: if not s.in_use: server_ids.append(s.id) for s in GameServer.query.filter_by(public_server=True): if not s.in_use and s.id not in server_ids: server_ids.append(s.id) server_tuples = [] for server_id in server_ids: server_tuples.append((server_id, GameServer.query.get(server_id).get_display())) self.server_id.choices += server_tuples
class MatchForm(Form): server_id = SelectField('Server', coerce=int, validators=[validators.required()]) match_title = StringField('Match title text', default='Map {MAPNUMBER} of {MAXMAPS}', validators=[validators.Length(min=-1, max=Match.title.type.length)]) series_type = RadioField('Series type', validators=[validators.required()], default='bo2', choices=[ ('bo1-preset', 'Bo1 with preset map - (Knife preset, ignore sidepick of teams)'), ('bo2', 'Bo2 with preset maps - (Sidepick A & B)'), ('bo3', 'Bo3 with preset maps - (Sidepick A & B + Knife)'), ]) sidepick_team1 = RadioField('Sidepick Team A for Map 2 (BO2/BO3)', validators=[validators.required()], default='team1_ct', choices =[ ('team1_ct', 'CT'), ('team1_t', 'T'), ]) sidepick_team2 = RadioField('Sidepick Team B for Map 1 (BO2/BO3)', validators=[validators.required()], default='team2_ct', choices =[ ('team2_ct', 'CT'), ('team2_t', 'T'), ]) team1_id = SelectField('Team A', coerce=int, validators=[validators.required()]) team1_string = StringField('Team A title text', default='', validators=[validators.Length(min=-1, max=Match.team1_string.type.length)]) mappick_team1 = SelectField('Mappick Team A') team2_id = SelectField('Team B', coerce=int, validators=[validators.required(), different_teams_validator]) team2_string = StringField('Team B title text', default='', validators=[validators.Length(min=-1, max=Match.team2_string.type.length)]) mappick_team2 = SelectField('Mappick Team B', default='') mappick_bo3 = SelectField('Mappick Last Map BO3', default='') mapchoices = config_setting('MAPLIST') default_mapchoices = config_setting('DEFAULT_MAPLIST') veto_mappool = MultiCheckboxField('Map pool', choices=map(lambda name: ( name, util.format_mapname( name)), mapchoices), default=default_mapchoices, ) def add_teams(self, user): if self.team1_id.choices is None: self.team1_id.choices = [] if self.team2_id.choices is None: self.team2_id.choices = [] team_ids = [team.id for team in user.teams] for team in Team.query.filter_by(public_team=True): if team.id not in team_ids: team_ids.append(team.id) team_tuples = [] for teamid in team_ids: team_tuples.append((teamid, Team.query.get(teamid).name)) team_tuples.sort(key=lambda tup: tup[1]) self.team1_id.choices += team_tuples self.team2_id.choices += team_tuples def add_servers(self, user): if self.server_id.choices is None: self.server_id.choices = [] server_ids = [] for s in user.servers: if not s.in_use: server_ids.append(s.id) for s in GameServer.query.filter_by(public_server=True): if not s.in_use and s.id not in server_ids: server_ids.append(s.id) server_tuples = [] for server_id in server_ids: server_tuples.append( (server_id, GameServer.query.get(server_id).get_display())) self.server_id.choices += server_tuples def add_maps(self, user): if self.mappick_team1.choices is None: self.mappick_team1.choices = [] mapchoices = config_setting('MAPLIST') if self.mappick_team2.choices is None: self.mappick_team2.choices = [] self.mappick_team1.choices = map(lambda name: ( name, util.format_mapname( name)), mapchoices) self.mappick_team2.choices = map(lambda name: ( name, util.format_mapname( name)), mapchoices) self.mappick_bo3.choices = map(lambda name: ( name, util.format_mapname( name)), mapchoices)