added update functions
This commit is contained in:
@ -1,11 +1,8 @@
|
||||
"use server";
|
||||
|
||||
import { getAuth } from "@/auth/queries/getauth";
|
||||
import { artemis, daphnis } from "@/lib/prisma";
|
||||
import type * as Prisma from "@prisma/client";
|
||||
|
||||
// type ChuniScorePlaylog = Prisma.PrismaClient;
|
||||
// type ChuniStaticMusic = Prisma.PrismaClient;
|
||||
import { supportedVersionNumber } from "@/lib/helpers";
|
||||
import { artemis } from "@/lib/prisma";
|
||||
|
||||
export async function getCurrentAvatarParts() {
|
||||
const { user } = await getAuth();
|
||||
@ -17,6 +14,7 @@ export async function getCurrentAvatarParts() {
|
||||
const CurrentAvatarParts = await artemis.chuni_profile_data.findMany({
|
||||
where: {
|
||||
user: user.UserId,
|
||||
version: supportedVersionNumber, // TODO: eventually change this so the user can set their own version
|
||||
},
|
||||
select: {
|
||||
avatarSkin: true,
|
||||
@ -30,7 +28,46 @@ export async function getCurrentAvatarParts() {
|
||||
});
|
||||
return CurrentAvatarParts;
|
||||
}
|
||||
export async function updateAvatarParts(
|
||||
avatarHead?: number,
|
||||
avatarFace?: number,
|
||||
avatarBack?: number,
|
||||
avatarWear?: number,
|
||||
avatarItem?: number,
|
||||
) {
|
||||
const { user } = await getAuth();
|
||||
|
||||
if (!user || !user.accessCode) {
|
||||
throw new Error("User is not authenticated or accessCode is missing");
|
||||
}
|
||||
|
||||
try {
|
||||
// only including the values that aren't undefined i.e 0
|
||||
const AvatarPartData: any = {};
|
||||
if (avatarHead !== undefined) AvatarPartData.avatarHead = avatarHead;
|
||||
if (avatarFace !== undefined) AvatarPartData.avatarFace = avatarFace;
|
||||
if (avatarBack !== undefined) AvatarPartData.avatarBack = avatarBack;
|
||||
if (avatarWear !== undefined) AvatarPartData.avatarWear = avatarWear;
|
||||
if (avatarItem !== undefined) AvatarPartData.avatarItem = avatarItem;
|
||||
|
||||
const UpdateAvatarHead = await artemis.chuni_profile_data.update({
|
||||
where: {
|
||||
user_version: {
|
||||
user: user.UserId,
|
||||
version: supportedVersionNumber,
|
||||
},
|
||||
},
|
||||
data: AvatarPartData,
|
||||
});
|
||||
|
||||
console.log(UpdateAvatarHead);
|
||||
|
||||
return UpdateAvatarHead;
|
||||
} catch (error) {
|
||||
console.error("Error updating avatar parts:", error);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
export async function getAllAvatarParts(category: number) {
|
||||
const { user } = await getAuth();
|
||||
|
||||
|
Reference in New Issue
Block a user