UNPKG

@opengis/fastify-table

Version:

core-plugins

26 lines (25 loc) 990 B
import pgClients from "../../../plugins/pg/pgClients.js"; import dataDelete from "../../../plugins/crud/funcs/dataDelete.js"; export default async function editUserNotification(req, reply) { const { pg = pgClients.client, params, user, } = req; if (!user?.uid) { return reply.status(401).send({ error: "unauthorized", code: 401 }); } const author = pg && pg.pk?.["crm.notifications"] ? await pg .query("select read, author_id as author from crm.notifications where notification_id=$1", [params.id]) .then((el) => el.rows?.[0]?.author) : null; if (author && author !== user.uid && user?.user_type !== "admin") { return reply .status(403) .send({ error: "not an author of notification", code: 403 }); } const result = await dataDelete({ pg, id: params.id, table: "crm.notifications", uid: user.uid, }); return reply.status(200).send(result); }