diff --git a/src/cljs/auto_ap/events.cljs b/src/cljs/auto_ap/events.cljs index ac72fdf2..e107bc15 100644 --- a/src/cljs/auto_ap/events.cljs +++ b/src/cljs/auto_ap/events.cljs @@ -217,7 +217,7 @@ :operation/name "UpsertVendor"} :venia/queries [{:query/data [:upsert-vendor - {:vendor edited-vendor} + {:vendor (dissoc edited-vendor :default-account)} vendor-query]}]} :on-success [::save-complete] :on-error [::save-error]})))) @@ -235,7 +235,7 @@ {:dispatch [::modal-completed :auto-ap.views.main/user-editing-vendor ] :db (-> db (dissoc :user-editing-vendor) - (assoc-in [:vendors (:id vendor)] (:upsert-vendor vendor)))})) + (assoc-in [:vendors (:id (:upsert-vendor vendor))] (:upsert-vendor vendor)))})) (re-frame/reg-event-db ::page-failed (fn [db [_ result]] diff --git a/src/cljs/auto_ap/events/admin/vendors.cljs b/src/cljs/auto_ap/events/admin/vendors.cljs index 0b3a2aae..fc299b8c 100644 --- a/src/cljs/auto_ap/events/admin/vendors.cljs +++ b/src/cljs/auto_ap/events/admin/vendors.cljs @@ -15,10 +15,10 @@ (re-frame/reg-event-fx ::edit (fn [{:keys [db]} [_ vendor-id]] - {:db (assoc-in db [:admin :vendor] + {:db (assoc-in db [:user-editing-vendor] (-> (get (:vendors db) vendor-id) (assoc :default-account-id (:id (:default-account (get (:vendors db) vendor-id)))))) - :dispatch [::events/modal-status :auto-ap.views.pages.admin.vendors/admin-vendor {:visible? true}]})) + :dispatch [::events/modal-status :auto-ap.views.main/user-editing-vendor {:visible? true}]})) (re-frame/reg-event-fx ::new diff --git a/src/cljs/auto_ap/views/components/invoices/side_bar.cljs b/src/cljs/auto_ap/views/components/invoices/side_bar.cljs index 977eef66..985ee5ea 100644 --- a/src/cljs/auto_ap/views/components/invoices/side_bar.cljs +++ b/src/cljs/auto_ap/views/components/invoices/side_bar.cljs @@ -45,8 +45,4 @@ [:span {:class "name"} "Import Invoices"]]])]] [:div - rest] - [:div {:class "compose has-text-centered"} - [:a {:class "button is-primary is-outlined is-block is-bold" - :on-click (dispatch-event [::events/modal-status :auto-ap.views.main/user-editing-vendor {:visible? true}])} - [:span "New Vendor"]]]])) + rest]])) diff --git a/src/cljs/auto_ap/views/components/layouts.cljs b/src/cljs/auto_ap/views/components/layouts.cljs index 4012d3ba..0bd6a61d 100644 --- a/src/cljs/auto_ap/views/components/layouts.cljs +++ b/src/cljs/auto_ap/views/components/layouts.cljs @@ -8,6 +8,7 @@ [auto-ap.subs :as subs] [auto-ap.events :as events] [auto-ap.views.utils :refer [active-when active-when= login-url dispatch-event appearing css-transition-group]] + [auto-ap.views.components.vendor-dialog :refer [vendor-dialog]] [auto-ap.views.components.vendor-dialog :refer [vendor-dialog]])) @@ -20,12 +21,12 @@ (fn [children] children)}))) -(defn navbar-drop-down [{:keys [ header id]} child] +(defn navbar-drop-down [{:keys [ header id class]} child] (let [menu-active? (re-frame/subscribe [::subs/menu-active? id])] (reagent/create-class {:reagent-render (fn [{:keys [header id]} child] (let [menu-active? @(re-frame/subscribe [::subs/menu-active? id])] - [:div { :class (str "navbar-item has-dropdown " (when menu-active? "is-active"))} + [:div { :class (str "navbar-item has-dropdown " (when menu-active? "is-active " ) " " class)} [:a {:class "navbar-link login" :on-click (fn [e] (.preventDefault e) (.stopPropagation e) @@ -82,6 +83,12 @@ [:span] [:span]] [:div.navbar-end + [:div.navbar-item + [:a.button.is-primary.is-outlined + {:on-click (dispatch-event [::events/modal-status :auto-ap.views.main/user-editing-vendor {:visible? true}])} + [:span.icon [:i.fa.fa-plus] ] [:span "Vendor"]]] + + (when (> (count @clients) 1) [navbar-drop-down {:header (str "Client: " (if @client (:name @client) "All")) @@ -89,8 +96,7 @@ [:div [:a {:class "navbar-item" :on-click (fn [] - (re-frame/dispatch [::events/swap-client nil])) - } "Allo" ] + (re-frame/dispatch [::events/swap-client nil]))} "All" ] [:hr {:class "navbar-divider"}] (for [{:keys [name id] :as client} @clients] ^{:key id } @@ -133,7 +139,11 @@ right-side-bar) ] #_[footer] - bottom + [:div + [vendor-dialog {:vendor @(re-frame/subscribe [::subs/user-editing-vendor]) + :save-event [::events/save-vendor] + :change-event [::events/change-nested-form-state [:user-editing-vendor]] :id :auto-ap.views.main/user-editing-vendor}] + bottom] [:div#dz-hidden]])) diff --git a/src/cljs/auto_ap/views/pages/admin/vendors.cljs b/src/cljs/auto_ap/views/pages/admin/vendors.cljs index c54ed8bf..c45e1f9a 100644 --- a/src/cljs/auto_ap/views/pages/admin/vendors.cljs +++ b/src/cljs/auto_ap/views/pages/admin/vendors.cljs @@ -4,10 +4,10 @@ [reagent.core :as reagent] [clojure.string :as str] [auto-ap.subs :as subs] + [auto-ap.events :as main-events] [auto-ap.events.admin.vendors :as events] [auto-ap.entities.vendors :as entity] [auto-ap.views.components.address :refer [address-field]] - [auto-ap.views.components.vendor-dialog :refer [vendor-dialog]] [auto-ap.views.components.modal :refer [modal]] [auto-ap.views.components.admin.side-bar :refer [admin-side-bar]] [auto-ap.views.components.layouts :refer [side-bar-layout]] @@ -71,12 +71,9 @@ [vendors-table] [:div.is-pulled-right - [:a.button.is-primary.is-large {:on-click (dispatch-event [::events/new])} "New vendor"]] + [:a.button.is-primary.is-large {:on-click (dispatch-event [::main-events/modal-status :auto-ap.views.main/user-editing-vendor {:visible? true}])} "New vendor"]] - [vendor-dialog {:vendor editing-vendor - :save-event [::events/save] - :change-event ::events/change - :id ::admin-vendor}]])]) + ])]) {:component-did-mount (fn [] (re-frame/dispatch [::events/mounted]))})]) diff --git a/src/cljs/auto_ap/views/pages/transactions.cljs b/src/cljs/auto_ap/views/pages/transactions.cljs index f93bfbc1..028ff874 100644 --- a/src/cljs/auto_ap/views/pages/transactions.cljs +++ b/src/cljs/auto_ap/views/pages/transactions.cljs @@ -6,7 +6,6 @@ [auto-ap.views.components.date-range-filter :refer [date-range-filter]] [auto-ap.views.components.layouts :refer [appearing-side-bar side-bar-layout]] [auto-ap.views.components.modal :refer [action-modal]] - [auto-ap.views.components.vendor-dialog :refer [vendor-dialog]] [auto-ap.views.components.paginator :refer [paginator]] [auto-ap.views.components.sorter :refer [sorted-column]] [auto-ap.views.pages.transactions.form :as edit] @@ -144,17 +143,10 @@ [:div [date-range-filter {:on-change-event [::change-selected-date-range] - :value (:date-range-filter @(re-frame/subscribe [::transaction-page]))}]] - - [:div {:class " compose"} - [:a {:class "button is-primary is-outlined is-block " - :on-click (dispatch-event [::events/modal-status :auto-ap.views.main/user-editing-vendor {:visible? true}])} - [:span "New Vendor"]]]] + :value (:date-range-filter @(re-frame/subscribe [::transaction-page]))}]]] :main [transactions-content] - :bottom [:div [vendor-dialog {:vendor @(re-frame/subscribe [::subs/user-editing-vendor]) - :save-event [::events/save-vendor] - :change-event [::events/change-nested-form-state [:user-editing-vendor]] :id :auto-ap.views.main/user-editing-vendor}] + :bottom [:div [manual/modal {:import-completed [::manual-import-completed ]}]] :right-side-bar [appearing-side-bar {:visible? transaction-bar-active?} diff --git a/src/cljs/auto_ap/views/pages/unpaid_invoices.cljs b/src/cljs/auto_ap/views/pages/unpaid_invoices.cljs index 15bb705e..32892be6 100644 --- a/src/cljs/auto_ap/views/pages/unpaid_invoices.cljs +++ b/src/cljs/auto_ap/views/pages/unpaid_invoices.cljs @@ -12,7 +12,6 @@ [auto-ap.views.components.layouts :refer [appearing-side-bar side-bar-layout]] [auto-ap.views.components.modal :refer [action-modal modal]] [auto-ap.views.components.typeahead :refer [typeahead]] - [auto-ap.views.components.vendor-dialog :refer [vendor-dialog]] [auto-ap.views.components.vendor-filter :refer [vendor-filter]] [auto-ap.views.components.date-range-filter :refer [date-range-filter]] [auto-ap.views.pages.invoices.common :refer [invoice-read]] @@ -724,9 +723,8 @@ [:div [invoice-number-filter]]]] :main [unpaid-invoices-content {:status status}] - :bottom [:div [vendor-dialog {:vendor @(re-frame/subscribe [::subs/user-editing-vendor]) - :save-event [::events/save-vendor] - :change-event [::events/change-nested-form-state [:user-editing-vendor]] :id :auto-ap.views.main/user-editing-vendor}] + :bottom [:div + [check-results-dialog] [print-checks-modal] [handwrite-checks-modal]