Skip to content

Commit ea00316

Browse files
committed
add support for cloudflare analytics
1 parent 5b1d6dd commit ea00316

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

src/net/coruscation/cerulean/render/render.clj

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,14 @@
77
[net.coruscation.cerulean.common.pages :as pages]
88
[net.coruscation.cerulean.render.context :refer [with-new-context] :as render-context]
99
[net.coruscation.cerulean.render.context-commons :refer [extra-script-global-this-name]]
10+
[net.coruscation.cerulean.server.user-config :refer [get-user-config]]
1011
[net.coruscation.cerulean.utils :refer [use-user-config]]
1112
[uix.core :refer [$]]
1213
[uix.dom.server :as dom.server]))
1314

1415
(defn template [inner serialized-assets
1516
& {:keys [ssr? server-url
17+
cloudflare-analytics-token
1618
description
1719
title
1820
extra-scripts]
@@ -67,7 +69,11 @@
6769
(raw-string "import * as exps from '/js/" module "';\n")
6870
(raw-string "window['" (extra-script-global-this-name id) "'] = exps;")]))
6971
extra-scripts)
70-
[:script {:src "/js/main.js" :type "module" :defer true}]]])))
72+
[:script {:src "/js/main.js" :type "module" :defer true}]
73+
(when cloudflare-analytics-token
74+
[:script {:defer true
75+
:src "https://static.cloudflareinsights.com/beacon.min.js"
76+
:data-cf-beacon (cheshire.core/generate-string {:token cloudflare-analytics-token})}])]])))
7177

7278
(def ^:dynamic *serialized-assets* (atom {}))
7379

@@ -84,7 +90,9 @@
8490
:ssr? true :server-url "/"
8591
:description description
8692
:title title
87-
:extra-scripts extra-scripts))))
93+
:extra-scripts extra-scripts
94+
:cloudflare-analytics-token (:token (get-user-config
95+
:cloudflare-analytics))))))
8896

8997
(defn dev-template [{:keys [uri http-roots http-config] :as req}]
9098
{:status 200

0 commit comments

Comments
 (0)