2020 */
2121package com .mcmoddev .mmdbot .thelistener .events ;
2222
23+ import club .minnced .discord .webhook .send .AllowedMentions ;
2324import com .mcmoddev .mmdbot .core .event .moderation .ScamLinkEvent ;
2425import com .mcmoddev .mmdbot .core .util .Utils ;
2526import com .mcmoddev .mmdbot .core .util .jda .caching .MessageData ;
27+ import com .mcmoddev .mmdbot .core .util .webhook .WebhookManager ;
2628import com .mcmoddev .mmdbot .thelistener .TheListener ;
2729import com .mcmoddev .mmdbot .thelistener .util .LoggingType ;
2830import io .github .matyrobbrt .eventdispatcher .SubscribeEvent ;
2931import net .dv8tion .jda .api .EmbedBuilder ;
3032import net .dv8tion .jda .api .entities .Message ;
31- import net .dv8tion .jda .api .entities .MessageChannel ;
3233import net .dv8tion .jda .api .entities .MessageEmbed ;
34+ import net .dv8tion .jda .api .entities .StandardGuildMessageChannel ;
3335import net .dv8tion .jda .api .hooks .ListenerAdapter ;
3436import org .jetbrains .annotations .NotNull ;
3537
@@ -40,6 +42,9 @@ public final class MessageEvents extends ListenerAdapter {
4042
4143 public static final MessageEvents INSTANCE = new MessageEvents ();
4244
45+ private static final String WEBHOOK_NAME = "MessageLogs" ;
46+ private static final WebhookManager WEBHOOKS = WebhookManager .of (e -> e .trim ().equals (WEBHOOK_NAME ), WEBHOOK_NAME , AllowedMentions .none ());
47+
4348 public static final java .awt .Color GRAY_CHATEAOU = new java .awt .Color (0x979C9F );
4449 public static final java .awt .Color VIVID_VIOLET = new java .awt .Color (0x71368A );
4550
@@ -75,9 +80,14 @@ public void onMessageDelete(final net.dv8tion.jda.api.events.message.MessageDele
7580 }
7681 final var embed = embedBuilder .build ();
7782 loggingChannels .forEach (id -> {
78- final var ch = id .resolve (idL -> event .getJDA ().getChannelById (MessageChannel .class , idL ));
79- if (ch != null )
80- ch .sendMessageEmbeds (embed ).queue ();
83+ final var ch = id .resolve (idL -> event .getJDA ().getChannelById (StandardGuildMessageChannel .class , idL ));
84+ if (ch != null ) {
85+ WEBHOOKS .getWebhook (ch )
86+ .send (Utils .webhookMessage (embed )
87+ .setUsername (data .getAuthorUsername ())
88+ .setAvatarUrl (data .getAuthorAvatar ())
89+ .build ());
90+ }
8191 });
8292 }
8393
@@ -108,9 +118,13 @@ public void onMessageUpdate(final net.dv8tion.jda.api.events.message.MessageUpda
108118 final var embed = embedBuilder .build ();
109119 loggingChannels
110120 .forEach (id -> {
111- final var ch = id .resolve (idL -> event .getJDA ().getChannelById (net . dv8tion . jda . api . entities . MessageChannel .class , idL ));
121+ final var ch = id .resolve (idL -> event .getJDA ().getChannelById (StandardGuildMessageChannel .class , idL ));
112122 if (ch != null ) {
113- ch .sendMessageEmbeds (embed ).queue ();
123+ WEBHOOKS .getWebhook (ch )
124+ .send (Utils .webhookMessage (embed )
125+ .setUsername (data .getAuthorUsername ())
126+ .setAvatarUrl (data .getAuthorAvatar ())
127+ .build ());
114128 }
115129 });
116130 }
0 commit comments