Skip to content

Commit

Permalink
Add (truncated) preview to snippets command
Browse files Browse the repository at this point in the history
  • Loading branch information
sebkuip committed May 23, 2024
1 parent 768d4da commit 51d8885
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 6 deletions.
11 changes: 5 additions & 6 deletions cogs/modmail.py
Original file line number Diff line number Diff line change
Expand Up @@ -162,13 +162,12 @@ async def snippet(self, ctx, *, name: str.lower = None):
embed.set_author(name="Snippets", icon_url=self.bot.get_guild_icon(guild=ctx.guild, size=128))
return await ctx.send(embed=embed)

embeds = []

for i, names in enumerate(zip_longest(*(iter(sorted(self.bot.snippets)),) * 15)):
description = format_description(i, names)
embed = discord.Embed(color=self.bot.main_color, description=description)
embeds = [discord.Embed(color=self.bot.main_color) for _ in range((len(self.bot.snippets) // 10) + 1)]
for embed in embeds:
embed.set_author(name="Snippets", icon_url=self.bot.get_guild_icon(guild=ctx.guild, size=128))
embeds.append(embed)

for i, snippet in enumerate(sorted(self.bot.snippets.items())):
embeds[i//10].add_field(name=snippet[0], value=return_or_truncate(snippet[1], 350), inline=False)

session = EmbedPaginatorSession(ctx, *embeds)
await session.run()
Expand Down
6 changes: 6 additions & 0 deletions core/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@
"get_top_role",
"get_joint_id",
"extract_block_timestamp",
"return_or_truncate",
"AcceptButton",
"DenyButton",
"ConfirmThreadCreationView",
Expand Down Expand Up @@ -573,6 +574,11 @@ def extract_block_timestamp(reason, id_):
return end_time, after


def return_or_truncate(text, max_length):
if len(text) <= max_length:
return text
return text[: max_length - 3] + "..."

class AcceptButton(discord.ui.Button):
def __init__(self, emoji):
super().__init__(style=discord.ButtonStyle.gray, emoji=emoji)
Expand Down

0 comments on commit 51d8885

Please sign in to comment.