Merge pull request #1889 from penpot/palba-canceled-invitation-page

🎉 Show an error page when the user uses a cancelled/invalid/expired invitation
This commit is contained in:
Eva Marco 2022-05-11 16:39:39 +02:00 committed by GitHub
commit 5bdea086e9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
15 changed files with 37 additions and 58 deletions

View file

@ -11,6 +11,7 @@
[app.main.repo :as rp]
[app.main.store :as st]
[app.main.ui.icons :as i]
[app.main.ui.static :as static]
[app.util.dom :as dom]
[app.util.i18n :as i18n :refer [tr]]
[app.util.router :as rt]
@ -59,7 +60,8 @@
(mf/defc verify-token
[{:keys [route] :as props}]
(let [token (get-in route [:query-params :token])]
(let [token (get-in route [:query-params :token])
bad-token (mf/use-state false)]
(mf/use-effect
(fn []
(dom/set-html-title (tr "title.default"))
@ -69,13 +71,10 @@
(handle-token tdata))
(fn [{:keys [type code] :as error}]
(cond
(and (= :validation type)
(or (= :validation type)
(= :invalid-token code)
(= :token-expired (:reason error)))
(let [msg (tr "errors.token-expired")]
(ts/schedule 100 #(st/emit! (dm/error msg)))
(st/emit! (rt/nav :auth-login)))
(reset! bad-token true)
(= :email-already-exists code)
(let [msg (tr "errors.email-already-exists")]
(ts/schedule 100 #(st/emit! (dm/error msg)))
@ -91,5 +90,10 @@
(ts/schedule 100 #(st/emit! (dm/error msg)))
(st/emit! (rt/nav :auth-login)))))))))
[:div.verify-token
i/loader-pencil]))
(if @bad-token
[:> static/static-header {}
[:div.image i/unchain]
[:div.main-message (tr "errors.invite-invalid")]
[:div.desc-message (tr "errors.invite-invalid.info")]]
[:div.verify-token
i/loader-pencil])))