Refactor admin actions and improve code formatting: Standardize import statements, enhance error handling messages, and apply consistent formatting across event, user, and preference management functions for better readability and maintainability.
Some checks failed
Deploy with Docker Compose / deploy (push) Has been cancelled

This commit is contained in:
Julien Froidefond
2025-12-15 21:20:39 +01:00
parent 321da3176e
commit b790ee21f2
52 changed files with 12712 additions and 8554 deletions

View File

@@ -1,25 +1,28 @@
'use server'
"use server";
import { revalidatePath } from 'next/cache'
import { auth } from '@/lib/auth'
import { challengeService } from '@/services/challenges/challenge.service'
import { revalidatePath } from "next/cache";
import { auth } from "@/lib/auth";
import { challengeService } from "@/services/challenges/challenge.service";
import {
ValidationError,
NotFoundError,
ConflictError,
} from '@/services/errors'
} from "@/services/errors";
export async function createChallenge(data: {
challengedId: string
title: string
description: string
pointsReward?: number
challengedId: string;
title: string;
description: string;
pointsReward?: number;
}) {
try {
const session = await auth()
const session = await auth();
if (!session?.user?.id) {
return { success: false, error: 'Vous devez être connecté pour créer un défi' }
return {
success: false,
error: "Vous devez être connecté pour créer un défi",
};
}
const challenge = await challengeService.createChallenge({
@@ -28,85 +31,99 @@ export async function createChallenge(data: {
title: data.title,
description: data.description,
pointsReward: data.pointsReward || 100,
})
});
revalidatePath('/challenges')
revalidatePath('/profile')
revalidatePath("/challenges");
revalidatePath("/profile");
return { success: true, message: 'Défi créé avec succès', data: challenge }
return { success: true, message: "Défi créé avec succès", data: challenge };
} catch (error) {
console.error('Create challenge error:', error)
console.error("Create challenge error:", error);
if (error instanceof ValidationError || error instanceof ConflictError) {
return { success: false, error: error.message }
return { success: false, error: error.message };
}
if (error instanceof NotFoundError) {
return { success: false, error: error.message }
return { success: false, error: error.message };
}
return { success: false, error: 'Une erreur est survenue lors de la création du défi' }
return {
success: false,
error: "Une erreur est survenue lors de la création du défi",
};
}
}
export async function acceptChallenge(challengeId: string) {
try {
const session = await auth()
const session = await auth();
if (!session?.user?.id) {
return { success: false, error: 'Vous devez être connecté pour accepter un défi' }
return {
success: false,
error: "Vous devez être connecté pour accepter un défi",
};
}
const challenge = await challengeService.acceptChallenge(
challengeId,
session.user.id
)
);
revalidatePath('/challenges')
revalidatePath('/profile')
revalidatePath("/challenges");
revalidatePath("/profile");
return { success: true, message: 'Défi accepté', data: challenge }
return { success: true, message: "Défi accepté", data: challenge };
} catch (error) {
console.error('Accept challenge error:', error)
console.error("Accept challenge error:", error);
if (error instanceof ValidationError) {
return { success: false, error: error.message }
return { success: false, error: error.message };
}
if (error instanceof NotFoundError) {
return { success: false, error: error.message }
return { success: false, error: error.message };
}
return { success: false, error: 'Une erreur est survenue lors de l\'acceptation du défi' }
return {
success: false,
error: "Une erreur est survenue lors de l'acceptation du défi",
};
}
}
export async function cancelChallenge(challengeId: string) {
try {
const session = await auth()
const session = await auth();
if (!session?.user?.id) {
return { success: false, error: 'Vous devez être connecté pour annuler un défi' }
return {
success: false,
error: "Vous devez être connecté pour annuler un défi",
};
}
const challenge = await challengeService.cancelChallenge(
challengeId,
session.user.id
)
);
revalidatePath('/challenges')
revalidatePath('/profile')
revalidatePath("/challenges");
revalidatePath("/profile");
return { success: true, message: 'Défi annulé', data: challenge }
return { success: true, message: "Défi annulé", data: challenge };
} catch (error) {
console.error('Cancel challenge error:', error)
console.error("Cancel challenge error:", error);
if (error instanceof ValidationError) {
return { success: false, error: error.message }
return { success: false, error: error.message };
}
if (error instanceof NotFoundError) {
return { success: false, error: error.message }
return { success: false, error: error.message };
}
return { success: false, error: 'Une erreur est survenue lors de l\'annulation du défi' }
return {
success: false,
error: "Une erreur est survenue lors de l'annulation du défi",
};
}
}