chore: update
This commit is contained in:
@@ -130,23 +130,18 @@ func validateUnit(unit string) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func validateCategory(category string) error {
|
||||
// Nettoyage
|
||||
category = strings.ToLower(strings.TrimSpace(category))
|
||||
category = strings.Map(func(r rune) rune {
|
||||
if r < 32 || r == 127 {
|
||||
return -1
|
||||
}
|
||||
return r
|
||||
}, category)
|
||||
|
||||
validCategories := []string{"weed&hash", "zipette&co", "gros&semi"}
|
||||
for _, v := range validCategories {
|
||||
if category == v {
|
||||
return nil
|
||||
}
|
||||
func validateCategory(database *db.Database, category string) error {
|
||||
if category == "" {
|
||||
return fmt.Errorf("catégorie requise")
|
||||
}
|
||||
return fmt.Errorf("catégorie invalide")
|
||||
exists, err := database.CategoryExists(category)
|
||||
if err != nil {
|
||||
return fmt.Errorf("erreur vérification catégorie")
|
||||
}
|
||||
if !exists {
|
||||
return fmt.Errorf("catégorie invalide")
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// ✅ VÉRIFICATION DU TYPE MIME RÉEL (pas juste l'extension)
|
||||
@@ -246,7 +241,7 @@ func CreateProduct(c *gin.Context) {
|
||||
return r
|
||||
}, category)
|
||||
|
||||
if err := validateCategory(category); err != nil {
|
||||
if err := validateCategory(database, category); err != nil {
|
||||
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
|
||||
return
|
||||
}
|
||||
@@ -511,7 +506,7 @@ func GetProductsByCategory(c *gin.Context) {
|
||||
category := strings.ToLower(strings.TrimSpace(c.Param("category")))
|
||||
|
||||
// ✅ VALIDATION
|
||||
if err := validateCategory(category); err != nil {
|
||||
if err := validateCategory(database, category); err != nil {
|
||||
c.JSON(http.StatusBadRequest, gin.H{
|
||||
"success": false,
|
||||
"error": err.Error(),
|
||||
@@ -627,7 +622,7 @@ func UpdateProduct(c *gin.Context) {
|
||||
return
|
||||
}
|
||||
|
||||
if err := validateCategory(updateData.Category); err != nil {
|
||||
if err := validateCategory(database, updateData.Category); err != nil {
|
||||
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
|
||||
return
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user