示例#1
0
    def _get_matches(self, week):
        wks = self._get_wks(week)
        if wks:
            matches = []
            racer_1_headcell = wks.find("Racer 1")
            racer_1_footcell = wks.find("--------")

            ul_addr = wks.get_addr_int(racer_1_headcell.row + 1,
                                       racer_1_headcell.col - 1)
            lr_addr = wks.get_addr_int(racer_1_footcell.row - 1,
                                       racer_1_footcell.col + 1)
            racers = wks.range('{0}:{1}'.format(ul_addr, lr_addr))

            for cell in grouper(racers, 3, None):
                racer_1 = self._db.get_from_twitch_name(
                    cell[1].value.rstrip(' '), register=True)
                racer_2 = self._db.get_from_twitch_name(
                    cell[2].value.rstrip(' '), register=True)
                if racer_1 and racer_2:
                    new_match = CondorMatch(racer_1, racer_2, week)
                    self._set_best_of_info(new_match,
                                           cell[0].value.rstrip(' '))
                    matches.append(new_match)

            return matches
        else:
            print('Couldn\'t find worksheet for week {}.'.week)
示例#2
0
 def get_open_match_channel_info(self, week):
     for row in self._db_conn.execute(
             "SELECT channel_id,racer_1_id,racer_2_id,week_number FROM channel_data"
     ):
         if int(row[3]) != week:
             racer_1 = self._get_racer_from_id(row[1])
             racer_2 = self._get_racer_from_id(row[2])
             match = CondorMatch(racer_1, racer_2, row[3])
             return (int(row[0]), match)
     return None
示例#3
0
 def _get_match(self, racer_1, racer_2, week_number):
     params = (self._get_racer_id(racer_1), self._get_racer_id(racer_2),
               week_number)
     for row in self._db_conn.execute(
             "SELECT timestamp,flags,number_of_races FROM match_data WHERE racer_1_id=? AND racer_2_id=? AND week_number=?",
             params):
         match = CondorMatch(racer_1, racer_2, week_number)
         if row[0]:
             match.set_from_timestamp(int(row[0]))
         match.flags = int(row[1])
         match.set_number_of_races(int(row[2]))
         return match
     return None
示例#4
0
 def _get_match(self, racer_1, racer_2, week_number):
     params = (self._get_racer_id(racer_1), self._get_racer_id(racer_2), week_number)
     for row in self._db_conn.execute("SELECT timestamp,flags,number_of_races FROM match_data WHERE racer_1_id=? AND racer_2_id=? AND week_number=?", params):
         match = CondorMatch(racer_1, racer_2, week_number)
         if row[0]:
             match.set_from_timestamp(int(row[0]))
         match.flags = int(row[1])
         match.set_number_of_races(int(row[2]))
         return match
     return None
示例#5
0
 def get_upcoming_matches(self, time):
     matches = []
     for row in self._db_conn.execute(
             "SELECT racer_1_id,racer_2_id,week_number,timestamp,flags,number_of_races FROM match_data ORDER BY timestamp ASC"
     ):
         racer_1 = self._get_racer_from_id(row[0])
         racer_2 = self._get_racer_from_id(row[1])
         week = int(row[2])
         match = CondorMatch(racer_1, racer_2, week)
         match.flags = int(row[4])
         match.set_number_of_races(int(row[5]))
         if match.confirmed and not match.played:
             match.set_from_timestamp(int(row[3]))
             if match.time - time > datetime.timedelta(minutes=-30):
                 matches.append(match)
     return matches
示例#6
0
 def get_upcoming_matches(self, time):
     matches = []
     for row in self._db_conn.execute("SELECT racer_1_id,racer_2_id,week_number,timestamp,flags,number_of_races FROM match_data ORDER BY timestamp ASC"):
         racer_1 = self._get_racer_from_id(row[0])
         racer_2 = self._get_racer_from_id(row[1])
         week = int(row[2])
         match = CondorMatch(racer_1, racer_2, week)
         match.flags = int(row[4])
         match.set_number_of_races(int(row[5]))
         if match.confirmed and not match.played:
             match.set_from_timestamp(int(row[3]))
             if match.time - time > datetime.timedelta(minutes=-30):
                 matches.append(match)
     return matches