| 1 | // Router for contact form sending |
| 2 | |
| 3 | let router = require("express").Router(); |
| 4 | const mailer = require(__dirname.replace("/routes", "/utils/mailer")); |
| 5 | const params = require(__dirname.replace("/routes", "/config/parameters")); |
| 6 | |
| 7 | // Send a message through contact form |
| 8 | router.post("/messages", (req,res,next) => { |
| 9 | if (!req.xhr) |
| 10 | return res.json({errmsg: "Unauthorized access"}); |
| 11 | const from = req.body["email"]; |
| 12 | // Replace potential newline characters in subject |
| 13 | const subject = req.body["subject"].replace(/\r?\n|\r/g, " "); |
| 14 | const body = req.body["content"]; //TODO: sanitize? Why? How? |
| 15 | |
| 16 | mailer(from, params.mail.contact, subject, body, err => { |
| 17 | if (!!err) |
| 18 | return res.json({errmsg:err}); |
| 19 | // OK, everything fine |
| 20 | res.json({}); //ignored |
| 21 | }); |
| 22 | }); |
| 23 | |
| 24 | module.exports = router; |