Store contact and feedback logs in /database.logjson rather than /_logs/*.json
[ndcode_site.git] / feedback.html.jst
index 11d951f..38fe202 100644 (file)
@@ -24,12 +24,17 @@ return async env => {
     date = new XDate()
     query.date = date.toUTCString()
 
-    await env.site.ensure_dir('/_logs')
-    env.site.modify_json(
-      `/_logs/feedback_${date.toUTCString('yyyyMMdd')}.json`,
-      [],
-      async result => {result.value.push(query)}
-    )
+    let transaction = env.site.database.Transaction()
+    ;(
+      await (
+        await (
+          await (
+            await transaction.get({})
+          ).get('logs', {})
+        ).get(date.toUTCString('yyyyMMdd'), {})
+      ).get('feedback', [])
+    ).push(transaction.json_to_logjson(query))
+    transaction.commit()
 
     // send email (asynchronously)
     let emailjs_feedback = await env.site.get_emailjs(