           (= :logged-in (:user-status @state))
           [LoggedIn {:nav-context (:root-nav-context @state)}]
           (= :not-logged-in (:user-status @state))
-          [LoggedOut])]]
+          [LoggedOut {:on-login #(react/call :authenticate-with-fresh-token this %)}])]]
       (footer)])
    :component-did-mount
    (fn [{:keys [this state]}]

                                     :else
                                     (swap! state assoc :user-status :error))))
             (swap! state assoc :user-status :not-logged-in))))))
   :handle-successful-auth
   (fn [{:keys [this state locals]} token]
     (reset! utils/access-token token)

                               (swap! state assoc :config-status :error)))}))
   :authenticate-user
   (fn [{:keys [this state]}]
     (if-let [parent (.-opener js/window)]
       ;; This window was used for login. Send the token to the parent. No need to render the UI.
       (do
         ((aget parent (name ::handle-auth-message)) (parse-hash-into-map))
         (.close js/window))
       (if-let [token (get (parse-hash-into-map) "access_token")]
         ;; New access token. Attempt to authenticate with it.
         (react/call :authenticate-with-fresh-token this token)
         (let [token (utils/get-access-token-cookie)]
           (if token
             (attempt-auth token (fn [{:keys [success? status-code]}]
