[FA-misc] Switches to using DTOs, updates frontend with details and reader page, updates novel import to be an upsert

This commit is contained in:
gamer147
2025-12-08 18:30:00 -05:00
parent c9d93a4e55
commit 81e4e88ad4
48 changed files with 3298 additions and 329 deletions

View File

@@ -0,0 +1,22 @@
import { defineMiddleware } from 'astro:middleware';
const STATIC_PATHS = ['/_astro/', '/favicon.svg', '/favicon.ico'];
export const onRequest = defineMiddleware(async (context, next) => {
const { request, url } = context;
// Bypass auth for static assets
if (STATIC_PATHS.some((p) => url.pathname.startsWith(p))) {
return next();
}
// Simple presence check for fa_session cookie
const cookieHeader = request.headers.get('cookie') || '';
const hasSession = /fa_session=[^;]+/.test(cookieHeader);
if (hasSession) {
return next();
}
return context.rewrite('/gated-404');
});