Come posso accedere a composePrivateMessage da un pulsante del menu di un post?

Ciao,

Ho scritto un plugin per il comportamento di tipo mailing list, dove le email possono essere risposte (solo al mittente) e reply-all (all’intero argomento). Voglio ricreare questo anche nell’interfaccia web avendo un pulsante “rispondi” e “rispondi a tutti” su ogni post dell’argomento. La “risposta” mimerebbe il clic sulla card dell’autore di un post e poi “messaggio”. Questo è il comportamento predefinito che fornisce:

Nonostante abbia scritto il plugin sopra, non ho molta familiarità con Rails e ho notevoli difficoltà con esso. Penso di aver trovato l’“azione” corretta qui. È composePrivateMessage, che si trova in /discourse/app/assets/javascripts/discourse/app/routes/application.js. Come indicato dal percorso, è una route, il che mi confonde, e ho difficoltà a trasformarla in un pulsante cliccabile.

Ecco cosa ho al momento:

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

Qualche idea su come far adattare l’“azione” alla “route”?

1 Mi Piace