From d1d08762838f145297acccf372e74ea2b8b64610 Mon Sep 17 00:00:00 2001 From: M_Viper Date: Thu, 7 May 2026 19:39:30 +0000 Subject: [PATCH] Soft-delete copy _trash/2026-05-07T19-39-23-130Z/src/main/java/net/viper/status/modules/chat/ChatChannel.java --- .../status/modules/chat/ChatChannel.java | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 _trash/2026-05-07T19-39-23-130Z/src/main/java/net/viper/status/modules/chat/ChatChannel.java diff --git a/_trash/2026-05-07T19-39-23-130Z/src/main/java/net/viper/status/modules/chat/ChatChannel.java b/_trash/2026-05-07T19-39-23-130Z/src/main/java/net/viper/status/modules/chat/ChatChannel.java new file mode 100644 index 0000000..def2022 --- /dev/null +++ b/_trash/2026-05-07T19-39-23-130Z/src/main/java/net/viper/status/modules/chat/ChatChannel.java @@ -0,0 +1,69 @@ +package net.viper.status.modules.chat; + +/** + * Repräsentiert einen Chat-Kanal mit allen zugehörigen Einstellungen. + */ +public class ChatChannel { + + private final String id; + private final String name; + private final String symbol; + private final String permission; + private final String color; + private final String format; + private final boolean localOnly; + + // Bridge-Einstellungen + private final String discordWebhook; + private final String discordChannelId; + private final String telegramChatId; + private final int telegramThreadId; // 0 = kein Thema, >0 = Themen-ID + private final boolean useAdminBridge; + + public ChatChannel(String id, String name, String symbol, String permission, + String color, String format, boolean localOnly, + String discordWebhook, String discordChannelId, + String telegramChatId, int telegramThreadId, boolean useAdminBridge) { + this.id = id; + this.name = name; + this.symbol = symbol; + this.permission = permission; + this.color = color; + this.format = format; + this.localOnly = localOnly; + this.discordWebhook = discordWebhook; + this.discordChannelId = discordChannelId; + this.telegramChatId = telegramChatId; + this.telegramThreadId = telegramThreadId; + this.useAdminBridge = useAdminBridge; + } + + public String getId() { return id; } + public String getName() { return name; } + public String getSymbol() { return symbol; } + public String getPermission() { return permission; } + public String getColor() { return color; } + public String getFormat() { return format; } + public boolean isLocalOnly() { return localOnly; } + public String getDiscordWebhook() { return discordWebhook; } + public String getDiscordChannelId() { return discordChannelId; } + public String getTelegramChatId() { return telegramChatId; } + public int getTelegramThreadId() { return telegramThreadId; } + public boolean isUseAdminBridge() { return useAdminBridge; } + + /** Prüft ob der Kanal eine Permission erfordert. */ + public boolean hasPermission() { + return permission != null && !permission.isEmpty(); + } + + /** Gibt das formatierte Kanalprefix zurück, z.B. §a[G] */ + public String getFormattedTag() { + return net.md_5.bungee.api.ChatColor.translateAlternateColorCodes('&', + color + "[" + symbol + "]"); + } + + @Override + public String toString() { + return "ChatChannel{id=" + id + ", name=" + name + "}"; + } +} \ No newline at end of file