Envoyer des infos extras au pipeline post_insertion après un objet_inserer() ?

Bonjour,

TL;DR
Est-il possible/Comment faire pour transmettre aux pipelines post_edition_lien, post_edition ou encore post_insertion de nouvelles informations lorsqu’ils sont appelés par objet_inserer() ou bien objet_associer() ?

Exemple : sur une liaison je rajoute une « qualif » en faisant objet_associer($objets_source, $objets_lies[,$qualif]). Je souhaite ensuite récupérer ma/mes qualifs dans post_edition_lien()

Version longue :

Je suis en train de créer une interface de monitoring d’actions effectuées sur les objets éditoriaux, dans ce style :

Tableau de bord

Fiche détail d’une action monitorée

La problématique :

Je dispose de deux méthodes pour ajouter des documents au site :

  1. via les formulaires dist clasiques de medias
  2. via une API externe appelée depuis un CVT

Lorsqu’un auteur utilise l’API ou le formulaire classique je souhaite le savoir en récupérant cette info dans les pipelines post_edition, post_insertion, etc.

Je cherche à faire transiter depuis la fonction traiter de mon CVT jusqu’aux pipelines post_insertion, post_edition ou post_edition_lien l’information qu’il s’agit d’une importation par API afin de mieux qualifier les éléments de mon monitoring.

Je n’ai pas encore pu déterminer si post_edition_lien était capable de récupérer les « informations extras » de la liaison si l’on fait quelque chose comme :

objet_associer(array("document"=>3), array("article"=>5), array('via'=>'api'));

Mais dans tous les cas, j’ai aussi ce besoin lorsque je m’appui sur post_insertion ou post_edition pour retrouver mes informations « extras »…

Y a t’il un moyen d’agir sur ces pipelines pour leur apporter un contexte supplémentaire ?

Merci pour toute piste et désolé pour la migraine !

Sous réserver d’avoir compris ton propos, il faudrait que SPIP lui mette transmette plus d’informations aux pipelines. Autrement dit : que tu fasse une proposition d’évolution de SPIP.

Ca se passe ici

et ici

on voit que le 3ème argument d’objet_inserer() n’est pas passer au pipeline.

Je te laisse tester en local et faire évenuellement une PR en ce sens ?