 
       # TODO: Each time we are fetching user data that we already have. Needs to be fixed.
       KD.remote.api.JAccount.some { "profile.nickname": { "$in": usernames } }, {}, (err, jAccounts) =>
-        @users[user.profile.nickname] = user for user in jAccounts
+        for user in jAccounts
+          {nickname} = user.profile
+          @users[nickname]       = user
+          @activeUsers[nickname] = user
         @emit "WorkspaceUsersFetched"
 
   createPanel: (callback = noop) ->

      @usersRef.child(username).child("status").on "value", (snapshot) =>
        status = snapshot.val()
        if status is "online"
          @emit "SomeoneJoinedToTheSession", username
          if @amIHost()
            message = "#{username} joined the session"
            @addToHistory { message, by: KD.nick() }
        else if status is "offline"
          @emit "SomeoneHasLeftTheSession", username
          if @amIHost()
            message = "#{username} has left the session"


    @userRef.child("status").onDisconnect().set "offline"

    @requestPingRef.on "value", (snapshot) =>
      return unless @amIHost()
      @userRef.child("timestamp").set Date.now()

    @usersRef.child(@getHost()).child("timestamp").on "value", (snapshot) =>
      return if @amIHost() or @connected or snapshot.val() is null
      @syncWorkspace()
      @connected = yes

  requestPingFromHost: ->
    @requestPingRef.set Date.now()

  fetchUsers: ->
    @workspaceRef.once "value", (snapshot) =>
      val = snapshot.val()
