(ns auto-ap.views.pages.admin.reminders (:require-macros [cljs.core.async.macros :refer [go]]) (:require [re-frame.core :as re-frame] [reagent.core :as reagent] [auto-ap.subs :as subs] [auto-ap.events.admin.reminders :as events] [auto-ap.views.utils :refer [login-url dispatch-value-change dispatch-event date-time->str date->str]] [cljs.reader :as edn] [auto-ap.routes :as routes] [bidi.bidi :as bidi])) (defn reminders-table [] (let [reminders (or @(re-frame/subscribe [::subs/reminders]) [])] [:table {:class "table", :style {:width "100%"}} [:thead [:tr [:th "Vendor"] [:th "Scheduled Date"] [:th "Status"] [:th "Email"]]] [:tbody (for [{:keys [id vendor scheduled sent email ]} reminders] ^{:key id} [:tr [:td (:name vendor)] [:td (date->str scheduled)] [:td (when sent [:span [:span.icon [:i.fa.fa-check]] "Sent " (date-time->str sent)]) ] [:td email]])]])) (defn admin-reminders-page [] [(with-meta (fn [] [:div [:h1.title "Reminders"] [reminders-table]]) {:component-did-mount (fn [] (re-frame/dispatch [::events/mounted]))})])