Add config

This commit is contained in:
Andros Fenollosa
2020-06-11 16:57:04 +02:00
parent 5a88d1cd09
commit c8cb139aad
8 changed files with 441 additions and 60 deletions

View File

@@ -5,14 +5,14 @@
[api2smtp.views.public :as view-public]))
(defroutes public
;; Urls public pages
(POST "/api/v1/email/" [] view-public/index))
;; Urls public endpoints
(POST "/api/v1/email/" [] view-public/send))
(defroutes resources-routes
;; Resources (statics)
(route/resources "/")
(route/not-found view-public/page-404))
(route/not-found view-public/error))
(def all-routes
;; Wrap routers. "resources-routes" should always be the last.

View File

@@ -1,20 +1,26 @@
;;;; Views public web
(ns api2smtp.views.public
(:require
[tadam.templates :refer [render-JSON]]
[tadam.responses :refer [response]]))
[tadam.templates :refer [render-template render-JSON]]
[tadam.responses :refer [response]]
[tadam.email :refer [send]]))
(defn index
;; View HTML
(defn send
;; View Send email
[req]
(let [name (-> :params :name)
subject (-> :params :subject)
email (-> :params :email)
message (-> :params :message)]
(let [params {:name (-> req :params :name)
:subject (-> req :params :subject)
:email (-> req :params :email)
:message (-> req :params :message)}]
;; Send email
(send "to@email.com" "Contact" (render-template "emails/contact.html" params) (render-template "emails/contact.txt" params))
;; Response OK
(render-JSON req {:status "ok"})))
(defn page-404
(defn error
;; View page 404
[req]
;; Response ERROR
(response req "{\"status\": \"error\"}" 500 "text/json;charset=utf-8"))