added auditing.

This commit is contained in:
Bryce Covert
2020-08-27 07:24:12 -07:00
parent 6fce14ed6a
commit 183c74f128
13 changed files with 337 additions and 243 deletions

View File

@@ -100,7 +100,7 @@
(defn admin-rules-page []
(let [{:keys [active?]} @(re-frame/subscribe [::forms/form ::form/form])]
[side-bar-layout {:side-bar [admin-side-bar {}
[side-bar/rule-side-bar]]
[side-bar/rule-side-bar {:data-page ::page}]]
:main [rules-content]
:right-side-bar [appearing-side-bar {:visible? active?}
[form/form {:data-page ::page}]]

View File

@@ -2,57 +2,18 @@
(:require
[re-frame.core :as re-frame]
[auto-ap.subs :as subs]
[auto-ap.views.components.typeahead :refer [typeahead-entity]]))
(re-frame/reg-sub
::specific-filters
(fn [db ]
(::filters db nil)))
(re-frame/reg-sub
::filters
:<- [::specific-filters]
:<- [::subs/vendors-by-id]
:<- [::subs/query-params]
(fn [[specific-filters vendors-by-id query-params] ]
(let [url-filters (-> query-params
(select-keys #{:vendor-id}))
url-filters {:vendor (when-let [vendor-id (:vendor-id url-filters)]
{:id (str vendor-id)
:name (get-in vendors-by-id [(str vendor-id) :name] "Loading...")})}]
(merge url-filters specific-filters ))))
(re-frame/reg-sub
::filter
:<- [::filters]
(fn [filters [_ which]]
(get filters which)))
(re-frame/reg-sub
::filter-params
:<- [::filters]
:<- [::subs/active-page]
(fn [[filters ap ]]
{:vendor-id (:id (:vendor filters))}))
[auto-ap.views.components.typeahead :refer [typeahead-entity]]
[auto-ap.views.pages.data-page :as data-page]))
(re-frame/reg-event-fx
::filter-changed
(fn [{:keys [db]} [_ & params]]
(let [[a b c] params
[which val] (if (= 3 (count params))
[(into [a] b) c]
[[a] b])]
{:db (assoc-in db (into [::filters] which) val)})))
(defn rule-side-bar []
(defn rule-side-bar [{:keys [data-page]}]
[:div
[:p.menu-label "Vendor"]
[:div
[typeahead-entity {:matches @(re-frame/subscribe [::subs/vendors])
:on-change #(re-frame/dispatch [::filter-changed :vendor %])
:on-change #(re-frame/dispatch [::data-page/filter-changed data-page :vendor %])
:match->text :name
:include-keys [:name :id]
:type "typeahead-entity"
:value @(re-frame/subscribe [::filter :vendor])}]]])
:value @(re-frame/subscribe [::data-page/filter data-page :vendor])}]]])