Files
stripstream/src/app/actions/favorites.ts

39 lines
1.1 KiB
TypeScript

"use server";
import { FavoriteService } from "@/lib/services/favorite.service";
import { AppError } from "@/utils/errors";
/**
* Ajoute une série aux favoris
*/
export async function addToFavorites(
seriesId: string
): Promise<{ success: boolean; message: string }> {
try {
await FavoriteService.addToFavorites(seriesId);
return { success: true, message: "Série ajoutée aux favoris" };
} catch (error) {
if (error instanceof AppError) {
return { success: false, message: error.message };
}
return { success: false, message: "Erreur lors de l'ajout aux favoris" };
}
}
/**
* Retire une série des favoris
*/
export async function removeFromFavorites(
seriesId: string
): Promise<{ success: boolean; message: string }> {
try {
await FavoriteService.removeFromFavorites(seriesId);
return { success: true, message: "Série retirée des favoris" };
} catch (error) {
if (error instanceof AppError) {
return { success: false, message: error.message };
}
return { success: false, message: "Erreur lors de la suppression des favoris" };
}
}