[spip-dev] Mots-clés : manque un id_mot dans le tableau de retour

Hello,

Dans le plugin mots-clés, il manque un id_mot dans le tableau retourné par le CVT : http://zone.spip.org/trac/spip-zone/browser/core/plugins/mots/formulaires/editer_mot.php#L240. Les autres objets retournent bien cet id_objet, mais pas ce plugin. Du coup, le plugin SEO est planté sur les mots-clés.

Pas d’objection à ce que je le rajoute ?

Hop,

Hello,

Dans le plugin mots-clés, il manque un id_mot dans le tableau retourné par
le CVT :
Connexion · GitLab.
Les autres objets retournent bien cet id_objet, mais pas ce plugin. Du
coup, le plugin SEO est planté sur les mots-clés.

À la lecture du code je ne vois aucun manque. L'id_mot est bien ajouté à l'url de retour à condition que :

- un paramètre retour soit bien passé au formulaire, cf Connexion · GitLab
- le paramètre retour ne soit pas un retour ajax, cf Connexion · GitLab

Bref, le principe est le même que pour les formulaires editer du core, cf :

https://core.spip.net/projects/spip/repository/entry/spip/ecrire/inc/editer.php#L98

Pas d’objection à ce que je le rajoute ?

Du coup, si, objection, à moins que j'ai mal compris le problème et que tu nous donnes plus de détails sur ton cas d'usage :wink:

Hmm, mais étant donné que le formulaire d’édition de mot ne se fait qu’en Ajax, ceci expliquerait qu’id_mot n’est jamais renvoyé ? Car en tout cas, dans le pipeline formulaire_traiter utilisé par le plugin SEO, il n’arrive jamais à récupérer id_mot dans $flux[‘data’].
Il y a une raison pour ne pas renvoyer systématiquement id_mot ?

Hello,

sur ce coup là Yohann a raison, il est de bon usage que le tableau en retour de traiter contienne l'id de l'objet qui a été créé ou modifié.
C'est fait par defaut pour la plupart des formulaires cvt editer_xx par
https://core.spip.net/projects/spip/repository/entry/spip/ecrire/inc/editer.php#L82
mais comme le formulaire editer_mot ne passe pas par là (pour des raisons que j'ai oublié mais qui doivent tenir à de l'histoire plus ou moins justifiée), du coup il ne suit pas cette convention.

Il faut avouer que c'est moyennement documentée et affirmé comme convention, c'est plutôt un usage qui facilite les choses pour les pipelines.
Ça me parait donc légitime que le formulaire editer_mot fasse de même.

Hop,

Et hop, c’est commité. Je vous laisse faire le report sur la branche 3.0 ? Ou je peux le faire si ça vous va ?

Merci. Pour la 3.0 je sais pas, mais pour la 3.1 déjà ça serait bien :slight_smile: ^^

MM.

Et hop, c'est fait :