Пример #1
0
    async def send_check_in_list(self, dest: discord.Channel,
                                 check_ins: Pagination,
                                 member: discord.Member):

        es = EmbedSplitter(auto_truncate=True,
                           title="Check-in list",
                           description=member.mention,
                           colour=self.EMBED_COLOR)
        es.set_footer(text="Page {:d}/{:d}".format(check_ins.page +
                                                   1, check_ins.total_pages))

        for check_in in check_ins:  # type: model.CheckIn
            f_name = format_datetime(check_in.timestamp)
            f_message = '{}\n*{:d} {}* – {}\n\\_\\_\\_'.format(
                member.mention, check_in.word_count,
                self.PROJECT_UNIT_MAP[check_in.project_type], check_in.message)
            es.add_field(name=f_name, value=f_message, inline=False)

        for em in es.finalize():
            await self.bot.send_message(dest, embed=em)
Пример #2
0
    async def show_badges(self, dest: discord.Channel, badges: Pagination,
                          member: discord.Member):
        es = EmbedSplitter(auto_truncate=True,
                           title="Badges",
                           description="{} - {:d} badges".format(
                               member.mention, len(badges)),
                           colour=self.EMBED_COLOUR)
        es.set_footer(text="Page {:d}/{:d} (total {:d} badges)".format(
            badges.page + 1, badges.total_pages, len(badges)))
        for b in badges:  # type: model.Badge
            es.add_field_no_break(name=format_datetime(b.timestamp),
                                  value=self._get_badge(b.badge))
            es.add_field_no_break(name="From",
                                  value=user_mention(b.from_user.discord_id))
            es.add_field(name="For",
                         value=b.reason + '\n' + r'\_' * 16,
                         inline=False)

        for em in es.finalize():
            await self.bot.send_message(dest, embed=em)
Пример #3
0
    async def embedsplitter(self, ctx):
        es = EmbedSplitter(auto_truncate=True,
                           title="asdfjkl ",
                           description="short and stout ")
        es.set_author(name='ABCMan1 ', url='https://google.com')

        for i in range(10):
            es.add_field_no_break(name=str(i) + " A", value="A")
            es.add_field_no_break(name=str(i) + " B", value="B")
            es.add_field(name=str(i) + " C", value="CCCC", inline=False)

        for i in range(10):
            es.add_field_no_break(name=str(i) + " A", value="A")
            es.add_field_no_break(name=str(i) + " B", value="B")
            es.add_field(name=str(i) + " C",
                         value="CCC " * 256 + 'DDD ' * 32,
                         inline=False)

        embeds = es.finalize()
        self.bot.say(str(len(embeds)))
        for em in embeds:
            await self.bot.say(embed=em)