Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/jsxc/jsxc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormightymop <totzkotz@gmail.com>2022-02-26 21:43:15 +0300
committermightymop <totzkotz@gmail.com>2022-02-27 05:50:56 +0300
commitfda803221c0e44590c80db8d124519cf3b5c151b (patch)
treea877e298e668b9f3742eb328bc670f47e064ace4
parent2788f1c2e378f138d635e6cb928e97a2f769a537 (diff)
fix: muc topic change message
-rw-r--r--locales/de.json2
-rw-r--r--src/connection/xmpp/handlers/multiUser/groupChatMessage.ts22
2 files changed, 18 insertions, 6 deletions
diff --git a/locales/de.json b/locales/de.json
index 61dd41f5..713db73d 100644
--- a/locales/de.json
+++ b/locales/de.json
@@ -251,7 +251,7 @@
"Loading_room_information": "Informationen über Gruppe werden geladen",
"Destroy": "Auflösen",
"Leave": "Verlassen",
- "changed_subject_to": "__nickname__ hat das Thema auf __subject__ geändert",
+ "changed_subject_to": "__nickname__ hat das Thema auf \"__subject__\" geändert",
"muc_removed_kicked": "Du wurdest aus der Gruppe entfernt",
"muc_removed_info_kicked": "__nickname__ wurde aus der Gruppe entfernt",
"muc_removed_banned": "Du wurdest aus der Gruppe ausgeschlossen",
diff --git a/src/connection/xmpp/handlers/multiUser/groupChatMessage.ts b/src/connection/xmpp/handlers/multiUser/groupChatMessage.ts
index 287d9774..5b0b9ca0 100644
--- a/src/connection/xmpp/handlers/multiUser/groupChatMessage.ts
+++ b/src/connection/xmpp/handlers/multiUser/groupChatMessage.ts
@@ -44,12 +44,24 @@ export default class extends AbstractHandler {
contact.setSubject(subject);
- let translatedMessage = Translation.t('changed_subject_to', {
- nickname,
- subject,
- });
+ let translatedMessage = null;
+
+ if (subject !== '') {
+ //if room was created with standard configuration, then there is no topic at all
+ if (nickname !== '') {
+ //if the message comes from the muc service instead of the user, then its a bare jid without nickname
+ translatedMessage = Translation.t('changed_subject_to', {
+ nickname,
+ subject,
+ });
+ } else {
+ translatedMessage = Translation.t('subject_was_changed', {
+ subject,
+ });
+ }
- contact.addSystemMessage(':page_with_curl: ' + translatedMessage);
+ contact.addSystemMessage(':page_with_curl: ' + translatedMessage.replaceAll('&quot;', '"'));
+ }
return this.PRESERVE_HANDLER;
}