From 6def63078c134dd4e623e09c3d09df2f46f3b0e2 Mon Sep 17 00:00:00 2001 From: Syping Date: Wed, 25 Mar 2026 23:57:54 +0100 Subject: [PATCH] message_queue: get user target language in direct message translation --- src/core/message_queue.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/core/message_queue.cpp b/src/core/message_queue.cpp index 9ca0c78..4d82088 100644 --- a/src/core/message_queue.cpp +++ b/src/core/message_queue.cpp @@ -106,9 +106,12 @@ void message_queue::run(bot::settings::settings *settings, submit_queue *submit_ auto translator = settings->get_translator(); if (const auto *direct_message = std::get_if(&message)) { + const std::lock_guard guard(*settings); + bot::settings::user *user = settings->get_user(direct_message->event.command.get_issuing_user().id); + std::string target = user ? user->target : "en"; translated_direct_message translated_message; translated_message.event = direct_message->event; - translated_message.message = translator->translate(direct_message->message, {}, "en"); + translated_message.message = translator->translate(direct_message->message, {}, target); submit_queue->add(std::move(translated_message)); } else if (const auto *guild_message = std::get_if(&message)) {