示例#1
0
    def get(self, event_key):
        event = Event.get_by_id(event_key)
        if not event:
            self.abort(404)

        if not event.remap_teams:
            return

        event.prepAwardsMatchesTeams()

        # Remap matches
        EventHelper.remapteams_matches(event.matches, event.remap_teams)
        MatchManipulator.createOrUpdate(event.matches)

        # Remap alliance selections
        if event.alliance_selections:
            EventHelper.remapteams_alliances(event.alliance_selections, event.remap_teams)
        # Remap rankings
        if event.rankings:
            EventHelper.remapteams_rankings(event.rankings, event.remap_teams)
        if event.details and event.details.rankings2:
            EventHelper.remapteams_rankings2(event.details.rankings2, event.remap_teams)
        EventDetailsManipulator.createOrUpdate(event.details)

        # Remap awards
        EventHelper.remapteams_awards(event.awards, event.remap_teams)
        AwardManipulator.createOrUpdate(event.awards, auto_union=False)
示例#2
0
    def get(self, event_key):
        df = DatafeedFMSAPI('v2.0', save_response=True)

        event = Event.get_by_id(event_key)

        alliance_selections = df.getEventAlliances(event_key)

        if event and event.remap_teams:
            EventHelper.remapteams_alliances(alliance_selections,
                                             event.remap_teams)

        event_details = EventDetails(id=event_key,
                                     alliance_selections=alliance_selections)
        EventDetailsManipulator.createOrUpdate(event_details)

        template_values = {
            'alliance_selections': alliance_selections,
            'event_name': event_details.key.id()
        }

        if 'X-Appengine-Taskname' not in self.request.headers:  # Only write out if not in taskqueue
            path = os.path.join(
                os.path.dirname(__file__),
                '../templates/datafeeds/usfirst_event_alliances_get.html')
            self.response.out.write(template.render(path, template_values))
示例#3
0
    def get(self, event_key):
        event = Event.get_by_id(event_key)
        if not event:
            self.abort(404)

        if not event.remap_teams:
            return

        event.prepAwardsMatchesTeams()

        # Remap matches
        EventHelper.remapteams_matches(event.matches, event.remap_teams)
        MatchManipulator.createOrUpdate(event.matches)

        # Remap alliance selections
        if event.alliance_selections:
            EventHelper.remapteams_alliances(event.alliance_selections, event.remap_teams)
        # Remap rankings
        if event.rankings:
            EventHelper.remapteams_rankings(event.rankings, event.remap_teams)
        if event.details and event.details.rankings2:
            EventHelper.remapteams_rankings2(event.details.rankings2, event.remap_teams)
        EventDetailsManipulator.createOrUpdate(event.details)

        # Remap awards
        EventHelper.remapteams_awards(event.awards, event.remap_teams)
        AwardManipulator.createOrUpdate(event.awards, auto_union=False)
 def test_remap_alliances(self):
     alliances = [
         {
             "declines": [],
             "backup": None,
             "name": "Alliance 1",
             "picks": ["frc9001", "frc649", "frc840"]
         },
         {
             "declines": [],
             "backup": None,
             "name": "Alliance 2",
             "picks": ["frc254", "frc5499", "frc6418"]
         },
         {
             "declines": [],
             "backup": None,
             "name": "Alliance 3",
             "picks": ["frc1868", "frc8", "frc4990"]
         },
         {
             "declines": [],
             "backup": None,
             "name": "Alliance 4",
             "picks": ["frc604", "frc2", "frc7308"]
         },
         {
             "declines": [],
             "backup": None,
             "name": "Alliance 5",
             "picks": ["frc199", "frc5026", "frc192"]
         },
         {
             "declines": [],
             "backup": None,
             "name": "Alliance 6",
             "picks": ["frc4669", "frc2220", "frc766"]
         },
         {
             "declines": [],
             "backup": None,
             "name": "Alliance 7",
             "picks": ["frc7419", "frc7667", "frc751"]
         },
         {
             "declines": [],
             "backup": None,
             "name": "Alliance 8",
             "picks": ["frc2367", "frc2473", "frc6241"]
         },
     ]
     EventHelper.remapteams_alliances(alliances, self.remap_teams)
     self.assertEqual(alliances[0]['picks'], ['frc1B', 'frc649', 'frc840'])
     self.assertEqual(alliances[3]['picks'],
                      ['frc604', 'frc200', 'frc7308'])
    def _process_request(self, request, event_key):
        alliance_selections = JSONAllianceSelectionsParser.parse(request.body)

        event_details = EventDetails(
            id=event_key,
            alliance_selections=alliance_selections
        )

        if self.event.remap_teams:
            EventHelper.remapteams_alliances(event_details.alliance_selections, self.event.remap_teams)
        EventDetailsManipulator.createOrUpdate(event_details)

        self.response.out.write(json.dumps({'Success': "Alliance selections successfully updated"}))
    def get(self, event_key):
        df = DatafeedFMSAPI('v2.0', save_response=True)

        event = Event.get_by_id(event_key)

        alliance_selections = df.getEventAlliances(event_key)

        if event and event.remap_teams:
            EventHelper.remapteams_alliances(alliance_selections, event.remap_teams)

        event_details = EventDetails(
            id=event_key,
            alliance_selections=alliance_selections
        )
        EventDetailsManipulator.createOrUpdate(event_details)

        template_values = {'alliance_selections': alliance_selections,
                           'event_name': event_details.key.id()}

        if 'X-Appengine-Taskname' not in self.request.headers:  # Only write out if not in taskqueue
            path = os.path.join(os.path.dirname(__file__), '../templates/datafeeds/usfirst_event_alliances_get.html')
            self.response.out.write(template.render(path, template_values))