Makes multiple client selection somewhat possible via graphql.

This commit is contained in:
2023-08-31 13:05:06 -07:00
parent 9c472dfc8e
commit 1d82ec29e0
29 changed files with 274 additions and 139 deletions

View File

@@ -93,17 +93,29 @@
(defn client-dropdown []
(let [client (re-frame/subscribe [::subs/client])
matching-clients @(re-frame/subscribe [::matching-clients])]
clients @(re-frame/subscribe [::subs/selected-clients])
matching-clients @(re-frame/subscribe [::matching-clients])
user (re-frame/subscribe [::subs/user])]
[navbar-drop-down {:header (str "Company: " (if @client (:name @client)
"All"))
:id ::select-client}
[navbar-drop-down {:header (str "Company: " (cond @client
(:name @client)
:else
(str (count (or clients [])) " Clients")))
:id ::select-client}
[:div
[:a {:class "navbar-item"
:on-click (fn []
(re-frame/dispatch [::events/toggle-menu ::select-client])
(re-frame/dispatch [::forms/form-closing ::client-search])
(re-frame/dispatch [::events/swap-client nil]))} "All" ]
(re-frame/dispatch [::events/swap-client :all]))} "All" ]
(when (= "admin" (:user/role @user))
[:a {:class "navbar-item"
:on-click (fn []
(re-frame/dispatch [::events/toggle-menu ::select-client])
(re-frame/dispatch [::forms/form-closing ::client-search])
(re-frame/dispatch [::events/swap-client :mine]))} "Mine" ])
[:hr {:class "navbar-divider"}]
[form-builder/builder {:id ::client-search
:submit-event [::client-searched]}