feat: add dedicated model photo separate from avatar
Adds a `photo` field to the users table (and a migration) that serves as a dedicated profile/card image for models. This is now used in model cards and on the model single page, while `avatar` is reserved for comments, article authors, and the user profile page. - DB: `photo` column on `users` with FK to `files` - GraphQL: exposed on ModelType, UserType, AdminUserDetailType; photoId arg on adminUpdateUser - Services: photo field in MODELS_QUERY, MODEL_BY_SLUG_QUERY, ADMIN_GET/UPDATE_USER - Frontend: model cards and single page use `photo ?? avatar` fallback - Admin: model photo upload section in user edit page Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -29,6 +29,7 @@ export const users = pgTable(
|
||||
role: roleEnum("role").notNull().default("viewer"),
|
||||
avatar: text("avatar").references(() => files.id, { onDelete: "set null" }),
|
||||
banner: text("banner").references(() => files.id, { onDelete: "set null" }),
|
||||
photo: text("photo").references(() => files.id, { onDelete: "set null" }),
|
||||
is_admin: boolean("is_admin").notNull().default(false),
|
||||
email_verified: boolean("email_verified").notNull().default(false),
|
||||
email_verify_token: text("email_verify_token"),
|
||||
|
||||
Reference in New Issue
Block a user