From ec082b58adfb5876c8302fb5c944695eb27c294d Mon Sep 17 00:00:00 2001 From: cswimr Date: Mon, 19 Aug 2024 17:40:52 -0400 Subject: [PATCH] fix(aurora): make changes_factory support changes properly --- aurora/utilities/factory.py | 35 +++++++++++++++-------------------- 1 file changed, 15 insertions(+), 20 deletions(-) diff --git a/aurora/utilities/factory.py b/aurora/utilities/factory.py index b45b68a..ebb93d8 100644 --- a/aurora/utilities/factory.py +++ b/aurora/utilities/factory.py @@ -5,7 +5,7 @@ from typing import Union from discord import Color, Embed, Guild, Interaction, Member, Message, Role, User from redbot.core import commands from redbot.core.bot import Red -from redbot.core.utils.chat_formatting import bold, box, error, humanize_timedelta, warning +from redbot.core.utils.chat_formatting import bold, box, error, humanize_timedelta, inline, warning from ..models.moderation import Moderation from ..models.partials import PartialUser @@ -261,27 +261,22 @@ async def changes_factory(interaction: Interaction, moderation: Moderation) -> E user: PartialUser = memory_dict[str(change.user_id)] timestamp = f" | " + end_timestamp = f" | " if change.end_timestamp else None - if change.type == "ORIGINAL": - embed.add_field( - name="Original", - value=f"**User:** `{user.name}` ({user.id})\n**Reason:** {change.reason}\n**Timestamp:** {timestamp}", - inline=False, - ) + change_str = [ + f"{bold("User:")} {inline(user.name)} ({user.id})", + f"{bold("Reason:")} {change.reason}" if change.reason else "", + f"{bold('Duration:')} {humanize_timedelta(timedelta=change.duration)}" if change.duration else "", + f"{bold('End Timestamp:')} {end_timestamp}" if end_timestamp else "", + f"{bold("Timestamp:")} {timestamp}", + ] + change_str.remove("") - elif change.type == "EDIT": - embed.add_field( - name="Edit", - value=f"**User:** `{user.name}` ({user.id})\n**Reason:** {change.reason}\n**Timestamp:** {timestamp}", - inline=False, - ) - - elif change.type == "RESOLVE": - embed.add_field( - name="Resolve", - value=f"**User:** `{user.name}` ({user.id})\n**Reason:** {change.reason}\n**Timestamp:** {timestamp}", - inline=False, - ) + embed.add_field( + name=change.type.title(), + value=change_str.join("\n"), + inline=False, + ) else: embed.description = "*No changes have been made to this case.* 🙁"