fix: snapshot current Discord profile on web shares

This commit is contained in:
2026-08-16 01:36:42 +07:00 Unverified
parent 8776747449
commit bdd8442e75
+10 -2
View File
@@ -6,6 +6,7 @@ import { db } from "@/db";
import { users } from "@/db/schema"; import { users } from "@/db/schema";
import type { SessionWithDiscord } from "@/lib/auth/auth"; import type { SessionWithDiscord } from "@/lib/auth/auth";
import { authOptions } from "@/lib/auth/auth-options"; import { authOptions } from "@/lib/auth/auth-options";
import { getDiscordMemberProfile } from "@/lib/discord/discord";
import { ShareHttpError } from "@/lib/share/http-error"; import { ShareHttpError } from "@/lib/share/http-error";
import { requireShareSessionIdentity } from "@/lib/share/session"; import { requireShareSessionIdentity } from "@/lib/share/session";
@@ -22,10 +23,17 @@ export async function requireShareAuthor() {
.limit(1); .limit(1);
if (!user) throw new ShareHttpError("Unauthorized", 401); if (!user) throw new ShareHttpError("Unauthorized", 401);
const profile = await getDiscordMemberProfile(discordId);
return { return {
userId: user.id, userId: user.id,
discordId, discordId,
displayName: user.name || session?.user?.name || "Discord user", displayName:
avatarUrl: user.image || session?.user?.image || null, profile?.globalName?.trim() ||
profile?.username ||
user.name ||
session?.user?.name ||
"Discord user",
avatarUrl: profile?.avatarUrl || user.image || session?.user?.image || null,
}; };
} }