Esempio n. 1
0
def makePlayersSheet(book, tournamentID, tournamentName, sheet=None):
    if sheet is None:
        sheet = book.create_sheet()
    sheet.title = 'Players'
    players = tournament.getPlayers(tournamentID)
    header_row = 3
    first_column = 1
    row = header_row
    columns = Player_Columns
    merge_cells(sheet,
                header_row - 2,
                first_column,
                1,
                len(columns),
                font=title_font,
                border=thin_outline,
                value='{} Players'.format(tournamentName))
    sheet.row_dimensions[header_row - 2].height = title_font.size * 3 // 2
    for i, column in enumerate(columns):
        cell = sheet.cell(row, first_column + i, value=column)
        cell.font = column_header_font
        cell.alignment = top_center_align
    for player in players:
        row += 1
        for i, f in enumerate(columns):
            cell = sheet.cell(row=row,
                              column=first_column + i,
                              value=tournamentName
                              if f == 'Tournament' else player[f.lower()])
    for col in range(first_column, first_column + len(columns)):
        resizeColumn(sheet, col, min_row=header_row)
    return sheet
    def load_players_from_db(self):
        """
        This will load the players from the database and setup
        the first pairing. After this it will get them
        from the database
        :return:
        """

        del self.swisspairing[:]

        players = tournament.getPlayers(self.database, self.cursor)

        count = 0
        pairing = 0
        odd_player = None
        if self.numplayers % 2 != 0:
            odd_index = randint(0, len(players)-1)
            odd_player = players[odd_index]
            del players[odd_index]
        for player in players:
            if len(player) == 2:
                count += 1
                self.players[player[0]] = player[1]
                if count % 2 != 0:
                    pairinglist = []
                    pairinglist.append(player[0])
                    pairinglist.append(player[1])
                    self.swisspairing.append(pairinglist)
                else:
                    pairinglist = self.swisspairing[pairing]
                    pairinglist.append(player[0])
                    pairinglist.append(player[1])
                    pairing += 1
        if odd_player:
            pairinglist = []
            pairinglist.append(odd_player[0])
            pairinglist.append(odd_player[1])
            pairinglist.append(-1)
            pairinglist.append("Loser")
            self.swisspairing.append(pairinglist)
def display_players():
    '''
    display_players(): Display players for the currently selected Tournament.

    Argument: None

    Return: None
    '''
    header = tour.TournamentHeader()
    tid = header.tid
    if tid < 100:
        # TODO fix the raise statement
        raise "TID_Error - tid must be set to 100 or greater"
    players = tour.getPlayers(tid)

    print '''{:^45}'''.format('PLAYERS')
    print '''{:^5} {:^5} {:^35}'''.format('TID','PID','NAME')
    print '-'*45
    for (tid,pid,name) in players:
        print '''{0:^5d} {1:^5d} {2:<35}'''.format(tid, pid, name)
    queryEnter()
    return
def display_players():
    '''
    display_players(): Display players for the currently selected Tournament.

    Argument: None

    Return: None
    '''
    header = tour.TournamentHeader()
    tid = header.tid
    if tid < 100:
        # TODO fix the raise statement
        raise "TID_Error - tid must be set to 100 or greater"
    players = tour.getPlayers(tid)

    print '''{:^45}'''.format('PLAYERS')
    print '''{:^5} {:^5} {:^35}'''.format('TID', 'PID', 'NAME')
    print '-' * 45
    for (tid, pid, name) in players:
        print '''{0:^5d} {1:^5d} {2:<35}'''.format(tid, pid, name)
    queryEnter()
    return