(ns luduverse.handler (:require [compojure.core :refer :all] [compojure.route :as route] [noir.util.middleware :as middleware] [luduverse.pages :as pages] [luduverse.images :as images] [luduverse.search :as search])) (defn render [template & args] (apply str (apply template args))) (defroutes core-routes (route/resources "/") (GET "/" [] (render pages/landingpage-template)) (POST "/search" {params :params} (let [term (params "term") s (search/search term) hits (:hit-count s) entries (:results s)] (render pages/results-template term hits entries))) (route/not-found "404, sorry.")) (defn init []) (defn destroy []) (def app (middleware/app-handler [core-routes] :middleware [] :access-rules [] :formats [:json-kw :edn]))