 
       return  if @slug is 'guests'
 
-      @prepareNewlyAddedMember member, ({err, memberData }) =>
+      @prepareNewlyAddedMember member, (err, { memberData }) =>
 
         return @sendNotification 'GroupJoined', {}  if err
 
-        member = _.extend {}, ObjectRef(member).data
-        member = _.extend member, memberData
+        username = member.data.profile.nickname
+        memberData.username = username
+        memberData.id = member.data._id
 
         @sendNotification 'GroupJoined',
           actionType : 'groupJoined'
           actorType  : 'member'
           subject    : ObjectRef(this).data
-          member     : member
+          member     : memberData
 
     @on 'MemberRemoved', (member, requester) ->
 

      return  if @slug is 'guests'

      username = member.data.profile.nickname
      member = _.extend {}, ObjectRef(member).data
      member = _.extend member, { username }
      @sendNotification 'GroupLeft',
        actionType : 'groupLeft'
        actorType  : 'member'


    memberData = {}
    @fetchRolesByAccount member, (err, roles = []) ->
      return callback err  if err
      memberData.roles = roles
      member.fetchEmail (err, email) ->
        return callback err  if err and not email
        memberData.email = email
        memberData.username = member.data.profile.nickname
        callback null, { memberData }


  @create = (client, groupData, owner, callback) ->
