Selmer style and script tags are not working cleanly for me.

This commit is contained in:
Simon Brooke 2021-05-17 08:22:21 +01:00
parent a805f3ccc5
commit d43eb22cd3
No known key found for this signature in database
GPG key ID: A7A4F18D1D4DF987
6 changed files with 84 additions and 63 deletions

8
.gitignore vendored
View file

@ -49,3 +49,11 @@ youyesyet\.dump\.20180816
*.tar *.tar
src/clj/youyesyet/cache\.clj src/clj/youyesyet/cache\.clj
.lsp/sqlite.db
.settings/
.classpath
.project

View file

@ -51,7 +51,7 @@
[ring/ring-servlet "1.7.1"] [ring/ring-servlet "1.7.1"]
[ring-webjars "0.2.0"] [ring-webjars "0.2.0"]
[secretary "1.2.3"] [secretary "1.2.3"]
[selmer "1.12.17"]] [selmer "1.12.40"]]
:deploy-repositories [["releases" :clojars] :deploy-repositories [["releases" :clojars]
["snapshots" :clojars]] ["snapshots" :clojars]]

View file

@ -42,13 +42,13 @@
{% endblock %} {% endblock %}
{% block extra-tail %} {% block extra-tail %}
<!-- scripts and styles --> <!-- scripts and styles -->
<!-- ATTENTION \/ -->
<!-- ATTENTION /\ -->
<!-- Leaflet --> <!-- Leaflet -->
<link rel="stylesheet" href="js/lib/node_modules/leaflet/dist/leaflet.css" /> <link rel="stylesheet" href="{{servlet-context}}/js/lib/node_modules/leaflet/dist/leaflet.css" />
{% script "js/lib/node_modules/signature_pad/dist/signature_pad.min.js" %} <script src="{{servlet-context}}/js/lib/node_modules/leaflet/dist/leaflet.js"></script>
{% script "js/lib/node_modules/leaflet/dist/leaflet.js" %} <!-- Signature pad -->
{% script "/js/app.js" %} <script src="{{servlet-context}}/js/lib/node_modules/signature_pad/dist/signature_pad.min.js"></script>
<!-- our actual app -->
<script src="{{servlet-context}}/js/app.js"></script>
{% endblock %} {% endblock %}

View file

@ -6,17 +6,20 @@
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/> <meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="referrer" content="same-origin"> <meta name="referrer" content="same-origin">
{% style "/css/yyy-common.css" %} <link rel="stylesheet" type="text/css" href="{{servlet-context}}/css/yyy-common.css" />
{% style "/css/yyy-site.css" %} <link rel="stylesheet" type="text/css" href="{{servlet-context}}/css/yyy-site.css" />
{% style "/css/spinner.css" %} <link rel="stylesheet" type="text/css" href="{{servlet-context}}/css/spinner.css" />
<link href="https://fonts.googleapis.com/css?family=Archivo+Black|Archivo+Narrow" rel="stylesheet"/> <link href="https://fonts.googleapis.com/css?family=Archivo+Black|Archivo+Narrow" rel="stylesheet"/>
{% script "/js/lib/node_modules/jquery/dist/jquery.min.js" %} <script src="{{servlet-context}}/js/lib/node_modules/jquery/dist/jquery.min.js"></script>
<title>{{site-title}}: {{title}}</title> <title>{{site-title}}: {{title}}</title>
{% endblock %} {% endblock %}
{% block extra-head %} {% block extra-head %}
<!-- extra-head: put any additional markup to go into the head of your document into this block --> <!-- extra-head: put any additional markup to go into the head of your document into this block -->
<!-- e.g. script tags, link tags --> <!-- e.g. script tags, link tags -->
{% endblock %} {% endblock %}
{% if servlet-context %}
<!-- Servlet context is {{servlet-context}} -->
{% endif %}
</head> </head>
<body> <body>
{% block whole-page %} {% block whole-page %}
@ -87,12 +90,12 @@
<!-- foot: override this block if you don't want the standard footer --> <!-- foot: override this block if you don't want the standard footer -->
<footer> <footer>
<div id="credits"> <div id="credits">
<!-- div> <div>
<img src="{{servlet-context}}/img/credits/ric-logo.png" width="24" height="24"/> <img src="{{servlet-context}}/img/credits/ric-logo.png" width="24" height="24"/>
A project of the A project of the
<a href="https://radical.scot/">Radical Independence Campaign</a> || <a href="https://radical.scot/">Radical Independence Campaign</a> ||
Version {{version}} Version {{version}}
</div --> </div>
<div> <div>
<img height="16" width="16" alt="Clojure" src="{{servlet-context}}/img/credits/luminus-logo.png"/>Built with <a href="http://www.luminusweb.net/">LuminusWeb</a> || <img height="16" width="16" alt="Clojure" src="{{servlet-context}}/img/credits/luminus-logo.png"/>Built with <a href="http://www.luminusweb.net/">LuminusWeb</a> ||
<img height="16" width="16" alt="Clojure" src="{{servlet-context}}/img/credits/clojure-icon.gif"/> Powered by <a href="http://clojure.org">Clojure</a> || <img height="16" width="16" alt="Clojure" src="{{servlet-context}}/img/credits/clojure-icon.gif"/> Powered by <a href="http://clojure.org">Clojure</a> ||

View file

@ -12,8 +12,7 @@
[youyesyet.db.core :as db-core] [youyesyet.db.core :as db-core]
[youyesyet.layout :as layout] [youyesyet.layout :as layout]
[youyesyet.oauth :as oauth] [youyesyet.oauth :as oauth]
[compojure.core :refer [defroutes GET POST]] [compojure.core :refer [defroutes GET POST]]))
))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;; ;;;;
@ -48,9 +47,10 @@
(if (.exists motd) (slurp motd) ""))) (if (.exists motd) (slurp motd) "")))
(defn about-page [] (defn about-page [request]
(layout/render "md.html" {:title (layout/render "md.html" {:title
(str "About " (:site-title env)) (str "About " (:site-title env))
:servlet-context (:servlet-context request)
:content (md-to-html-string (slurp (io/resource "about.md")))})) :content (md-to-html-string (slurp (io/resource "about.md")))}))
@ -62,12 +62,14 @@
(layout/render "call-me-accepted.html" (:session request) (:params request))) (layout/render "call-me-accepted.html" (:session request) (:params request)))
(layout/render "call-me.html" (:session request) (layout/render "call-me.html" (:session request)
{:title "Please call me!" {:title "Please call me!"
:servlet-context (:servlet-context request)
;; TODO: Issues need to be fetched from the database ;; TODO: Issues need to be fetched from the database
:concerns (db-core/list-issues db-core/*db* {})}))) :concerns (db-core/list-issues db-core/*db* {})})))
(defn home-page [] (defn home-page [request]
(layout/render "home.html" {:title "You yes yet?" (layout/render "home.html" {:title "You yes yet?"
:servlet-context (:servlet-context request)
:motd (md-to-html-string (motd))})) :motd (md-to-html-string (motd))}))
@ -77,7 +79,7 @@
(let [params (keywordize-keys (:params request)) (let [params (keywordize-keys (:params request))
session (:session request) session (:session request)
username (:username params) username (:username params)
user (if username (db-core/get-canvasser-by-username db-core/*db* {:username username})) user (when username (db-core/get-canvasser-by-username db-core/*db* {:username username}))
password (:password params) password (:password params)
redirect-to (or redirect-to (or
(:redirect-to params) (:redirect-to params)
@ -109,6 +111,7 @@
(layout/render (layout/render
"login.html" "login.html"
{:title (str "User " username " is unknown") {:title (str "User " username " is unknown")
:servlet-context (:servlet-context request)
:redirect-to redirect-to :redirect-to redirect-to
:warnings ["Your user name was not recognised or your password did not match"]}) :warnings ["Your user name was not recognised or your password did not match"]})
;; if we've no username, just invite the user to log in ;; if we've no username, just invite the user to log in
@ -116,19 +119,22 @@
(layout/render (layout/render
"login.html" "login.html"
{:title "Please log in" {:title "Please log in"
:servlet-context (:servlet-context request)
:redirect-to redirect-to :redirect-to redirect-to
:authorities (db-core/list-authorities db-core/*db*)})))) :authorities (db-core/list-authorities db-core/*db*)}))))
(defroutes home-routes (defroutes home-routes
(GET "/" [] (home-page)) (GET "/" [request] (home-page request))
(GET "/home" [] (home-page)) (GET "/home" [request] (home-page request))
(GET "/about" [] (about-page)) (GET "/about" [request] (about-page request))
(GET "/call-me" [] (call-me-page nil)) (GET "/call-me" [request] (call-me-page request))
(POST "/call-me" request (call-me-page request)) (POST "/call-me" request (call-me-page request))
(GET "/login" request (login-page request)) (GET "/login" request (login-page request))
(POST "/login" request (login-page request)) (POST "/login" request (login-page request))
(GET "/notyet" [] (layout/render "notyet.html" (GET "/notyet" [request] (layout/render "notyet.html"
{:title "Can we persuade you?"})) {:title "Can we persuade you?"
(GET "/supporter" [] (layout/render "supporter.html" :servlet-context (:servlet-context request)}))
{:title "Have you signed up as a canvasser yet?"}))) (GET "/supporter" [request] (layout/render "supporter.html"
{:title "Have you signed up as a canvasser yet?"
:servlet-context (:servlet-context request)})))

View file

@ -15,8 +15,9 @@
[youyesyet.routes.auto :as auto])) [youyesyet.routes.auto :as auto]))
(defn roles-page [request] (defn roles-page
"Render the routing page for the roles the currently logged in user is member of." "Render the routing page for the roles the currently logged in user is member of."
[request]
(let (let
[session (:session request) [session (:session request)
user (-> request :session :user) user (-> request :session :user)
@ -29,6 +30,7 @@
(layout/render (layout/render
"roles.html" "roles.html"
{:title (str "Welcome " (:fullname user) ", what do you want to do?") {:title (str "Welcome " (:fullname user) ", what do you want to do?")
:servlet-context (:servlet-context request)
:user user :user user
:roles (map #(assoc % :link (safe-name (:name %) :sql)) roles)}) :roles (map #(assoc % :link (safe-name (:name %) :sql)) roles)})
(assoc (response/found "/login") :session (dissoc session :user))))) (assoc (response/found "/login") :session (dissoc session :user)))))
@ -38,7 +40,8 @@
[request] [request]
(layout/render (layout/render
(support/resolve-template "application-index.html") (support/resolve-template "application-index.html")
{:title "Administrative menu"})) {:title "Administrative menu"
:servlet-context (:servlet-context request)}))
(defn analysts-page (defn analysts-page
@ -48,21 +51,22 @@
[request] [request]
(layout/render (layout/render
(support/resolve-template "application-index.html") (support/resolve-template "application-index.html")
{:title "Administrative menu"})) {:title "Administrative menu"
:servlet-context (:servlet-context request)}))
(defn canvassers-page (defn canvassers-page
[request] [request]
(layout/render (layout/render
"roles/canvasser.html" "roles/canvasser.html"
{})) {:servlet-context (:servlet-context request)}))
(defn team-organisers-page (defn team-organisers-page
[request] [request]
(layout/render (layout/render
"roles/team-orgenisers.html" "roles/team-orgenisers.html"
{})) {:servlet-context (:servlet-context request)}))
(defroutes roles-routes (defroutes roles-routes