derv-net/routes/comment.js

38 lines
No EOL
991 B
JavaScript

import { Router } from "express";
import { initDb } from "../db.js";
import { replyIterator } from "../lib.js";
const router = Router();
let db = await initDb();
//todo: fix jank
router.get('/:id', async (req, res, next) => {
let replies = [];
let feeder = req.params.id;
let feederType = 'comment';
while (true) {
let tmpReplies = await db.all('SELECT * FROM feeder WHERE childType = ? AND childId = ?', [
feederType,
feeder,
]);
if (tmpReplies.length == 0) {
replies.splice(0,0,{childType: feederType, childId: feeder})
break;
}
feeder = tmpReplies[0].parentId;
feederType = tmpReplies[0].parentType;
replies.splice(0,0,tmpReplies[0])
}
replies = await replyIterator(replies,db);
replies = replies.filter(x => x.comment != 'fail');
res.ctx.mainPage = 'commenter'
res.ctx.mainCtx = {
replies
}
next();
})
export default router;