From 11c8bae8e032217dd0c9e272e7f9c1d7aff2403f Mon Sep 17 00:00:00 2001 From: "Nyeki.py" <84998222+Nekidev@users.noreply.github.com> Date: Thu, 24 Oct 2024 01:58:52 -0300 Subject: [PATCH] fix(bot): :bug: Cat masks blocking messages from being sent and crashing `p.mask`. --- payphone/db/models.py | 44 +++++++++++++++++++++++++++++++++++++------ 1 file changed, 38 insertions(+), 6 deletions(-) diff --git a/payphone/db/models.py b/payphone/db/models.py index 950ba9a..399b326 100644 --- a/payphone/db/models.py +++ b/payphone/db/models.py @@ -162,7 +162,13 @@ class CallUserChannelRelationship(models.Model): str: The mask's name. """ - return constants.Mask(self.mask).name.replace("_", " ").lower().title() + try: + mask = constants.Mask(self.mask) + + except ValueError: + mask = constants.CatMask(self.mask) + + return mask.name.replace("_", " ").lower().title() @property def display_name(self) -> str: @@ -186,7 +192,12 @@ class CallUserChannelRelationship(models.Model): """ if self.is_masked: - mask = constants.Mask(self.mask) + try: + mask = constants.Mask(self.mask) + + except ValueError: + mask = constants.CatMask(self.mask) + return f"https://payphone.nyeki.dev/assets/masks/{mask.name.lower().replace("_", "-")}.png" return self.profile.avatar_url @@ -199,7 +210,12 @@ class CallUserChannelRelationship(models.Model): str: The mask's emoji (<:name:id>). """ - mask = constants.Mask(self.mask) + try: + mask = constants.Mask(self.mask) + + except ValueError: + mask = constants.CatMask(self.mask) + mask_name = mask.name.lower().replace("_", "") return f"<:{mask_name}:{self.mask}>" @@ -251,7 +267,13 @@ class Message(models.Model): str: The mask's name. """ - return constants.Mask(self.mask).name.replace("_", " ").lower().title() + try: + mask = constants.Mask(self.mask) + + except ValueError: + mask = constants.CatMask(self.mask) + + return mask.name.replace("_", " ").lower().title() @property def display_name(self) -> str: @@ -275,7 +297,12 @@ class Message(models.Model): """ if self.mask is not None: - mask = constants.Mask(self.mask) + try: + mask = constants.Mask(self.mask) + + except ValueError: + mask = constants.CatMask(self.mask) + return f"https://payphone.nyeki.dev/assets/masks/{mask.name.lower().replace("_", "-")}.png" return self.profile.avatar_url @@ -288,7 +315,12 @@ class Message(models.Model): str: The mask's emoji (<:name:id>). """ - mask = constants.Mask(self.mask) + try: + mask = constants.Mask(self.mask) + + except ValueError: + mask = constants.CatMask(self.mask) + mask_name = mask.name.lower().replace("_", "") return f"<:{mask_name}:{self.mask}>"