From 420d98c0f9cbd68b62f95b9733e5ba03f4fe2ad3 Mon Sep 17 00:00:00 2001 From: Andrey Antukh Date: Fri, 27 Nov 2020 13:29:35 +0100 Subject: [PATCH] :bug: Fix unauthorized error handling on viewer with token. --- frontend/src/app/main/data/viewer.cljs | 10 ++++++++-- frontend/src/app/main/ui/viewer/header.cljs | 12 +++++++++++- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/frontend/src/app/main/data/viewer.cljs b/frontend/src/app/main/data/viewer.cljs index cf06925ec..5c63e62ea 100644 --- a/frontend/src/app/main/data/viewer.cljs +++ b/frontend/src/app/main/data/viewer.cljs @@ -136,12 +136,18 @@ (->> data (filter #(= page-id (:page-id %))) (d/index-by :id) - (assoc state :comment-threads)))] + (assoc state :comment-threads))) + (on-error [err] + (if (= :authorization (:type err)) + (rx/empty) + (rx/throw err)))] + (ptk/reify ::fetch-comment-threads ptk/WatchEvent (watch [_ state stream] (->> (rp/query :comment-threads {:file-id file-id}) - (rx/map #(partial fetched %))))))) + (rx/map #(partial fetched %)) + (rx/catch on-error)))))) (defn refresh-comment-thread [{:keys [id file-id] :as thread}] diff --git a/frontend/src/app/main/ui/viewer/header.cljs b/frontend/src/app/main/ui/viewer/header.cljs index f0bd849f3..ae063c32e 100644 --- a/frontend/src/app/main/ui/viewer/header.cljs +++ b/frontend/src/app/main/ui/viewer/header.cljs @@ -192,6 +192,16 @@ (mf/use-callback (st/emitf dv/toggle-thumbnails-panel)) + on-goback + (mf/use-callback + (mf/deps project-id file-id page-id anonymous?) + (fn [] + (if anonymous? + (st/emit! (rt/nav :login)) + (st/emit! (rt/nav :workspace + {:project-id project-id + :file-id file-id} + {:page-id page-id}))))) on-edit (mf/use-callback (mf/deps project-id file-id page-id) @@ -220,7 +230,7 @@ [:header.viewer-header [:div.main-icon - [:a {:on-click on-edit} i/logo-icon]] + [:a {:on-click on-goback} i/logo-icon]] [:div.sitemap-zone {:alt (t locale "viewer.header.sitemap") :on-click on-click}