more code trimming for datomic.

This commit is contained in:
Bryce Covert
2018-08-16 08:38:01 -07:00
parent a4e3fe2327
commit ad2dd386ee
4 changed files with 64 additions and 45 deletions

View File

@@ -32,7 +32,7 @@
[:name
:id
:role
[:companies [:id :name]]]]]}
[:clients [:id :name]]]]]}
:on-success [::received]}}))
(re-frame/reg-event-db
@@ -79,7 +79,7 @@
:venia/queries [{:query/data [:edit-user
{:edit-user (update (get-in db [::editing :user]) :companies #(map :id %))}
[:id :name :role [:companies [:id :name]]]]}]}
[:id :name :role [:clients [:id :name]]]]}]}
:on-success [::saved]}}))
(re-frame/reg-event-fx
@@ -102,13 +102,13 @@
[:th "User"]
[:th "Role"]
[:th "Companies"]]]
[:tbody (for [{:keys [id name role companies] :as c} @users]
[:tbody (for [{:keys [id name role clients] :as c} @users]
^{:key (str name "-" id )}
[:tr {:on-click (fn [] (re-frame/dispatch [::edit id]))
:style {"cursor" "pointer"}}
[:td name]
[:td role]
[:td (str/join ", " (map :name companies))]])]]))
[:td (str/join ", " (map :name clients))]])]]))
@@ -152,7 +152,7 @@
(when (= "user" (:role (:user editing)))
[horizontal-field
[:label.label "Companies"]
[:label.label "Clients"]
[:div.control
[:div.field.has-addons
@@ -164,7 +164,7 @@
:event ::change
:subscription editing}
[:option]
(let [used-companies (set (map :id (:companies (:user editing))))]
(let [used-companies (set (map :id (:clients (:user editing))))]
(for [{:keys [id name]} @(re-frame/subscribe [::subs/companies])
:when (not (used-companies id))]
^{:key id} [:option {:value id} name]))]]]]
@@ -172,7 +172,7 @@
[:button.button.is-primary {:on-click (dispatch-event [::add-company])} "Add"]]]
[:ul
(for [{:keys [id name]} (:companies (:user editing))]
(for [{:keys [id name]} (:clients (:user editing))]
^{:key id} [:li name [:a.icon {:on-click (dispatch-event [::remove-company id])} [:i.fa.fa-times ]]])]]])]])])
{:component-will-mount #(re-frame/dispatch-sync [::users-mounted {}]) }))