This commit is contained in:
2023-08-31 23:24:42 -07:00
parent 1d82ec29e0
commit 7d251c8398
40 changed files with 333 additions and 286 deletions

View File

@@ -193,7 +193,8 @@
(base-page
request
(com/page {:nav (com/admin-aside-nav)
:active-client (:client (:session request))
:client-selection (:client-selection (:session request))
:client (:client request)
:identity (:identity request)
:app-params {:hx-get (bidi/path-for ssr-routes/only-routes
:admin-ezcater-xls)

View File

@@ -12,37 +12,10 @@
[clojure.tools.logging :as log]
[datomic.api :as dc]))
(defn headers->clients [identity headers]
(let [x-clients (clojure.edn/read-string (get headers "x-clients"))
ideal-ids (set (cond
(or (= :all x-clients)
(nil? x-clients))
(->> (dc/q '[:find ?c
:where [?c :client/code]]
(dc/db conn))
(map first))
(= :mine x-clients)
(map :db/id (:user/clients identity))
(seq x-clients)
x-clients))
_ (println "X-CLIENSTT" x-clients)
_ (println "IDEAL" ideal-ids)
_ (println "LIMITS" (limited-clients identity))
limited-clients (some->> (limited-clients identity)
(map :db/id )
set)
client-ids (if (set? limited-clients)
(set/intersection ideal-ids
limited-clients)
ideal-ids)]
(pull-many (dc/db conn)
d-clients/full-read
client-ids)))
(defn handle-graphql [{:keys [request-method query-params] :as r}]
(defn handle-graphql [{:keys [request-method query-params clients] :as r}]
(when (= "none" (:user/role (:identity r)))
(throw-unauthorized))
@@ -54,7 +27,7 @@
{:status 200
:body (pr-str (ql/query (:identity r) (if (= request-method :get) (query-params "query") body) (assoc variables
:clients
(headers->clients (:identity r) (:headers r))) ))
clients) ))
:headers {"Content-Type" "application/edn"}})
(catch Throwable e
(log/info "here we are " (.getCause e))