From c74ccbaff1f0d4eb6064692078e18afa949b0ef9 Mon Sep 17 00:00:00 2001 From: Green Sky Date: Tue, 5 Dec 2023 20:53:15 +0100 Subject: [PATCH] handle private messages --- src/message_command_dispatcher.cpp | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/src/message_command_dispatcher.cpp b/src/message_command_dispatcher.cpp index 738fe4e..66f2948 100644 --- a/src/message_command_dispatcher.cpp +++ b/src/message_command_dispatcher.cpp @@ -251,11 +251,18 @@ bool MessageCommandDispatcher::onEvent(const Message::Events::MessageConstruct& // TODO: skip unrelyable synced - // TODO: is private + const bool is_private = _cr.any_of(e.e.get().c); - // TODO: has the permissions - - if (false) { // is private + if (is_private) { + // check for command prefix + if ( + message_text.at(0) == '!' || + message_text.at(0) == '/' + ) { + // starts with command prefix + // remove c prefix + message_text = message_text.substr(1); + } } else { // check for command prefix if ( @@ -325,8 +332,7 @@ bool MessageCommandDispatcher::onEvent(const Message::Events::MessageConstruct& return false; } - command_it->second.fn(params, e.e); - return true; + return command_it->second.fn(params, e.e); } } @@ -338,8 +344,7 @@ bool MessageCommandDispatcher::onEvent(const Message::Events::MessageConstruct& } params = std::string{second_word} + " " + params; - command_it->second.fn(params, e.e); - return true; + return command_it->second.fn(params, e.e); } return false;