Skip to content

Commit 0950c61

Browse files
authored
feat: replace discord.yml with webhooks.yml (#1033)
1 parent e0fa581 commit 0950c61

38 files changed

Lines changed: 1179 additions & 1022 deletions

File tree

bukkit/src/main/java/me/confuser/banmanager/bukkit/BMBukkitPlugin.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ public class BMBukkitPlugin extends JavaPlugin {
3535
private String[] configs = new String[]{
3636
"config.yml",
3737
"console.yml",
38-
"discord.yml",
38+
"webhooks.yml",
3939
"exemptions.yml",
4040
"geoip.yml",
4141
"messages.yml",
@@ -145,8 +145,8 @@ public void setupListeners() {
145145
registerEvent(new ReportListener(plugin));
146146
}
147147

148-
if (plugin.getDiscordConfig().isHooksEnabled()) {
149-
registerEvent(new DiscordListener(plugin));
148+
if (plugin.getWebhookConfig().isHooksEnabled()) {
149+
registerEvent(new WebhookListener(plugin));
150150
}
151151

152152
if(Bukkit.getPluginManager().getPlugin("PlaceholderAPI") != null) {

bukkit/src/main/java/me/confuser/banmanager/bukkit/listeners/DiscordListener.java

Lines changed: 0 additions & 100 deletions
This file was deleted.
Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
package me.confuser.banmanager.bukkit.listeners;
2+
3+
import me.confuser.banmanager.bukkit.api.events.*;
4+
import me.confuser.banmanager.common.BanManagerPlugin;
5+
import me.confuser.banmanager.common.listeners.CommonWebhookListener;
6+
import me.confuser.banmanager.common.listeners.CommonWebhookListener.WebhookData;
7+
import org.bukkit.event.EventHandler;
8+
import org.bukkit.event.EventPriority;
9+
import org.bukkit.event.Listener;
10+
11+
import java.util.List;
12+
13+
public class WebhookListener implements Listener {
14+
private CommonWebhookListener listener;
15+
16+
public WebhookListener(BanManagerPlugin plugin) {
17+
this.listener = new CommonWebhookListener(plugin);
18+
}
19+
20+
@EventHandler(priority = EventPriority.MONITOR)
21+
public void notifyOnBan(PlayerBannedEvent event) {
22+
List<WebhookData> webhooks = listener.notifyOnBan(event.getBan());
23+
sendAll(webhooks, event.isSilent());
24+
}
25+
26+
@EventHandler(priority = EventPriority.MONITOR)
27+
public void notifyOnMute(PlayerMutedEvent event) {
28+
List<WebhookData> webhooks = listener.notifyOnMute(event.getMute());
29+
sendAll(webhooks, event.isSilent());
30+
}
31+
32+
@EventHandler(priority = EventPriority.MONITOR)
33+
public void notifyOnBan(IpBannedEvent event) {
34+
List<WebhookData> webhooks = listener.notifyOnBan(event.getBan());
35+
sendAll(webhooks, event.isSilent());
36+
}
37+
38+
@EventHandler(priority = EventPriority.MONITOR)
39+
public void notifyOnKick(PlayerKickedEvent event) {
40+
List<WebhookData> webhooks = listener.notifyOnKick(event.getKick());
41+
sendAll(webhooks, event.isSilent());
42+
}
43+
44+
@EventHandler(priority = EventPriority.MONITOR)
45+
public void notifyOnWarn(PlayerWarnedEvent event) {
46+
List<WebhookData> webhooks = listener.notifyOnWarn(event.getWarning());
47+
sendAll(webhooks, event.isSilent());
48+
}
49+
50+
@EventHandler(priority = EventPriority.MONITOR)
51+
public void notifyOnUnban(PlayerUnbanEvent event) {
52+
List<WebhookData> webhooks = listener.notifyOnUnban(event.getBan(), event.getActor(), event.getReason());
53+
sendAll(webhooks, false);
54+
}
55+
56+
@EventHandler(priority = EventPriority.MONITOR)
57+
public void notifyOnUnban(IpUnbanEvent event) {
58+
List<WebhookData> webhooks = listener.notifyOnUnban(event.getBan(), event.getActor(), event.getReason());
59+
sendAll(webhooks, false);
60+
}
61+
62+
@EventHandler(priority = EventPriority.MONITOR)
63+
public void notifyOnUnmute(PlayerUnmuteEvent event) {
64+
List<WebhookData> webhooks = listener.notifyOnUnmute(event.getMute(), event.getActor(), event.getReason());
65+
sendAll(webhooks, false);
66+
}
67+
68+
@EventHandler(priority = EventPriority.MONITOR)
69+
public void notifyOnReport(PlayerReportedEvent event) {
70+
List<WebhookData> webhooks = listener.notifyOnReport(event.getReport(), event.getReport().getActor(), event.getReport().getReason());
71+
sendAll(webhooks, event.isSilent());
72+
}
73+
74+
private void sendAll(List<WebhookData> webhooks, boolean isSilent) {
75+
for (WebhookData data : webhooks) {
76+
if (isSilent && !data.ignoreSilent) continue;
77+
if (data.url == null || data.payload == null || data.url.isEmpty() || data.payload.isEmpty()) continue;
78+
listener.sendAsync(data);
79+
}
80+
}
81+
}

bungee/src/main/java/me/confuser/banmanager/bungee/BMBungeePlugin.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public class BMBungeePlugin extends Plugin {
3030
"config.yml",
3131
"bungeecord.yml",
3232
"console.yml",
33-
"discord.yml",
33+
"webhooks.yml",
3434
"exemptions.yml",
3535
"geoip.yml",
3636
"messages.yml",
@@ -166,8 +166,8 @@ public void setupListeners() {
166166
registerEvent(new NoteListener(plugin));
167167
}
168168

169-
if (plugin.getDiscordConfig().isHooksEnabled()) {
170-
registerEvent(new DiscordListener(plugin));
169+
if (plugin.getWebhookConfig().isHooksEnabled()) {
170+
registerEvent(new WebhookListener(plugin));
171171
}
172172
}
173173

bungee/src/main/java/me/confuser/banmanager/bungee/listeners/DiscordListener.java

Lines changed: 0 additions & 100 deletions
This file was deleted.

0 commit comments

Comments
 (0)