feat(Notes): add favorite functionality to notes, allowing users to toggle favorites and filter notes accordingly
This commit is contained in:
@@ -29,3 +29,35 @@ export async function reorderNotes(
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Bascule l'état favori d'une note
|
||||
*/
|
||||
export async function toggleNoteFavorite(noteId: string) {
|
||||
try {
|
||||
const session = await getServerSession(authOptions);
|
||||
if (!session?.user?.id) {
|
||||
return { success: false, error: 'Non autorisé' };
|
||||
}
|
||||
|
||||
// Récupérer la note actuelle pour connaître son état favori
|
||||
const currentNote = await notesService.getNoteById(noteId, session.user.id);
|
||||
if (!currentNote) {
|
||||
return { success: false, error: 'Note non trouvée' };
|
||||
}
|
||||
|
||||
// Basculer l'état favori
|
||||
const updatedNote = await notesService.updateNote(noteId, session.user.id, {
|
||||
isFavorite: !currentNote.isFavorite,
|
||||
});
|
||||
|
||||
revalidatePath('/notes');
|
||||
return { success: true, note: updatedNote };
|
||||
} catch (error) {
|
||||
console.error('Error toggling note favorite:', error);
|
||||
return {
|
||||
success: false,
|
||||
error: error instanceof Error ? error.message : 'Erreur inconnue',
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user