From 47ad8fa4d3329e0009d1a369d40740a7e6ae503e Mon Sep 17 00:00:00 2001
From: Almeida <github@almeidx.dev>
Date: Mon, 8 Jan 2024 11:15:57 +0000
Subject: [PATCH] only call `disableInvites()` if value has changed (#443)

---
 backend/src/plugins/Automod/actions/pauseInvites.ts | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/backend/src/plugins/Automod/actions/pauseInvites.ts b/backend/src/plugins/Automod/actions/pauseInvites.ts
index 1bbea34f..262b6912 100644
--- a/backend/src/plugins/Automod/actions/pauseInvites.ts
+++ b/backend/src/plugins/Automod/actions/pauseInvites.ts
@@ -1,3 +1,4 @@
+import { GuildFeature } from "discord.js";
 import * as t from "io-ts";
 import { automodAction } from "../helpers";
 
@@ -9,6 +10,10 @@ export const PauseInvitesAction = automodAction({
   defaultConfig: {},
 
   async apply({ pluginData, actionConfig }) {
-    await pluginData.guild.disableInvites(actionConfig.paused);
+    const hasInvitesDisabled = pluginData.guild.features.includes(GuildFeature.InvitesDisabled);
+
+    if (actionConfig.paused !== hasInvitesDisabled) {
+      await pluginData.guild.disableInvites(actionConfig.paused);
+    }
   },
 });