diff --git a/components/versions/vote-buttons.js b/components/versions/vote-buttons.js index 3b5d05e..03c1385 100644 --- a/components/versions/vote-buttons.js +++ b/components/versions/vote-buttons.js @@ -55,7 +55,7 @@ export default function VoteButtons({versionId, isDisabled = false, hasCountsVis if (onVoteResult) { onVoteResult({ success: false, - message: `Erreur lors du vote: ${error}` + message: error.message || 'Erreur lors du vote' }) } } diff --git a/lib/directus.js b/lib/directus.js index eae680f..a8d0157 100644 --- a/lib/directus.js +++ b/lib/directus.js @@ -326,7 +326,19 @@ export async function handleVote({ return voteValue } catch (error) { console.error('Error voting:', error) - throw error + + // Extract error message from Directus error object + let errorMessage = 'Une erreur est survenue lors du vote' + + if (error?.errors?.[0]?.message) { + errorMessage = error.errors[0].message + } else if (error?.message) { + errorMessage = error.message + } else if (typeof error === 'string') { + errorMessage = error + } + + throw new Error(errorMessage) } }