1 let XDate = require('xdate')
4 let globals = await env.site.get_json('/_config/globals.json')
5 let nodemailer_feedback = await env.site.get_nodemailer(
6 '/_config/nodemailer_feedback.json'
8 let post_request = await _require('/_lib/post_request.jst')
9 let session_cookie = await _require('/_lib/session_cookie.jst')
15 async (page, message) => {
16 // coerce and/or validate
17 page = page.slice(0, 256)
18 mesage = message.slice(0, 65536)
19 if (page.length === 0 || message.length === 0)
22 'Minimum length check failed',
26 let transaction = await env.site.database.Transaction()
28 // initialize env.session_key, set cookie in env.response
29 await session_cookie(env, transaction)
30 await transaction.commit()
33 transaction.rollback()
37 await nodemailer_feedback.sendMail(
39 from: globals.feedback_from,
40 to: globals.feedback_to,
41 subject: 'Page: ' + page,