Fix: Verbesserung der Benutzerlistenverarbeitung im MultiChatDialog

Änderung:
- Die Logik zur Extraktion der Benutzerliste wurde aktualisiert, um auch `userlist` aus `obj.message` zu berücksichtigen. Dies verbessert die Robustheit der Benutzerlistenverarbeitung und stellt sicher, dass alle relevanten Benutzer korrekt angezeigt werden.

Diese Anpassung sorgt dafür, dass die Benutzerliste im Chat präziser und vollständiger ist.
This commit is contained in:
Torsten Schulz (local)
2025-09-05 17:14:48 +02:00
parent e7fa6c275e
commit bc6018a3ad

View File

@@ -1046,7 +1046,11 @@ export default {
}
// Type 2: user list in room
if (obj.type === 2) {
const list = Array.isArray(obj.message) ? obj.message : (Array.isArray(obj.users) ? obj.users : []);
console.log('🔍 Type 2 message received:', obj);
const list = Array.isArray(obj.message) ? obj.message :
(Array.isArray(obj.users) ? obj.users :
(Array.isArray(obj.message?.userlist) ? obj.message.userlist : []));
console.log('📊 Extracted user list:', list);
const byName = new Map();
for (const it of list) {
if (it && typeof it === 'object') {
@@ -1060,6 +1064,7 @@ export default {
}
}
this.usersInRoom = Array.from(byName.values()).sort((a, b) => a.name.localeCompare(b.name, 'de'));
console.log('📊 Final usersInRoom:', this.usersInRoom);
// Auswahl behalten, falls User noch existiert; sonst löschen
if (this.selectedTargetUser && !byName.has(this.selectedTargetUser)) {
this.selectedTargetUser = null;