diff --git a/src/Message.js b/src/Message.js index 36d9fb9..563dedc 100644 --- a/src/Message.js +++ b/src/Message.js @@ -150,7 +150,7 @@ module.exports = (cl) => { dbentry.name = msg.set.name; user.updatedb(); cl.server.rooms.forEach((room) => { - room.updateParticipant(cl.participantId, { + room.updateParticipant(cl.user._id, { name: msg.set.name }); }) @@ -194,7 +194,7 @@ module.exports = (cl) => { dbentry.color = msg.color; user.updatedb(); cl.server.rooms.forEach((room) => { - room.updateParticipant(usr.participantId, { + room.updateParticipant(usr.user._id, { color: msg.color }); }) diff --git a/src/Room.js b/src/Room.js index 6d2a2b8..cc0ac12 100644 --- a/src/Room.js +++ b/src/Room.js @@ -105,11 +105,14 @@ class Room extends EventEmitter { this.server.updateRoom(this.fetchData()); } updateParticipant(pid, options) { - let p = this.ppl.get(pid); - if (!p) return; - options.name ? this.ppl.get(pid).user.name = options.name : {}; - options._id ? this.ppl.get(pid).user._id = options._id : {}; - options.color ? this.ppl.get(pid).user.color = options.color : {}; + let p = null; + Array.from(this.ppl).map(rpg => { + if(e[1].user._id == pid) p = e[1]; + }); + if (p == null) return; + options.name ? p.user.name = options.name : {}; + options._id ? p.user._id = options._id : {}; + options.color ? p.user.color = options.color : {}; this.connections.filter((ofo) => ofo.participantId == p.participantId).forEach((usr) => { options.name ? usr.user.name = options.name : {}; options._id ? usr.user._id = options._id : {};