diff options
Diffstat (limited to 'src/chef/routes.clj')
-rw-r--r-- | src/chef/routes.clj | 56 |
1 files changed, 31 insertions, 25 deletions
diff --git a/src/chef/routes.clj b/src/chef/routes.clj index 084c7d7..4635317 100644 --- a/src/chef/routes.clj +++ b/src/chef/routes.clj @@ -7,41 +7,47 @@ [dotenv :as env] [clojure.string :as cstr] - [chef.pages.home :as cphome] - [chef.pages.admin :as cpadmin] - [chef.pages.recipe :as cprecipe] + [chef.frontend.admin.recipe-editor :as cfarecipe-editor] + [chef.frontend.admin :as cfadmin] - [chef.components.search :as ccsearch] + [chef.frontend.visitor.recipe :as cfvrecipe] + [chef.frontend.visitor.recipe.thumbnail :as cfvrthumbnail] + [chef.frontend.visitor.search :as cfvsearch] + [chef.frontend.visitor.home :as cfvhome] - [chef.pages.admin.api :as cpaapi] - [chef.pages.admin.recipe-editor :as cparecipe-editor])) + [chef.api.admin.category :as caacategory] + [chef.api.admin.recipe :as caarecipe])) -(def router [["/" {:get {:handler cphome/handler}}] - ["/recipes/:id" - ["/" {:get cprecipe/handler}] - ["/thumbnail" {:get cprecipe/thumbnail-handler}]] - ["/static/*" (rring/create-resource-handler)] - ["/admin" - ["/" {:get {:handler cpadmin/handler}}] - ["/recipe-editor/:id" {:get {:handler cparecipe-editor/handler}}]] +(def router [["/static/*" (rring/create-resource-handler)] + ;;; Visitor routes + ["/" {:get {:handler cfvhome/handler}}] + ["/recipes/:id" + ["/" {:get {:handler cfvrecipe/handler}}] + ["/thumbnail" {:get {:handler cfvrthumbnail/handler}}]] ["/components" - ["/search" {:get {:handler ccsearch/handler}}]] + ["/search" {:get {:handler cfvsearch/handler}}]] + ;;; Admin routes + ["/admin" + ["/" {:get {:handler cfadmin/handler}}] + ["/recipe-editor/:id" {:get {:handler cfarecipe-editor/handler}}]] + + ;;; API routes ["/api" ["/admin" - ["/create-category" {:post {:handler cpaapi/create-category}}] - ["/delete-category/:id" {:delete {:handler cpaapi/delete-category}}] - ["/edit-category/:id" {:post {:handler cpaapi/edit-category}}] - - ["/create-recipe" {:post {:handler cpaapi/create-recipe}}] - ["/delete-recipe/:id" {:delete {:handler cpaapi/delete-recipe}}] - ["/edit-recipe/:id" {:post {:handler cpaapi/edit-recipe}}] - - ["/delete-thumbnail/:id" {:delete {:handler cpaapi/delete-thumbnail}}]]]]) + ["/category" + ["/create" {:post {:handler caacategory/handle-create}}] + ["/:id" {:post {:handler caacategory/handle-edit} + :delete {:handler caacategory/handle-delete}}]] + ["/recipe" + ["/create" {:post {:handler caarecipe/handle-create}}] + ["/:id" {:post {:handler caarecipe/handle-edit} + :delete {:handler caarecipe/handle-delete}} + ["/thumbnail" {:delete {:handler caarecipe/handle-delete-thumbnail}}]]]]]]) (def ring-handler (delay (-> router - rring/router + (rring/router {:conflicts nil}) (rring/ring-handler (rring/redirect-trailing-slash-handler)) (rmoauth2/wrap-oauth2 {:auth {:authorize-uri (env/env "OAUTH_AUTH_URI") :access-token-uri (env/env "OAUTH_ACCESS_TOKEN_URI") |