fix: treat NULL premium as non-premium for logged-out video list
All checks were successful
Build and Push Backend Image / build (push) Successful in 1m11s

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-12 10:04:24 +01:00
parent 1b660dde9e
commit 68c74fc8df

View File

@@ -28,6 +28,8 @@ import {
lt, lt,
gte, gte,
arrayContains, arrayContains,
isNull,
or,
type SQL, type SQL,
} from "drizzle-orm"; } from "drizzle-orm";
import { requireAdmin } from "../../lib/acl"; import { requireAdmin } from "../../lib/acl";
@@ -101,7 +103,7 @@ builder.queryField("videos", (t) =>
const offset = args.offset ?? 0; const offset = args.offset ?? 0;
const conditions: SQL<unknown>[] = [lte(videos.upload_date, new Date())]; const conditions: SQL<unknown>[] = [lte(videos.upload_date, new Date())];
if (!ctx.currentUser) conditions.push(eq(videos.premium, false)); if (!ctx.currentUser) conditions.push(or(eq(videos.premium, false), isNull(videos.premium))!);
if (args.featured !== null && args.featured !== undefined) { if (args.featured !== null && args.featured !== undefined) {
conditions.push(eq(videos.featured, args.featured)); conditions.push(eq(videos.featured, args.featured));
} }