def post(self): event_key = self.request.get('event_key') awards_json = self.request.get('awards_json') awards = json.loads(awards_json) event = Event.get_by_id(event_key) def _getTeamKey(award): team = Team.get_by_id('frc' + str(award.get('team_number', None))) if team is not None: return team.key else: return None awards = [Award( id = Award.renderKeyName(event.key_name, award.get('name')), name = award.get('name', None), team = _getTeamKey(award), awardee = award.get('awardee', None), year = event.year, official_name = award.get('official_name', None), event = event.key) for award in awards] AwardManipulator.createOrUpdate(awards) self.redirect('/admin/event/{}'.format(event_key))
def getEventAwards(self, event): def _getTeamKey(award): team = Team.get_by_id('frc' + str(award.get('team_number', None))) if team is not None: return team.key else: return None url = self.EVENT_AWARDS_URL_PATTERN % (event.year, self.EVENT_SHORT_EXCEPTIONS.get(event.event_short, event.event_short)) awards, _ = self.parse(url, UsfirstEventAwardsParser) return [Award( id=Award.renderKeyName(event.key_name, award.get('name')), name=award.get('name', None), team=_getTeamKey(award), awardee=award.get('awardee', None), year=event.year, official_name=award.get('official_name', None), event=event.key) for award in awards]