--- import { Icon } from 'astro-icon/components' import { actions } from 'astro:actions' import Chat from '../../../components/Chat.astro' import ServiceCard from '../../../components/ServiceCard.astro' import UserBadge from '../../../components/UserBadge.astro' import { getServiceSuggestionStatusInfo } from '../../../constants/serviceSuggestionStatus' import BaseLayout from '../../../layouts/BaseLayout.astro' import { cn } from '../../../lib/cn' import { parseIntWithFallback } from '../../../lib/numbers' import { prisma } from '../../../lib/prisma' import { makeLoginUrl } from '../../../lib/redirectUrls' const user = Astro.locals.user if (!user?.admin) { return Astro.redirect(makeLoginUrl(Astro.url, { message: 'Admin access required' })) } const { id: serviceSuggestionIdRaw } = Astro.params const serviceSuggestionId = parseIntWithFallback(serviceSuggestionIdRaw) if (!serviceSuggestionId) { return Astro.rewrite('/404') } const serviceSuggestion = await Astro.locals.banners.try('Error fetching service suggestion', async () => prisma.serviceSuggestion.findUnique({ where: { id: serviceSuggestionId, }, select: { id: true, status: true, notes: true, createdAt: true, type: true, user: { select: { id: true, name: true, displayName: true, picture: true, }, }, service: { select: { id: true, name: true, slug: true, description: true, overallScore: true, kycLevel: true, imageUrl: true, verificationStatus: true, acceptedCurrencies: true, categories: { select: { name: true, icon: true, }, }, }, }, messages: { select: { id: true, content: true, createdAt: true, user: { select: { id: true, displayName: true, name: true, picture: true, }, }, }, orderBy: { createdAt: 'desc', }, }, }, }) ) if (!serviceSuggestion) { return Astro.rewrite('/404') } const statusInfo = getServiceSuggestionStatusInfo(serviceSuggestion.status) ---
Back

Service Suggestion

Suggestion Details

Status: {statusInfo.label} Submitted by: Submitted at: {serviceSuggestion.createdAt.toLocaleString()} Service page: View Service
{ serviceSuggestion.notes && (

Notes from user:

) }

Messages