35 lines
959 B
Clojure
35 lines
959 B
Clojure
(ns forms)
|
|
(def log "logs everything to the javascript console" (.-log js/console))
|
|
|
|
(defn startup []
|
|
(def form (js/document.getElementById "form"))
|
|
(log form)
|
|
(def data (js/FormData. form))
|
|
(log data)
|
|
)
|
|
|
|
(defn calc-age [dob]
|
|
(log "HELLO CHICKENS!")
|
|
(log dob)
|
|
(log "HELLO CHICKENS!")
|
|
(let [diff-ms (- js/Date. dob.getTime)
|
|
age-dt (js/Date. diff-ms)]
|
|
(log diff-ms)
|
|
(log age-dt)
|
|
(js/Math.abs (- age-dt.getUTCFullyYear 1970))))
|
|
|
|
(defn ^:export submitform [e]
|
|
(let [form (js/document.getElementById "form")
|
|
data (js/FormData. form)
|
|
birthdate (js/Date. (get data "birthdate"))
|
|
age (calc-age birthdate)]
|
|
(set! data.age age)
|
|
(log "HERE IS BIRTHDATE")
|
|
(log "birthdate" (get data "birtdate"))
|
|
(log (get data "tetanus-shot"))
|
|
(if (= (get data "tetanus-shot") "")
|
|
(set! data.-tetanus-shot "1111-11-11"))
|
|
(log data)))
|
|
|
|
(js/document.addEventListener "DOMContentLoaded" startup)
|