From 3f931f48a01f2183747281fcc05c8e40f78b8804 Mon Sep 17 00:00:00 2001
From: Rodrigo Nascimento <rodrigoknascimento@gmail.com>
Date: Wed, 3 Jun 2015 17:45:57 -0300
Subject: [PATCH] Create groups working

---
 .../views/app/sideNav/privateGroupsFlex.coffee   |  6 +++---
 server/methods/createPrivateGroup.coffee         | 16 +++++++++++-----
 2 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/client/views/app/sideNav/privateGroupsFlex.coffee b/client/views/app/sideNav/privateGroupsFlex.coffee
index 4303c2a2362..0fce8645697 100644
--- a/client/views/app/sideNav/privateGroupsFlex.coffee
+++ b/client/views/app/sideNav/privateGroupsFlex.coffee
@@ -25,7 +25,7 @@ Template.privateGroupsFlex.helpers
 						type: 'u'
 						$and: [
 							{ _id: { $ne: Meteor.userId() } }
-							{ _id: { $nin: Template.instance().selectedUsers.get() } }
+							{ username: { $nin: Template.instance().selectedUsers.get() } }
 						]
 					sort: 'name'
 				}
@@ -34,9 +34,9 @@ Template.privateGroupsFlex.helpers
 
 Template.privateGroupsFlex.events
 	'autocompleteselect #pvt-group-members': (event, instance, doc) ->
-		instance.selectedUsers.set instance.selectedUsers.get().concat doc._id
+		instance.selectedUsers.set instance.selectedUsers.get().concat doc.username
 
-		instance.selectedUserNames[doc._id] = doc.name
+		instance.selectedUserNames[doc.username] = doc.name
 
 		event.currentTarget.value = ''
 		event.currentTarget.focus()
diff --git a/server/methods/createPrivateGroup.coffee b/server/methods/createPrivateGroup.coffee
index cb44bd192c1..77e9bf80cf8 100644
--- a/server/methods/createPrivateGroup.coffee
+++ b/server/methods/createPrivateGroup.coffee
@@ -5,29 +5,35 @@ Meteor.methods
 
 		now = new Date()
 
-		members.push Meteor.userId()
+		members.push Meteor.user().username
 
 		name = s.slugify name
 
 		# create new room
 		roomId = ChatRoom.insert
-			uids: members
+			usernames: members
 			ts: now
 			t: 'p'
 			uid: Meteor.userId()
 			name: name
 			msgs: 0
 
-		for user in members
+		for username in members
+			member = Meteor.users.findOne({username: username})
+			if not member?
+				continue
+
 			sub =
-				uid: user
+				u: 
+					_id: member._id
+					username: username
 				rid: roomId
 				ts: now
 				rn: name
 				t: 'p'
 				unread: 0
 
-			if user is Meteor.userId()
+			if username is Meteor.user().username
 				sub.ls = now
 
 			ChatSubscription.insert sub
-- 
GitLab