 
         assigned = true
 
-        subscriptions = Array(auth.subscriptions.sortedByLastMessageDate())
+        let managedSubscriptions = auth.subscriptions.sortedByLastMessageDate()
+        subscriptionsToken = managedSubscriptions.observe(handleSubscriptionUpdates)
     }
 
     // MARK: Setup Views

        updateData()

        SocketManager.addConnectionHandler(token: socketHandlerToken, handler: self)
    }

    override func viewWillAppear(_ animated: Bool) {

        }
    }

    func updateSubscriptionsToShow() {
        switch searchState {
        case .notSearching:
            updateAll()
        case .searchingLocally, .searchingRemotely:
            updateSearched()
        }
    }

    func updateAll() {
        guard let auth = AuthManager.isAuthenticated() else { return }
        subscriptions = Array(auth.subscriptions.sortedByLastMessageDate())
