Comment puis-je accéder à composePrivateMessage depuis un bouton de menu de publication ?

Bonjour,

J’ai écrit un plugin pour un comportement de type liste de diffusion, où les e-mails peuvent être répondus (uniquement à l’expéditeur) et répondre à tous (à l’ensemble du sujet). Je veux recréer cela dans l’interface web également en ayant un bouton “répondre” et “répondre à tous” sur chaque publication du sujet. La “réponse” imiterait le clic sur la carte d’un auteur de publication, puis “message”. C’est le comportement par défaut qu’il donne :

Malgré l’écriture du plugin ci-dessus, je ne suis pas très familier avec Rails et j’ai beaucoup de mal avec cela. Je pense avoir trouvé la bonne ‘action’ ici. Il s’agit de composePrivateMessage, qui se trouve dans /discourse/app/assets/javascripts/discourse/app/routes/application.js. Comme l’indique le chemin, c’est une route, ce qui me perturbe, et j’ai du mal à transformer cela en un bouton cliquable.

Voici ce que j’ai actuellement :

  api.addPostMenuButton("reply-privately", (attrs, state) => {
    return {
      action: composePrivateMessage(user, post),
      title: "reply-privately",
      icon: "reply",
      position: "last",
      className: "reply-privately",
    };
  });

Des idées sur la façon de faire correspondre l’‘action’ à la ‘route’ ?

1 « J'aime »