From 9f8aa608b760962bec4473a56e86fdbdc4d24876 Mon Sep 17 00:00:00 2001
From: Rodrigo Nascimento <rodrigoknascimento@gmail.com>
Date: Tue, 4 Apr 2017 18:19:35 -0300
Subject: [PATCH] =?UTF-8?q?Update=20messages=20and=20subscriptions=20on=20?=
 =?UTF-8?q?user=E2=80=99s=20name=20changed?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 client/notifications/UsersNameChanged.js      | 22 +++++++++++++++++++
 .../server/functions/setRealName.js           |  7 ++++++
 2 files changed, 29 insertions(+)
 create mode 100644 client/notifications/UsersNameChanged.js

diff --git a/client/notifications/UsersNameChanged.js b/client/notifications/UsersNameChanged.js
new file mode 100644
index 00000000000..77d153ba708
--- /dev/null
+++ b/client/notifications/UsersNameChanged.js
@@ -0,0 +1,22 @@
+Meteor.startup(function() {
+	RocketChat.Notifications.onLogged('Users:NameChanged', function({_id, name, username}) {
+		RocketChat.models.Messages.update({
+			'u._id': _id
+		}, {
+			$set: {
+				'u.name': name
+			}
+		}, {
+			multi: true
+		});
+
+		RocketChat.models.Subscriptions.update({
+			name: username,
+			t: 'd'
+		}, {
+			$set: {
+				fname: name
+			}
+		});
+	});
+});
diff --git a/packages/rocketchat-lib/server/functions/setRealName.js b/packages/rocketchat-lib/server/functions/setRealName.js
index 935a4a7e701..d692fb8d949 100644
--- a/packages/rocketchat-lib/server/functions/setRealName.js
+++ b/packages/rocketchat-lib/server/functions/setRealName.js
@@ -14,6 +14,13 @@ RocketChat._setRealName = function(userId, name) {
 	// Set new name
 	RocketChat.models.Users.setName(user._id, name);
 	user.name = name;
+
+	RocketChat.Notifications.notifyLogged('Users:NameChanged', {
+		_id: user._id,
+		name: user.name,
+		username: user.username
+	});
+
 	return user;
 };
 
-- 
GitLab