fixing kicking.

This commit is contained in:
BC
2018-10-25 21:08:16 -07:00
parent 8478011b8c
commit 8c1826f022

View File

@@ -57,6 +57,18 @@
:on-success [::got-accounts]
:on-error [::save-error]}}))
(re-frame/reg-event-fx
::kicked
(fn [{:keys [db]} [_ id state]]
{:db (update-in db [::yodlee :accounts]
(fn [as]
(map (fn [a]
(if (= (:id a) id)
(assoc a :status state)
a))
as)))
}))
(re-frame/reg-event-fx
::kick
@@ -66,8 +78,8 @@
:method :post
:headers {"Content-Type" "application/edn"}
:uri (str "/api/yodlee/accounts/" id)
:on-success [::mounted]
:on-error [::save-error]}}))
:on-success [::kicked id :kicking]
:on-error [::kicked id :errored]}}))
(re-frame/reg-event-fx
::got-accounts
@@ -121,10 +133,11 @@
[:th "Account Number"]
[:th "Yodlee Account Number"]
[:th "Yodlee Last updated"]
[:th "Yodlee Status"]]]
[:th "Yodlee Status"]
[:th]]]
(if @(re-frame/subscribe [::accounts-loading?])
[:tr [:td {:col-span "3"} "Loading..."]
[:tr [:td {:col-span "6"} "Loading..."]
]
(for [account @(re-frame/subscribe [::accounts])]
[:tr
@@ -133,8 +146,15 @@
[:td (:id account)]
[:td (str/join ", " (map :lastUpdated (:dataset account)))]
[:td (str/join ", " (map :additionalStatus (:dataset account)))]
[:td [:button.button.is-success {:on-click (dispatch-event [::kick (:id account)] )} "Kick." ]]
]))]])
[:td
(cond (= (:status account) :kicking)
[:button.button.is-success.is-loading {:disabled "disabled"} "Kick."]
(= (:status account) :error)
[:button.button.is-error.is-loading {:disabled "disabled"} "Error."]
:else
[:button.button.is-success {:on-click (dispatch-event [::kick (:id account)] )} "Kick." ])]]))]])
(defn admin-yodlee-page []