From a5d5d8d9851cbe363150446e0c9f43e1c0429748 Mon Sep 17 00:00:00 2001 From: Teriuihi Date: Sat, 5 Feb 2022 02:45:38 +0100 Subject: [PATCH] Tweaked mails, added notifs, added config options --- .../main/java/com/alttd/chat/config/Config.java | 7 ++++++- .../alttd/velocitychat/handlers/ChatHandler.java | 9 +++++++-- .../listeners/ProxyPlayerListener.java | 16 ++++++++++++++++ 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/api/src/main/java/com/alttd/chat/config/Config.java b/api/src/main/java/com/alttd/chat/config/Config.java index 900f9e0..4ea834c 100755 --- a/api/src/main/java/com/alttd/chat/config/Config.java +++ b/api/src/main/java/com/alttd/chat/config/Config.java @@ -4,6 +4,7 @@ import com.alttd.chat.objects.channels.CustomChannel; import com.google.common.base.Throwables; import com.google.common.collect.Lists; import io.leangen.geantyref.TypeToken; +import net.kyori.adventure.text.Component; import org.spongepowered.configurate.ConfigurationNode; import org.spongepowered.configurate.serialize.SerializationException; import org.spongepowered.configurate.yaml.NodeStyle; @@ -389,15 +390,19 @@ public final class Config { } public static String mailHeader = "===== List Mails ====='"; - public static String mailBody = "From: on:\n"; + public static String mailBody = "From: [] '> day(s) ago: "; public static String mailFooter = "======================"; public static String mailNoUser = "A player with this name hasn't logged in recently."; + public static String mailReceived = "New mail from , click to view"; + public static String mailUnread = "You have unread mail, click to view it."; public static List mailCommandAlias = new ArrayList<>(); private static void mailSettings() { mailHeader = getString("settings.mail.header", mailHeader); mailBody = getString("settings.mail.message", mailBody); mailFooter = getString("settings.mail.footer", mailFooter); mailCommandAlias = getList("settings.mail.command-aliases", Lists.newArrayList("gmail")); + mailReceived = getString("settings.mail.mail-received", mailReceived); + mailUnread = getString("settings.mail.mail-unread", mailUnread); } } diff --git a/velocity/src/main/java/com/alttd/velocitychat/handlers/ChatHandler.java b/velocity/src/main/java/com/alttd/velocitychat/handlers/ChatHandler.java index ff261d9..fc180bd 100755 --- a/velocity/src/main/java/com/alttd/velocitychat/handlers/ChatHandler.java +++ b/velocity/src/main/java/com/alttd/velocitychat/handlers/ChatHandler.java @@ -22,6 +22,7 @@ import net.kyori.adventure.text.serializer.gson.GsonComponentSerializer; import org.jetbrains.annotations.Nullable; import java.util.*; +import java.util.concurrent.TimeUnit; public class ChatHandler { @@ -215,7 +216,9 @@ public class ChatHandler { chatUser.addMail(mail); // TODO load from config String finalSenderName = senderName; - optionalPlayer.ifPresent(player -> player.sendMessage(Utility.parseMiniMessage("New mail from " + finalSenderName))); + optionalPlayer.ifPresent(player -> player.sendMessage(Utility.parseMiniMessage(Config.mailReceived, List.of( + Template.template("sender", finalSenderName)) + ))); } public void readMail(CommandSource commandSource, String targetPlayer) { @@ -243,11 +246,13 @@ public class ChatHandler { Queries.markMailRead(mail); } ChatUser chatUser = ChatUserManager.getChatUser(mail.getSender()); + Date sentTime = new Date(mail.getSendTime()); List