feat: importance in db and mentorcard home colors

This commit is contained in:
Julien Froidefond
2025-08-27 11:51:43 +02:00
parent df1fd24e84
commit aee5d74445
13 changed files with 388 additions and 94 deletions

View File

@@ -96,10 +96,12 @@ export function useSkillsManagement(
...skillFormData,
category: category.category,
categoryId: category.id,
importance: "standard", // Valeur par défaut
};
const newSkill = await adminClient.createSkill(skillData);
setSkills([...skills, newSkill]);
setSkills((prevSkills) => [...prevSkills, newSkill]);
resetForm();
toast({
@@ -152,6 +154,7 @@ export function useSkillsManagement(
...skillFormData,
category: category.category,
usageCount: editingSkill.usageCount,
importance: editingSkill.importance || "standard", // Garder l'importance existante
};
const updatedSkill = await adminClient.updateSkill(skillData);
@@ -207,6 +210,36 @@ export function useSkillsManagement(
}
};
const handleImportanceChange = async (
skillId: string,
newImportance: string
) => {
try {
await adminClient.updateSkillImportance(skillId, newImportance as any);
// Mettre à jour l'état local
setSkills((prevSkills) =>
prevSkills.map((skill) =>
skill.id === skillId ? { ...skill, importance: newImportance } : skill
)
);
toast({
title: "Succès",
description: "Importance mise à jour avec succès",
});
return true;
} catch (error: any) {
toast({
title: "Erreur",
description:
error.message || "Erreur lors de la mise à jour de l'importance",
variant: "destructive",
});
return false;
}
};
return {
skills,
isLoading,
@@ -219,5 +252,6 @@ export function useSkillsManagement(
handleEditSkill,
handleUpdateSkill,
handleDeleteSkill,
handleImportanceChange,
};
}