Skip to content

Commit

Permalink
Lag en side til hver matvare, på både norsk og engelsk
Browse files Browse the repository at this point in the history
Co-authored-by: Magnar Sveen <magnar.sveen@mattilsynet.no>
  • Loading branch information
cjohansen and magnars committed Oct 13, 2023
1 parent a38427c commit 9f5c779
Show file tree
Hide file tree
Showing 3 changed files with 44 additions and 13 deletions.
4 changes: 3 additions & 1 deletion resources/app-schema.edn
@@ -1 +1,3 @@
[]
[{:db/ident :food/id
:db/valueType :db.type/string
:db/cardinality :db.cardinality/one}]
24 changes: 21 additions & 3 deletions src/matvaretabellen/ingest.clj
@@ -1,9 +1,27 @@
(ns matvaretabellen.ingest
(:require [datomic-type-extensions.api :as d]
[matvaretabellen.pages :as pages]))
[matvaretabellen.pages :as pages]
[matvaretabellen.urls :as urls]))

(defn on-started [_foods-conn powerpack-app]
@(d/transact (:datomic/conn powerpack-app) pages/static-pages))
(defn get-food-pages [db]
(->> (d/q '[:find ?food-id ?food-name
:where
[?f :food/id ?food-id]
[?f :food/name ?food-name]]
db)
(mapcat
(fn [[id i18n-names]]
(for [[locale food-name] i18n-names]
{:page/uri (urls/get-url locale food-name)
:page/kind :page.kind/food
:page/locale locale
:food/id id})))))

(defn on-started [foods-conn powerpack-app]
(->> pages/static-pages
(concat (get-food-pages (d/db foods-conn)))
(d/transact (:datomic/conn powerpack-app))
deref))

(defn create-tx [_file-name datas]
datas)
29 changes: 20 additions & 9 deletions src/matvaretabellen/pages.clj
Expand Up @@ -7,22 +7,22 @@

(def static-pages
[{:page/uri "/"
:page/kind :frontpage
:page/kind :page.kind/frontpage
:page/locale :nb}
{:page/uri "/en/"
:page/kind :frontpage
:page/kind :page.kind/frontpage
:page/locale :en}
{:page/uri "/index/nb.json"
:page/kind :foods-index
:page/kind :page.kind/foods-index
:page/locale :nb}
{:page/uri "/index/en.json"
:page/kind :foods-index
:page/kind :page.kind/foods-index
:page/locale :en}
{:page/uri "/foods/nb.json"
:page/kind :foods-lookup
:page/kind :page.kind/foods-lookup
:page/locale :nb}
{:page/uri "/foods/en.json"
:page/kind :foods-lookup
:page/kind :page.kind/foods-lookup
:page/locale :en}])

(defn render-foods-index [db page]
Expand Down Expand Up @@ -54,11 +54,22 @@
:input {:name "foods-search"}
:autocomplete-id "foods-results"})]])))

(defn render-food-page [context db page]
(let [food (d/entity (:foods/db context) [:food/id (:food/id page)])]
(html/render-hiccup
context
page
(list
(SiteHeader {:home-url "/"})
[:div.container
[:h1 (get-in food [:food/name (:page/locale page)])]]))))

(defn render-page [context page]
(let [db (:foods/db context)]
(case (:page/kind page)
:foods-index (render-foods-index db page)
:foods-lookup (render-foods-lookup db page)
:frontpage (render-frontpage context db page)
:page.kind/foods-index (render-foods-index db page)
:page.kind/foods-lookup (render-foods-lookup db page)
:page.kind/frontpage (render-frontpage context db page)
:page.kind/food (render-food-page context db page)
))
)

0 comments on commit 9f5c779

Please sign in to comment.