Skip to content

Commit 7d7b346

Browse files
committed
Revert back to non-hard-coded templates because that makes more sense.
1 parent 117987a commit 7d7b346

File tree

2 files changed

+18
-253
lines changed

2 files changed

+18
-253
lines changed

src/ecstatic/core.clj

+18-15
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,11 @@
33
(:require [me.raynes.cegdown :as md]
44
[fs.core :as fs]
55
[clj-rss.core :as rss]
6-
[ecstatic.layout :as layout]
76
[watchtower.core :as watcher])
8-
(:use ecstatic.io
9-
ecstatic.utils
10-
hiccup.core
11-
clj-time.format
12-
clj-time.local
13-
clj-time.coerce
7+
(:use [ecstatic io utils]
8+
[hiccup core page]
149
[clojure.tools.cli :only (cli)]
10+
[clj-time format local coerce]
1511
[clj-time.core :only (year month day)]))
1612

1713
(defn metadata [path]
@@ -84,20 +80,27 @@
8480
(apply concat)
8581
(set)))
8682

83+
(def ^:dynamic cont nil)
84+
(def ^:dynamic met nil)
85+
8786
(defn render-template
8887
[in-dir template page-content page-metadata]
89-
(if (string? template)
90-
(let [template #'layout/page]
91-
(layout/base page-metadata (template page-metadata
92-
content)))
93-
(layout/base page-metadata (template page-metadata
94-
page-content))))
88+
(let [base (read-template (str in-dir "/templates/base.clj"))
89+
template (read-template (str in-dir "/templates/" template ".clj"))
90+
base-content (binding [*ns* (the-ns 'ecstatic.core)
91+
cont page-content
92+
met page-metadata]
93+
(html (eval template)))]
94+
(binding [*ns* (the-ns 'ecstatic.core)
95+
cont base-content
96+
met page-metadata]
97+
(html5 (eval base)))))
9598

9699
(defn render-page [post in-dir & template]
97100
"Render HTML file from markdown file."
98101
(let [file (:file post)
99102
template (or (or (first template) nil)
100-
#'layout/post)
103+
"post")
101104
[prev next] (pager (all-pages in-dir) post)]
102105
(render-template in-dir
103106
template
@@ -117,7 +120,7 @@
117120
"Generate content for index.html"
118121
(println "Generating index...")
119122
(render-template in-dir
120-
#'layout/site-index
123+
"index"
121124
(all-pages (str in-dir "/posts"))
122125
{:site-name (:site-name (config in-dir))}))
123126

src/ecstatic/layout.clj

-238
This file was deleted.

0 commit comments

Comments
 (0)