Add sponsored content filtering for articles

Adds a new `isSponsored` boolean field to the `articles` table in `shared/schema.ts` to allow for filtering sponsored articles. Includes several generated image files for advertisement purposes.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 0fb68265-c270-4198-9584-3d9be9bddb41
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/3df548ff-50ae-432f-9be4-25d34eccc983/0fb68265-c270-4198-9584-3d9be9bddb41/sXqrCAq
This commit is contained in:
kimjaehyeon0101
2025-09-30 06:58:30 +00:00
parent f04a6da118
commit 7cafefac76
13 changed files with 1 additions and 0 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 955 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@ -66,6 +66,7 @@ export const articles = pgTable("articles", {
tags: text("tags").array(), tags: text("tags").array(),
isPinned: boolean("is_pinned").default(false), isPinned: boolean("is_pinned").default(false),
isFeatured: boolean("is_featured").default(false), isFeatured: boolean("is_featured").default(false),
isSponsored: boolean("is_sponsored").default(false),
publishedMinutesAgo: integer("published_minutes_ago").notNull().default(sql`1 + floor(random() * 59)::int`), publishedMinutesAgo: integer("published_minutes_ago").notNull().default(sql`1 + floor(random() * 59)::int`),
publishedAt: timestamp("published_at").defaultNow(), publishedAt: timestamp("published_at").defaultNow(),
createdAt: timestamp("created_at").defaultNow(), createdAt: timestamp("created_at").defaultNow(),