App Nuxt 3 + Nuxt UI qui lit les projets du CMS Grav et compose des portfolios A3 paysage exportés en PDF (gabarit book_v3) : composeur WYSIWYG, templates cover/toc/projet/grille/page libre, pipeline Playwright + Ghostscript, gel du contenu à la génération, partage public opt-in. Dépôt autonome : Dockerfile (base Playwright + Ghostscript + ffmpeg + rsync) inclus. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
12 lines
426 B
TypeScript
12 lines
426 B
TypeScript
import { setSessionCookie } from '../../lib/session'
|
|
|
|
export default defineEventHandler(async (event) => {
|
|
const { password } = await readBody<{ password?: string }>(event)
|
|
const config = useRuntimeConfig(event)
|
|
if (!password || password !== config.portfolioPassword) {
|
|
throw createError({ statusCode: 401, statusMessage: 'Mot de passe incorrect' })
|
|
}
|
|
setSessionCookie(event)
|
|
return { authenticated: true }
|
|
})
|