mirror of
https://git.v0id.ovh/n3wt-innov/n3wt-school.git
synced 2026-01-29 07:53:23 +00:00
fix: Mise à jour correcte du fichier après avoir été signé
This commit is contained in:
@ -89,7 +89,7 @@ export default function InscriptionFormShared({
|
|||||||
setCurrentTemplateIndex(firstUnsignedIndex);
|
setCurrentTemplateIndex(firstUnsignedIndex);
|
||||||
} else {
|
} else {
|
||||||
// Si tous les templates sont signés, définir un index hors limites
|
// Si tous les templates sont signés, définir un index hors limites
|
||||||
setCurrentTemplateIndex(schoolFileTemplates.length);
|
setCurrentTemplateIndex(0);
|
||||||
}
|
}
|
||||||
}, [schoolFileTemplates]);
|
}, [schoolFileTemplates]);
|
||||||
|
|
||||||
@ -125,31 +125,45 @@ export default function InscriptionFormShared({
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Télécharger le template
|
||||||
downloadTemplate(template.slug)
|
downloadTemplate(template.slug)
|
||||||
.then((data) => fetch(data))
|
.then((downloadUrl) => fetch(downloadUrl))
|
||||||
.then((response) => response.blob())
|
.then((response) => {
|
||||||
|
if (!response.ok) {
|
||||||
|
throw new Error('Erreur lors du téléchargement du fichier.');
|
||||||
|
}
|
||||||
|
return response.blob();
|
||||||
|
})
|
||||||
.then((blob) => {
|
.then((blob) => {
|
||||||
const file = new File([blob], `${template.name}.pdf`, {
|
const file = new File([blob], `${template.name}.pdf`, {
|
||||||
type: blob.type,
|
type: blob.type,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Préparer les données pour la mise à jour
|
||||||
const updateData = new FormData();
|
const updateData = new FormData();
|
||||||
updateData.append('file', file);
|
updateData.append('file', file);
|
||||||
|
|
||||||
|
// Mettre à jour le template via l'API
|
||||||
return editRegistrationSchoolFileTemplates(
|
return editRegistrationSchoolFileTemplates(
|
||||||
template.id,
|
template.id,
|
||||||
updateData,
|
updateData,
|
||||||
csrfToken
|
csrfToken
|
||||||
);
|
);
|
||||||
})
|
})
|
||||||
.then((data) => {
|
.then((updatedTemplate) => {
|
||||||
logger.debug('Template mis à jour avec succès :', data);
|
logger.debug('Template mis à jour avec succès :', updatedTemplate);
|
||||||
|
|
||||||
// Mettre à jour l'état local de schoolFileTemplates
|
// Mettre à jour l'état local de schoolFileTemplates
|
||||||
setSchoolFileTemplates((prevTemplates) =>
|
setSchoolFileTemplates((prevTemplates) => {
|
||||||
prevTemplates.map((t, i) =>
|
const updatedTemplates = prevTemplates.map((t, i) =>
|
||||||
i === index ? { ...t, file: data.file } : t
|
i === index ? { ...t, file: updatedTemplate.data.file } : t
|
||||||
)
|
|
||||||
);
|
);
|
||||||
|
logger.debug(
|
||||||
|
'État schoolFileTemplates mis à jour :',
|
||||||
|
updatedTemplates
|
||||||
|
);
|
||||||
|
return updatedTemplates;
|
||||||
|
});
|
||||||
})
|
})
|
||||||
.catch((error) => {
|
.catch((error) => {
|
||||||
logger.error('Erreur lors de la mise à jour du template :', error);
|
logger.error('Erreur lors de la mise à jour du template :', error);
|
||||||
|
|||||||
Reference in New Issue
Block a user