Browse Source

some refactoring

master
Christian Mueller 14 years ago
parent
commit
04d64879a5
  1. 3
      src-cljs/main.cljs
  2. 1
      src/NoteHub/views/common.clj
  3. 26
      src/NoteHub/views/css_generator.clj
  4. 9
      src/NoteHub/views/pages.clj
  5. 4
      test/NoteHub/test/views/pages.clj

3
src-cljs/main.cljs

@ -33,12 +33,11 @@
; to the preview layer and scroll to it ; to the preview layer and scroll to it
(.click ($ :#preview-button) (.click ($ :#preview-button)
(fn [e] (fn [e]
(do
(fm/remote (get-preview-md (val $session-key) (val $draft)) [{:keys [preview session-key]}] (fm/remote (get-preview-md (val $session-key) (val $draft)) [{:keys [preview session-key]}]
(show $preview-start-line) (show $preview-start-line)
(inner $preview preview) (inner $preview preview)
(val $session-key session-key) (val $session-key session-key)
(scroll-to $preview-start-line))))) (scroll-to $preview-start-line))))
(.click ($ :#publish-button) (.click ($ :#publish-button)
(fn [e] (fn [e]

1
src/NoteHub/views/common.clj

@ -22,6 +22,7 @@
(html5 (html5
[:head [:head
[:title (print-str (get-message :name) "—" title)] [:title (print-str (get-message :name) "—" title)]
[:meta {:charset "UTF-8"}]
; generating a link to google's webfonts ; generating a link to google's webfonts
[:link {:href [:link {:href
(clojure.string/replace (clojure.string/replace

26
src/NoteHub/views/css_generator.clj

@ -1,7 +1,6 @@
(ns NoteHub.views.css-generator (use 'cssgen.use)
(:use [cssgen] (css-ns NoteHub.views.css-generator
[NoteHub.settings] (:use [NoteHub.settings]))
[cssgen.types]))
(defn- gen-fontlist [& fonts] (defn- gen-fontlist [& fonts]
(apply str (apply str
@ -11,8 +10,7 @@
; CSS Mixins ; CSS Mixins
(def page-width (def page-width
(mixin (px (get-setting :page-width #(Integer/parseInt %) 800)))
:width (px (get-setting :page-width #(Integer/parseInt %) 800))))
(def helvetica-neue (def helvetica-neue
(mixin (mixin
@ -25,7 +23,7 @@
(def central-element (def central-element
(mixin (mixin
page-width :width page-width
:margin-top :5em :margin-top :5em
:margin-bottom :10em :margin-bottom :10em
:margin-left "auto" :margin-left "auto"
@ -37,14 +35,14 @@
:foreground :#ccc :foreground :#ccc
:background-halftone :#444 :background-halftone :#444
:foreground-halftone :#bbb :foreground-halftone :#bbb
:link-color {:fresh :#6b8 :link {:fresh :#6b8
:visited :#496 :visited :#496
:hover :#7c9 }} :hover :#7c9 }}
:default {:background :#fff :default {:background :#fff
:foreground :#333 :foreground :#333
:background-halftone :#efefef :background-halftone :#efefef
:foreground-halftone :#888 :foreground-halftone :#888
:link-color {:fresh :#097 :link {:fresh :#097
:visited :#054 :visited :#054
:hover :#0a8 }}} keys)) :hover :#0a8 }}} keys))
@ -59,9 +57,9 @@
foreground (color theme :foreground) foreground (color theme :foreground)
background-halftone (color theme :background-halftone) background-halftone (color theme :background-halftone)
foreground-halftone (color theme :foreground-halftone) foreground-halftone (color theme :foreground-halftone)
link-fresh (color theme :link-color :fresh) link-fresh (color theme :link :fresh)
link-visited (color theme :link-color :visited) link-visited (color theme :link :visited)
link-hover (color theme :link-color :hover)] link-hover (color theme :link :hover)]
(css (css
(rule "a" (rule "a"
:color link-fresh :color link-fresh
@ -97,7 +95,7 @@
:text-align :justify :text-align :justify
:vertical-align :top :vertical-align :top
; Replace this by arithmetic with css-lengths as soon as they fix the bug ; Replace this by arithmetic with css-lengths as soon as they fix the bug
:width (px (quot (get-setting :page-width #(Integer/parseInt %) 800) 3))) :width (/ page-width 3.0))
(rule ".helvetica-neue" (rule ".helvetica-neue"
helvetica-neue) helvetica-neue)
(rule "#hero" (rule "#hero"
@ -129,7 +127,7 @@
(rule "*:focus" (rule "*:focus"
:outline [:0px :none :transparent]) :outline [:0px :none :transparent])
(rule "textarea" (rule "textarea"
page-width :width page-width
:font-family :Courier :font-family :Courier
:font-size :1em :font-size :1em
:border :none :border :none

9
src/NoteHub/views/pages.clj

@ -21,9 +21,13 @@
[java.util Calendar] [java.util Calendar]
[org.pegdown PegDownProcessor])) [org.pegdown PegDownProcessor]))
; Create a new Object of the MD-processor
(def md-processor
(PegDownProcessor.))
; Markdown -> HTML mapper ; Markdown -> HTML mapper
(defn md-to-html [md-text] (defn md-to-html [md-text]
(.markdownToHtml (PegDownProcessor.) md-text)) (.markdownToHtml md-processor md-text))
; Creates a random session token ; Creates a random session token
(defn- get-flash-key [] (defn- get-flash-key []
@ -75,7 +79,8 @@
(for [e [:column-why :column-how :column-geeks]] (for [e [:column-why :column-how :column-geeks]]
(html (html
[:td.one-third-column [:td.one-third-column
[:h2 (get-message e)] (md-to-html (get-message (keyword (str (name e) "-long"))))]))]] [:h2 (get-message e)]
(md-to-html (get-message (keyword (str (name e) "-long"))))]))]]
[:div.centered.helvetica-neue (md-to-html (get-message :created-by))])) [:div.centered.helvetica-neue (md-to-html (get-message :created-by))]))
; New Note Page ; New Note Page

4
test/NoteHub/test/views/pages.clj

@ -25,8 +25,8 @@
(deftest helper-functions (deftest helper-functions
(testing "Markdown generation" (testing "Markdown generation"
(is (= "<h1><em>hello</em> <strong>world</strong></h1><p>test <code>code</code></p>" (is (= "<h1><em>hellö</em> <strong>world</strong></h1><p>test <code>code</code></p>"
(md-to-html "#_hello_ __world__\ntest `code`"))))) (md-to-html "#_hellö_ __world__\ntest `code`")))))
(deftest export-test (deftest export-test
(testing "Markdown export" (testing "Markdown export"
(has-body (send-request (url 2012 6 3 "some-title" "export")) test-note))) (has-body (send-request (url 2012 6 3 "some-title" "export")) test-note)))

Loading…
Cancel
Save