summaryrefslogtreecommitdiff
path: root/src/org_ckons_cljs/notifications/react.cljs
blob: ae5b994e7f4339a5ce1a1e65e286dfff250c1153 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
(ns org-ckons-cljs.notifications.react
  (:require-macros [hiccups.core :as hiccups :refer [html]])
  (:require [reagent.core :as r]))

(declare reset-message)
(declare reset-errormsg)
(declare comp-message)
(declare comp-errormsg)

(def notification-state (r/atom {:message nil :errormsg nil}))

(defn reset-message [message]
  (reset! notification-state (assoc @notification-state :message message)))

(defn reset-errormsg [errormsg]
  (reset! notification-state (assoc @notification-state :errormsg errormsg)))

(defn comp-message []
  [:div {:class "alert alert-success"
         :style {:display (cond (empty? (@notification-state :message)) "none" :else "block")}}
   (@notification-state :message)])

(defn comp-errormsg []
  [:div {:class "alert alert-danger"
         :style {:display (cond (empty? (@notification-state :errormsg)) "none" :else "block")}}
   (@notification-state :errormsg)])