diff options
Diffstat (limited to 'juick-server/src/main/java/com/juick/server')
-rw-r--r-- | juick-server/src/main/java/com/juick/server/XMPPBot.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/juick-server/src/main/java/com/juick/server/XMPPBot.java b/juick-server/src/main/java/com/juick/server/XMPPBot.java index a3335596..41c98856 100644 --- a/juick-server/src/main/java/com/juick/server/XMPPBot.java +++ b/juick-server/src/main/java/com/juick/server/XMPPBot.java @@ -675,6 +675,16 @@ public class XMPPBot implements StanzaListener, AutoCloseable { } return "Reply not found"; } + @UserCommand(pattern = "^\\*(\\S+)(\\+?)$", help = "*tag - Show last messages with tag") + public String commandShowTag(User user, Jid from, String... arguments) { + Tag tag = tagService.getTag(arguments[0], false); + if (tag != null) { + // TODO: synonims + List<Integer> mids = messagesService.getTag(tag.TID, user.getUid(), 0, 10); + return "Last messages with *" + tag.getName() + ":\n" + printMessages(mids, true); + } + return "Tag not found"; + } @UserCommand(pattern = "^D #(\\d+)$", help = "D #1234 - Delete post", patternFlags = Pattern.CASE_INSENSITIVE) public String commandDeletePost(User user, Jid from, String... args) { int mid = Integer.valueOf(args[0]); |