From 7eff7bcaa6b6f06d59cfc8656cf233cb0fd9dc1a Mon Sep 17 00:00:00 2001
From: Lily Bergonzat <lilybergonzat@gmail.com>
Date: Mon, 26 Feb 2024 22:23:30 +0100
Subject: [PATCH] Fixed show option for case and cases commands

---
 .../src/plugins/ModActions/commands/case/CaseSlashCmd.ts | 2 +-
 .../plugins/ModActions/commands/cases/CasesSlashCmd.ts   | 2 +-
 .../ModActions/functions/actualCommands/actualCaseCmd.ts | 2 +-
 .../functions/actualCommands/actualCasesCmd.ts           | 9 ++++++---
 4 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/backend/src/plugins/ModActions/commands/case/CaseSlashCmd.ts b/backend/src/plugins/ModActions/commands/case/CaseSlashCmd.ts
index 3394c086..8db48612 100644
--- a/backend/src/plugins/ModActions/commands/case/CaseSlashCmd.ts
+++ b/backend/src/plugins/ModActions/commands/case/CaseSlashCmd.ts
@@ -18,7 +18,7 @@ export const CaseSlashCmd = {
   ],
 
   async run({ interaction, options, pluginData }) {
-    await interaction.deferReply({ ephemeral: true });
+    await interaction.deferReply({ ephemeral: options.show !== true });
     actualCaseCmd(pluginData, interaction, interaction.user.id, options["case-number"], options.show);
   },
 };
diff --git a/backend/src/plugins/ModActions/commands/cases/CasesSlashCmd.ts b/backend/src/plugins/ModActions/commands/cases/CasesSlashCmd.ts
index 07a457ff..ff29588d 100644
--- a/backend/src/plugins/ModActions/commands/cases/CasesSlashCmd.ts
+++ b/backend/src/plugins/ModActions/commands/cases/CasesSlashCmd.ts
@@ -30,7 +30,7 @@ export const CasesSlashCmd = {
   signature: [...opts],
 
   async run({ interaction, options, pluginData }) {
-    await interaction.deferReply({ ephemeral: true });
+    await interaction.deferReply({ ephemeral: options.show !== true });
 
     return actualCasesCmd(
       pluginData,
diff --git a/backend/src/plugins/ModActions/functions/actualCommands/actualCaseCmd.ts b/backend/src/plugins/ModActions/functions/actualCommands/actualCaseCmd.ts
index e45dc0e7..92b27199 100644
--- a/backend/src/plugins/ModActions/functions/actualCommands/actualCaseCmd.ts
+++ b/backend/src/plugins/ModActions/functions/actualCommands/actualCaseCmd.ts
@@ -15,7 +15,7 @@ export async function actualCaseCmd(
   const theCase = await pluginData.state.cases.findByCaseNumber(caseNumber);
 
   if (!theCase) {
-    pluginData.getPlugin(CommonPlugin).sendErrorMessage(context, "Case not found");
+    pluginData.getPlugin(CommonPlugin).sendErrorMessage(context, "Case not found", undefined, undefined, show !== true);
     return;
   }
 
diff --git a/backend/src/plugins/ModActions/functions/actualCommands/actualCasesCmd.ts b/backend/src/plugins/ModActions/functions/actualCommands/actualCasesCmd.ts
index 9bb2d580..23c091a1 100644
--- a/backend/src/plugins/ModActions/functions/actualCommands/actualCasesCmd.ts
+++ b/backend/src/plugins/ModActions/functions/actualCommands/actualCasesCmd.ts
@@ -77,7 +77,7 @@ async function casesUserCmd(
   if (cases.length === 0) {
     await sendContextResponse(context, {
       content: `No cases found for **${userName}**${modId ? ` by ${modName}` : ""}.`,
-      ephemeral: true,
+      ephemeral: !show,
     });
 
     return;
@@ -88,7 +88,7 @@ async function casesUserCmd(
   if (!casesToDisplay.length) {
     await sendContextResponse(context, {
       content: `No normal cases found for **${userName}**. Use "-hidden" to show ${cases.length} hidden cases.`,
-      ephemeral: true,
+      ephemeral: !show,
     });
 
     return;
@@ -160,7 +160,10 @@ async function casesModCmd(
   const totalCases = await casesPlugin.getTotalCasesByMod(modId ?? author.id, casesFilters);
 
   if (totalCases === 0) {
-    pluginData.getPlugin(CommonPlugin).sendErrorMessage(context, `No cases by **${modName}**`);
+    pluginData
+      .getPlugin(CommonPlugin)
+      .sendErrorMessage(context, `No cases by **${modName}**`, undefined, undefined, !show);
+
     return;
   }