Compare commits

...

2 Commits

Author SHA1 Message Date
pluja
6a9f5f5e99 Release 202506151438 2025-06-15 14:38:24 +00:00
pluja
e6edee2dbe Release 202506151429 2025-06-15 14:29:34 +00:00
2 changed files with 25 additions and 22 deletions

View File

@@ -270,6 +270,18 @@ export const commentActions = {
}
}
const isRelatedToService = !!(await tx.serviceUser.findUnique({
where: {
userId_serviceId: {
userId: context.locals.user.id,
serviceId: input.serviceId,
},
},
select: {
id: true,
},
}))
// Prepare data object with proper type safety
const commentData: Prisma.CommentCreateInput = {
content: input.content,
@@ -277,7 +289,12 @@ export const commentActions = {
author: { connect: { id: context.locals.user.id } },
// Change status to HUMAN_PENDING if there's an issue report, this is so that the AI worker does not pick it up for review
status: context.locals.user.admin ? 'APPROVED' : isIssueReport ? 'HUMAN_PENDING' : 'PENDING',
status:
context.locals.user.admin || context.locals.user.moderator || isRelatedToService
? 'APPROVED'
: isIssueReport
? 'HUMAN_PENDING'
: 'PENDING',
requiresAdminReview,
orderId: input.orderId?.trim() ?? null,
kycRequested: input.issueKycRequested === true,

View File

@@ -1,4 +1,3 @@
import { ActionError } from 'astro:actions'
import { z } from 'astro:content'
import { defineProtectedAction } from '../lib/defineProtectedAction'
@@ -58,28 +57,15 @@ export const notificationActions = {
accept: 'json',
permissions: 'guest',
input: z.object({
endpoint: z.string().optional(),
endpoint: z.string(),
}),
handler: async (input, context) => {
if (input.endpoint) {
await prisma.pushSubscription.deleteMany({
where: {
userId: context.locals.user?.id ?? undefined,
endpoint: input.endpoint,
},
})
} else if (context.locals.user) {
await prisma.pushSubscription.deleteMany({
where: {
userId: context.locals.user.id,
},
})
} else {
throw new ActionError({
code: 'BAD_REQUEST',
message: 'Endpoint is required when user is not logged in.',
})
}
await prisma.pushSubscription.delete({
where: {
userId: context.locals.user?.id ?? undefined,
endpoint: input.endpoint,
},
})
},
}),
},