From 4efd1ffb6d39fbda890ba0ae9a060f4c23d22b1f Mon Sep 17 00:00:00 2001 From: Garret Patti Date: Sun, 17 May 2026 17:02:07 -0400 Subject: [PATCH] 404 fix attempt 2 --- src/lib/server/db.ts | 11 ++++++----- src/routes/+layout.server.ts | 4 ++++ src/routes/+page.server.ts | 2 -- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/lib/server/db.ts b/src/lib/server/db.ts index 88c6a66..c30b0fa 100644 --- a/src/lib/server/db.ts +++ b/src/lib/server/db.ts @@ -14,10 +14,11 @@ export function getDb(): Database.Database { fs.mkdirSync(dir, { recursive: true }); } - _db = new Database(DB_PATH); - _db.pragma('journal_mode = WAL'); - _db.pragma('foreign_keys = ON'); - initSchema(_db); + const db = new Database(DB_PATH); + db.pragma('journal_mode = WAL'); + db.pragma('foreign_keys = ON'); + initSchema(db); + _db = db; return _db; } @@ -81,7 +82,7 @@ function initSchema(db: Database.Database): void { const cols = db.prepare('PRAGMA table_info(games)').all() as Array<{ name: string }>; if (!cols.some((c) => c.name === 'series_id')) { db.exec( - 'ALTER TABLE games ADD COLUMN series_id INTEGER REFERENCES series(id) ON DELETE SET NULL' + 'ALTER TABLE games ADD COLUMN series_id INTEGER DEFAULT NULL REFERENCES series(id) ON DELETE SET NULL' ); } } diff --git a/src/routes/+layout.server.ts b/src/routes/+layout.server.ts index 4cd7b79..3c8d51e 100644 --- a/src/routes/+layout.server.ts +++ b/src/routes/+layout.server.ts @@ -1,6 +1,10 @@ import type { LayoutServerLoad } from './$types'; +import { getDb } from '$lib/server/db'; +import { scanLibraries } from '$lib/server/scanner'; import { getSession } from '$lib/server/auth'; export const load: LayoutServerLoad = ({ cookies }) => { + const db = getDb(); + scanLibraries(db); return { loggedIn: getSession(cookies) }; }; diff --git a/src/routes/+page.server.ts b/src/routes/+page.server.ts index 7a5ad79..ed63433 100644 --- a/src/routes/+page.server.ts +++ b/src/routes/+page.server.ts @@ -1,11 +1,9 @@ import type { PageServerLoad } from './$types'; import { getDb } from '$lib/server/db'; -import { scanLibraries } from '$lib/server/scanner'; export const load: PageServerLoad = async ({ parent }) => { const { loggedIn } = await parent(); const db = getDb(); - scanLibraries(db); const games = loggedIn ? db