diff --git a/src/commands/ban.ts b/src/commands/ban.ts index ad39f03..8d7973b 100644 --- a/src/commands/ban.ts +++ b/src/commands/ban.ts @@ -5,6 +5,9 @@ import PublicEmbed from "../helpers/embeds/PublicEmbed"; import { Command } from "../type/command"; import { ICommandContext } from "../contracts/ICommandContext"; import ICommandReturnContext from "../contracts/ICommandReturnContext"; +import Audit from "../entity/Audit"; +import { AuditType } from "../constants/AuditType"; +import Server from "../entity/Server"; export default class Ban extends Command { constructor() { @@ -75,6 +78,17 @@ export default class Ban extends Command { await logEmbed.SendToModLogsChannel(); await publicEmbed.SendToCurrentChannel(); + if (context.message.guild) { + const server = await Server.FetchOneById(Server, context.message.guild.id); + + if (server) { + const audit = new Audit(targetUser.id, AuditType.Ban, reason, context.message.author.id); + audit.AssignToServer(server); + + await audit.Save(Audit, audit); + } + } + return { commandContext: context, embeds: [logEmbed, publicEmbed], diff --git a/src/commands/kick.ts b/src/commands/kick.ts index 81b1af9..53b8b90 100644 --- a/src/commands/kick.ts +++ b/src/commands/kick.ts @@ -1,6 +1,9 @@ +import { AuditType } from "../constants/AuditType"; import ErrorMessages from "../constants/ErrorMessages"; import { ICommandContext } from "../contracts/ICommandContext"; import ICommandReturnContext from "../contracts/ICommandReturnContext"; +import Audit from "../entity/Audit"; +import Server from "../entity/Server"; import ErrorEmbed from "../helpers/embeds/ErrorEmbed"; import LogEmbed from "../helpers/embeds/LogEmbed"; import PublicEmbed from "../helpers/embeds/PublicEmbed"; @@ -74,6 +77,17 @@ export default class Kick extends Command { await logEmbed.SendToModLogsChannel(); await publicEmbed.SendToCurrentChannel(); + + if (context.message.guild) { + const server = await Server.FetchOneById(Server, context.message.guild.id); + + if (server) { + const audit = new Audit(targetUser.id, AuditType.Kick, reason, context.message.author.id); + audit.AssignToServer(server); + + await audit.Save(Audit, audit); + } + } return { commandContext: context, diff --git a/src/commands/mute.ts b/src/commands/mute.ts index e5d43df..e426e4f 100644 --- a/src/commands/mute.ts +++ b/src/commands/mute.ts @@ -1,6 +1,9 @@ +import { AuditType } from "../constants/AuditType"; import ErrorMessages from "../constants/ErrorMessages"; import { ICommandContext } from "../contracts/ICommandContext"; import ICommandReturnContext from "../contracts/ICommandReturnContext"; +import Audit from "../entity/Audit"; +import Server from "../entity/Server"; import ErrorEmbed from "../helpers/embeds/ErrorEmbed"; import LogEmbed from "../helpers/embeds/LogEmbed"; import PublicEmbed from "../helpers/embeds/PublicEmbed"; @@ -87,6 +90,17 @@ export default class Mute extends Command { await logEmbed.SendToModLogsChannel(); await publicEmbed.SendToCurrentChannel(); + + if (context.message.guild) { + const server = await Server.FetchOneById(Server, context.message.guild.id); + + if (server) { + const audit = new Audit(targetUser.id, AuditType.Mute, reason, context.message.author.id); + audit.AssignToServer(server); + + await audit.Save(Audit, audit); + } + } return { commandContext: context, diff --git a/src/commands/warn.ts b/src/commands/warn.ts index a36e28e..69f1f9f 100644 --- a/src/commands/warn.ts +++ b/src/commands/warn.ts @@ -1,5 +1,8 @@ +import { AuditType } from "../constants/AuditType"; import { ICommandContext } from "../contracts/ICommandContext"; import ICommandReturnContext from "../contracts/ICommandReturnContext"; +import Audit from "../entity/Audit"; +import Server from "../entity/Server"; import ErrorEmbed from "../helpers/embeds/ErrorEmbed"; import LogEmbed from "../helpers/embeds/LogEmbed"; import PublicEmbed from "../helpers/embeds/PublicEmbed"; @@ -62,6 +65,17 @@ export default class Warn extends Command { await logEmbed.SendToModLogsChannel(); await publicEmbed.SendToCurrentChannel(); + + if (context.message.guild) { + const server = await Server.FetchOneById(Server, context.message.guild.id); + + if (server) { + const audit = new Audit(user.id, AuditType.Warn, reason, context.message.author.id); + audit.AssignToServer(server); + + await audit.Save(Audit, audit); + } + } return { commandContext: context,