def _print_qualifying_times(qt_by_event, heading, do_conversion): print('<table><tbody><tr class="' + heading.lower() + '"><th>' + heading + '</th>') for age in range(min_age, max_age + 1): print('<th>' + str(age) + '</th>') print('</tr>') course_code = "S" if is_long_course: course_code = "L" num_events = len(short_course_events) precision = 2 if do_conversion: precision = 1 for event_code in range(num_events): times = qt_by_event[event_code] if times is not None: event = Event.create_from_code(event_code, course_code) print('<tr class="' + event.short_stroke_name().lower() + '"><td>' + event.short_name_without_course() + '</td>') for time in times: converted_time = time if do_conversion: converted_time = event.convert_time(time) print('<td>' + str(RaceTime(converted_time, precision=precision)) + '</td>') print('</tr>') print('</tbody></table>')
def post(self): results = json.loads( self.request.body ) import_meets = results["meets"]; logging.info( "Importing " + str(len(import_meets)) + " meets" ) #utc = datetime.tzinfo for import_meet in import_meets: import_swimmers = import_meet["swimmers"] course_code = import_meet["courseCode"] #start_date = datetime.datetime.strptime(import_meet["startDate"], '%Y-%m-%dT%H:%M:%S.%fZ') start_date = datetime.datetime( *(time.strptime(import_meet["startDate"], '%Y-%m-%dT%H:%M:%S.%fZ')[0:6]),tzinfo=tzutc() ) logging.info( "Meet start date: " + start_date.strftime("%d/%m/%Y") ) meet_name = import_meet["name"] for import_swimmer in import_swimmers: name = import_swimmer["name"] if "asaNumber" in import_swimmer: asa_number = import_swimmer["asaNumber"] swimmer = Swimmer.get( "Winsford", asa_number ) if swimmer is None: logging.error( "Unable to find swimmer: " + name + "ASAA Number: " + str(asa_number) ) else: import_swims = import_swimmer["swims"] for import_swim in import_swims: event = Event.create_from_code( import_swim["eventCode"], course_code ) swim = UnofficialSwim.create( swimmer, event, start_date, meet_name, import_swim["raceTime"] ) if swim is None: logging.error( "Failed to create swim" ) else: swim.put() else: logging.error( "No ASA number for swimmer: " + name )
def post(self): results = json.loads(self.request.body) import_meets = results["meets"] logging.info("Importing " + str(len(import_meets)) + " meets") #utc = datetime.tzinfo for import_meet in import_meets: import_swimmers = import_meet["swimmers"] course_code = import_meet["courseCode"] #start_date = datetime.datetime.strptime(import_meet["startDate"], '%Y-%m-%dT%H:%M:%S.%fZ') start_date = datetime.datetime(*(time.strptime( import_meet["startDate"], '%Y-%m-%dT%H:%M:%S.%fZ')[0:6]), tzinfo=tzutc()) logging.info("Meet start date: " + start_date.strftime("%d/%m/%Y")) meet_name = import_meet["name"] for import_swimmer in import_swimmers: name = import_swimmer["name"] if "asaNumber" in import_swimmer: asa_number = import_swimmer["asaNumber"] swimmer = Swimmer.get("Winsford", asa_number) if swimmer is None: logging.error("Unable to find swimmer: " + name + "ASAA Number: " + str(asa_number)) else: import_swims = import_swimmer["swims"] for import_swim in import_swims: event = Event.create_from_code( import_swim["eventCode"], course_code) swim = UnofficialSwim.create( swimmer, event, start_date, meet_name, import_swim["raceTime"]) if swim is None: logging.error("Failed to create swim") else: swim.put() else: logging.error("No ASA number for swimmer: " + name)