1 let logjson = (await import('@ndcode/logjson')).default
2 let XDate = require('xdate')
5 let globals = await env.site.get_json('/_config/globals.json')
6 let nodemailer_feedback = await env.site.get_nodemailer(
7 '/_config/nodemailer_feedback.json'
9 let post_request = await _require('/_lib/post_request.jst')
10 let session_cookie = await _require('/_lib/session_cookie.jst')
18 async (page, message) => {
19 // coerce and/or validate
20 page = page.slice(0, 256)
21 mesage = message.slice(0, 65536)
22 if (page.length === 0 || message.length === 0)
25 'Minimum length check failed',
29 let transaction = await env.site.database.Transaction()
31 // initialize env.session_key, set cookie in env.response
32 await session_cookie(env, transaction)
33 await transaction.commit()
36 transaction.rollback()
40 await nodemailer_feedback.sendMail(
42 from: globals.feedback_from,
43 to: globals.feedback_to,
44 subject: 'Page: ' + page,