--- import { Icon } from 'astro-icon/components' import { actions } from 'astro:actions' import AdminOnly from '../../components/AdminOnly.astro' import Chat from '../../components/Chat.astro' import ServiceCard from '../../components/ServiceCard.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' import { formatDateShort } from '../../lib/timeAgo' const user = Astro.locals.user if (!user) { return Astro.redirect(makeLoginUrl(Astro.url, { message: 'Login to view service suggestion' })) } 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({ select: { id: true, status: true, notes: true, createdAt: 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, name: true, picture: true, }, }, }, orderBy: { createdAt: 'desc', }, }, }, where: { id: serviceSuggestionId, userId: user.id, }, }) ) if (!serviceSuggestion) { if (user.admin) return Astro.redirect(`/admin/service-suggestions/${serviceSuggestionIdRaw}`) return Astro.rewrite('/404') } const statusInfo = getServiceSuggestionStatusInfo(serviceSuggestion.status) ---

Edit service

View in admin
Status: {statusInfo.label}
Submitted: { formatDateShort(serviceSuggestion.createdAt, { prefix: false, hourPrecision: true, caseType: 'sentence', }) }
Notes for moderators:
{ serviceSuggestion.notes ? (
) : ( Empty ) }