import { getCommentLike, createCommentLike, deleteCommentLike, getCommentLikeCount, syncCommentLikeCount, } from "../../db/community"; /** * POST /api/community/comment-like * Body: { commentId } * Toggled Like auf einem Kommentar. */ export default defineEventHandler(async (event) => { const user = await requireUser(event); const { commentId } = (await readBody(event)) as { commentId: string }; if (!commentId) { throw createError({ statusCode: 400, message: "commentId erforderlich" }); } const existing = await getCommentLike(user.id, commentId); let userLike: boolean; if (existing) { await deleteCommentLike(user.id, commentId); userLike = false; } else { await createCommentLike(user.id, commentId); userLike = true; } const count = await getCommentLikeCount(commentId); await syncCommentLikeCount(commentId, count); return { likesCount: count, userLike }; });