Skip to content
Snippets Groups Projects
Commit f8ce69b6 authored by Cam Saul's avatar Cam Saul
Browse files

fix annoying redirect to setup when developing

parent d784c224
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