From eb354fdcda09fcba2681b4c8cd96894008482fe4 Mon Sep 17 00:00:00 2001 From: Simon Brooke Date: Mon, 10 Feb 2020 15:58:04 +0000 Subject: [PATCH] Made 'map' the default page, moved documentation to 'about'. --- .gitignore | 2 + .../public/img/map-pins/Developer-pin.png | Bin 361 -> 2013 bytes src/cljs/geocsv/client/core.cljs | 71 ++++++++---------- src/cljs/geocsv/client/db.cljs | 2 +- src/cljs/geocsv/client/events.cljs | 14 +++- 5 files changed, 46 insertions(+), 43 deletions(-) diff --git a/.gitignore b/.gitignore index 23793cd..164b6fb 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,5 @@ resources/docs/orig.md resources/public/img/map-pins/colours/*.svg resources/public/img/map-pins/colours/*.png + +.rebel_readline_history diff --git a/resources/public/img/map-pins/Developer-pin.png b/resources/public/img/map-pins/Developer-pin.png index 62c76a96c79ac4e1f22bed00fabaffc7ec7cb3fe..9cad06303825484fcfdcd643164b17db451d15a2 100644 GIT binary patch delta 1840 zcmV-02haHF0^JWGiBL{Q4GJ0x0000DNk~Le0000U0000e2nGNE0O=D-5|JSq3l72n z01mslfnxa;OU~PO^WGX1D zf(!@@0>TXE-m@Q&$_zu-q3)C156{ba{`dc!bDndK!b2&4C@6@Gi;Me<(Wq_IG()3JMA$(Z`YE7$_mY~ELtbVk`P;XXCd7D!W+EvmLnCEn=PxP> ze=wWPB?hBWdwtom&JL$@XbNaq8Gp>kU@$wIfyzo;B_(9c6c`{ib!a3nud`EC_19Hh zH@I9b@73U-ufJx_#fzLtNI(dIGCGQT)heC=+`k2XJR`&F{o#ky`KqpCGMR)P9FU&Q z(Bj1`pKQy_WI#$#W?XPEnS`$EnAPb5s;anZv*8>WK?P70h7Q=LohzR8V z{amuy@L4Q~9Xn{AKcA7{I4NP}N}diEcv{A_wb)`}5Ic5ot*3{G<;(F_RpD5_o}S5Z zd-jljT31I>xKj`k*ylspxRFIKy+r5Dn^@Z0u~@B)z4smq91iMVcmXef$AhW7oGeX4 z>FYy{k4HQ%aL7_uR^sgLW>&CW(@-{VCTDnfeB8lkzo zJC~u}ULwBwir-(pj5Rlxen8o{+ZUR^Z*gALqO8l07+p zPEnw|oGYcJERYiR?BPmrF?T~U-o1OA?V?5WH#U-Bw=*{3vsw`y9Yj@BkgTf6{Cw`0 zmU25UkHNk^OhZF~-{2soo*vADgX4N{Z{Xq!VBFr0#o=HyHy7`cCG@}lKL45Um6UKd zF%kdq<2c~ap9AFQGf-5-tzgD0R^WYqu}%z$)lswcQt?y zKH#aUD&|bKnM~-Pea6+25^|)3;$jv|_&grW(*lQT0JXK)ZrviHxR|cV_Ldf+fBqS3 zaC}=EQEvBCduuCE(*lQ*n>UGUX(1W{fpc=W-`X0u096$^ZypbFbEhuM%uI%VC+ojj z&R>(#Qf@aj(b&{PX(VLr@m6gSaqJZ1Y zESHN>qY(+?mj$mkaE+KuNV^@;-Hk~Gy+aZb82k9+XR^E!EZ47l5fx zlC^8sW(grO6h$!yxy-7{Ut?nYuFA^q>Z78>FLU|UTLrndZ^wFng-~`$DFe2Zl+q8l zYiep*Cfmc>M(ftCa|q#UeeuQiu1%XRUkA8!$zk2OGcVs@FytLOcI^D)<_fE29yxNP zN7LAM>eQT6pU-FjsIN~+QdM~~9MG_V0fZ3$^!e0?y1Kcu0h*g_Rw0xV;pPb&xVE;o z3*>iobt%b07?sX<&X_nUW&Qsh_~EdFZnr)0%o(Rc(-afX7;c6cJ;4eJ3L@?H*gF=> zSk&;adhh7bnz`ZTm=WW;y1G$KQ}*7!Z=R)ThC?&SG2@GX*=+th$osmkADwBA8OxeA eYc?~(>H04r)2g9}8;ckK0000|pZ#*pCY;uyj)lQEQG)qloy>tq(cfB#O&(UI-_{rmi{SROzAq{6`Pjs47-Z%oqC zOe`$I!c4y;BpCjzS;HVMEc}a|div.container>div.content - [:img {:src "/img/warning_clojure.png"}] - (when-let [images @(rf/subscribe [:available-pin-images])] - [:div - [:h2 "The following pin images are available on this server"] - (apply - vector - (cons - :ol - (map - #(vector - :ol - [:img - {:src - (str - "img/map-pins/" - (s/capitalize - (s/replace - (s/lower-case - (str %)) - #"[^a-z0-9]" "-")) - "-pin.png") - :alt %}] - " " - %) - (sort images))))])]) - -(defn home-page [] - [:section.section>div.container>div.content - (when-let [docs @(rf/subscribe [:docs])] - [:div {:dangerouslySetInnerHTML {:__html (md->html docs)}}])]) + [:div + (when-let [docs @(rf/subscribe [:docs])] + [:div {:dangerouslySetInnerHTML {:__html (md->html docs)}}]) + (when-let [images @(rf/subscribe [:available-pin-images])] + [:div + [:h2 "The following pin images are available on this server"] + (apply + vector + (cons + :ol + (map + #(vector + :ol + [:img + {:src + (str + "img/map-pins/" + (s/capitalize + (s/replace + (s/lower-case + (str %)) + #"[^a-z0-9]" "-")) + "-pin.png") + :alt %}] + " " + %) + (sort images))))])]]) (defn map-page [] "Return the content for the main map page. Map showing current location." @@ -77,8 +73,7 @@ (mv/panel)) (def pages - {:home #'home-page - :map #'map-page + {:map #'map-page :about #'about-page}) (defn page [] @@ -92,14 +87,12 @@ (def router (reitit/router - [["/" {:name :home - :view #'home-page - :controllers [{:start (fn [_] (rf/dispatch [:init-home]))}]}] - ["/map" {:name :map + [["/" {:name :map :view #'map-page :controllers [{:start (fn [_] (rf/dispatch [:init-map]))}]}] ["/about" {:name :about - :view #'about-page}]])) + :view #'about-page + :controllers [{:start (fn [_] (rf/dispatch [:init-about]))}]}]])) (defn start-router! [] (rfe/start! diff --git a/src/cljs/geocsv/client/db.cljs b/src/cljs/geocsv/client/db.cljs index 557dec3..19a0afd 100644 --- a/src/cljs/geocsv/client/db.cljs +++ b/src/cljs/geocsv/client/db.cljs @@ -38,5 +38,5 @@ "Power-supplier"} ;; need to be fetched from server side :latitude 56 :longitude -4 - :page :home + :page :about :zoom 1}) diff --git a/src/cljs/geocsv/client/events.cljs b/src/cljs/geocsv/client/events.cljs index 5b6da4a..e49325e 100644 --- a/src/cljs/geocsv/client/events.cljs +++ b/src/cljs/geocsv/client/events.cljs @@ -50,6 +50,12 @@ (js/console.log (str "Failed to fetch data data" response)) db)) +(rf/reg-event-db + :bad-docs + (fn [db [_ _]] + (js/console.log "Failed to fetch docs") + (assoc db :docs "**WARNING:** failed to fetch documentation from server."))) + (rf/reg-event-db :common/set-error (fn [db [_ error]] @@ -96,10 +102,11 @@ {:http-xhrio {:method :get :uri "/docs" :response-format (ajax/raw-response-format) - :on-success [:set-docs]}})) + :on-success [:set-docs] + :on-failure [:bad-docs]}})) (rf/reg-event-fx - :init-home + :init-about (fn [_ _] {:dispatch [:fetch-docs]})) @@ -152,7 +159,7 @@ (fn [{db :db} [_ response]] (let [db' (assoc db :available-pin-images (set response))] - (js/console.log (str "processing pin images")) + (js/console.log "processing pin images") {:db (if (:view db') (refresh-map-pins db') @@ -161,6 +168,7 @@ (rf/reg-event-db :set-docs (fn [db [_ docs]] + (js/console.log "Successfully fetched docs") (assoc db :docs docs))) (rf/reg-event-db