Skip to content
Snippets Groups Projects
Commit e392bc97 authored by Cam Saül's avatar Cam Saül
Browse files

Merge pull request #453 from metabase/fix_annoying_setup_redirect_in_dev

fix annoying redirect to setup when developing
parents d1c9f1b7 f8ce69b6
No related branches found
No related tags found
No related merge requests found
......@@ -439,7 +439,8 @@
[entity & {:as kwargs}]
`(not (empty? (select (entity->korma ~entity)
(fields [:id])
(where ~kwargs)
~@(when (seq kwargs)
`[(where ~kwargs)])
(limit 1)))))
;; ## CASADE-DELETE
......
......@@ -5,9 +5,9 @@
[metabase.api.routes :as api]
[metabase.setup :as setup]))
(let [redirect-to-setup? (fn [{:keys [uri]}] ; Redirect naughty users who try to visit a page other than setup
(and (setup/token-exists?) ; if setup is not yet complete
;; Redirect naughty users who try to visit a page other than setup if setup is not yet complete
(let [redirect-to-setup? (fn [{:keys [uri]}]
(and (setup/incomplete?)
(not (re-matches #"^/setup/.*$" uri))))
index (fn [request]
(if (redirect-to-setup? request) (resp/redirect (format "/setup/init/%s" (setup/token-value)))
......
(ns metabase.setup)
(ns metabase.setup
(:require [metabase.db :as db]
[metabase.models.user :refer [User]]))
(def ^:private setup-token
(defonce ^:private setup-token
(atom nil))
(defn token-value
......@@ -8,10 +10,11 @@
[]
@setup-token)
(defn token-exists?
"Return `true` if a setup token exists."
(defn incomplete?
"Return `true` if a setup token exists and no `Users` exist in the DB."
[]
(boolean @setup-token))
(and @setup-token
(not (db/exists? User))))
(defn token-match?
"Function for checking if the supplied string matches our setup token.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment