Now populating the map with pins as you move across it
Unfortunately, haven't worked out how to remove the pins!
This commit is contained in:
parent
a256e492dc
commit
de5d4de763
|
@ -111,25 +111,20 @@
|
|||
[view]
|
||||
(if
|
||||
view
|
||||
(doall
|
||||
(.eachLayer
|
||||
view
|
||||
(fn [layer]
|
||||
(try
|
||||
(if
|
||||
(instance? js/L.Marker layer)
|
||||
(.removeLayer view layer))
|
||||
(catch js/Object any
|
||||
(js/console.log
|
||||
(str "Failed to remove pin '"
|
||||
layer "' from map: " any))))))))
|
||||
(let [layers (.eachLayer view (fn [l] l))]
|
||||
(doall
|
||||
(map
|
||||
#(if
|
||||
(instance? js/L.Marker %)
|
||||
(.removeLayer view %))
|
||||
layers))))
|
||||
view)
|
||||
|
||||
|
||||
(defn refresh-map-pins
|
||||
"Refresh the map pins on this map. Side-effecty; liable to be problematic."
|
||||
[]
|
||||
(let [view (map-remove-pins @(subscribe [:view]))
|
||||
(let [view @(subscribe [:view]) ;; (map-remove-pins @(subscribe [:view]))
|
||||
addresses @(subscribe [:addresses])]
|
||||
(if
|
||||
view
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
[re-frame.core :refer [dispatch reg-event-db reg-event-fx subscribe]]
|
||||
[youyesyet.canvasser-app.gis :refer [refresh-map-pins get-current-location]]
|
||||
[youyesyet.canvasser-app.state :as db]
|
||||
[youyesyet.locality :refer [locality]]
|
||||
))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -140,11 +141,10 @@
|
|||
(reg-event-fx
|
||||
:fetch-locality
|
||||
(fn [{db :db} _]
|
||||
(let [uri (str source-host
|
||||
"rest/get-local-data?latitude="
|
||||
(:latitude db)
|
||||
"&longitude="
|
||||
(or (:longitude db) -4))]
|
||||
(let [locality (locality (:latitude db) (:longitude db))
|
||||
uri (str source-host
|
||||
"rest/get-local-data?locality="
|
||||
locality)]
|
||||
(js/console.log
|
||||
(str
|
||||
"Fetching locality data: " uri))
|
||||
|
@ -157,7 +157,6 @@
|
|||
:on-failure [:bad-locality]}
|
||||
:db (add-to-feedback db :fetch-locality)})))
|
||||
|
||||
;; http://localhost:3000/rest/get-local-data?latitude=54.85131525968606&longitude=
|
||||
|
||||
(reg-event-db
|
||||
:get-current-location
|
||||
|
@ -170,7 +169,7 @@
|
|||
:process-locality
|
||||
(fn
|
||||
[db [_ response]]
|
||||
(js/console.log "Updating locality data")
|
||||
(js/console.log (str "Updating locality data: " (count response) " addresses"))
|
||||
;; loop to do it again
|
||||
(dispatch [:dispatch-later [{:ms 5000 :dispatch [:fetch-locality]}
|
||||
{:ms 1000 :dispatch [:get-current-location]}]])
|
||||
|
|
Loading…
Reference in a new issue