Example #1
0
async def MessagesTable(message):

    r_command = message.content.split()
    page = 0
    ##Checks if the user specifies a page
    try:
        page = int(r_command[2])
    except IndexError:
        pass

        if (page) < 0:
            await ("Não há registros do futuro")
            return

    data = GetLastMessages(message.guild.id, start=page * 10)

    if (len(data) == 0):
        await message.channel.send("Dados insuficientes")
        return

    table = utils.genTableString(data, ["Data", "Mensagens"])

    embed = utils.genEmbed(
        "Tabela de mensagens",
        table,
        descp="Quantidade de mensagens \nenviadas por dia no servidor")
    await message.channel.send(embed=embed, content=None)
Example #2
0
def GenTableRank(r_data: list, guild, client):
    """Preparates the data to generate a Rank Table,then call the generic generator """

    #Formats the raw data in order to send to the generic table generator
    data = []

    for i, user in enumerate(r_data):

        #Gets the name in of three cases:User in guild with nick;without nick;without guild
        try:
            member = (guild.get_member(user[0]))
            if member != None:
                name = member.nick
                if name == None:
                    name = client.get_user(user[0]).name
            else:
                name = client.get_user(user[0]).name

            if (len(name) > 22):
                name = name[:21] + "."

            messages = user[1]

            name = utils.replaceImmoralChars(name)
            data.append([f"{i+1}-{name}", messages])
        except:
            exp = sys.exc_info()
            print(exp)
            print(f"Error with user {user[0]}")

    return utils.genTableString(data, ["Membro", "Pontos"], width=35)
Example #3
0
async def AntiRecord(message):
    """Gets the days with the smallest amount of messages"""

    data = db.custom_retrieve(
        f"SELECT date,num FROM Messages WHERE server = {message.guild.id} ORDER BY num LIMIT 20 "
    )

    table = utils.genTableString(data, ["Data", "Mensagens"])
    embed = utils.genEmbed(
        "Tabela de Anti-Recordes",
        table,
        descp="Dias com os menores números \nde mensagens enviadas ")

    await message.channel.send(embed=embed, content=None)