doxa-maps-cdn/server/api/admin/pages/[id].get.ts
corsacca 6f918a9d85
Let categories have child categories for nested pages. (#6)
* Let categories have child categories for nested pages.

* fixes
2026-05-21 06:00:54 -05:00

22 lines
781 B
TypeScript

// Admin: fetch a single page with all its translations (any status),
// plus the computed full public URL.
import { defineEventHandler, getRouterParam, createError } from 'h3'
import { requirePermission } from '../../../utils/rbac'
import { getCmsPage } from '../../../services/cmsPages'
export default defineEventHandler(async (event) => {
await requirePermission(event, 'pages.view')
const id = getRouterParam(event, 'id')
if (!id) throw createError({ statusCode: 400, statusMessage: 'id is required' })
const found = await getCmsPage({ id })
if (!found) throw createError({ statusCode: 404, statusMessage: 'Page not found' })
return {
page: found.page,
translations: found.translations,
url: found.url,
category_path: found.category_path
}
})