Ciao a tutti,
Ho esperienza nello sviluppo iOS (Swift), solo un’esperienza superficiale con Rails e Javascript. Sto cercando di sviluppare un plugin per Discourse e ho difficoltà a mostrare una finestra di dialogo modale dopo aver cliccato su un pulsante nella barra degli strumenti dell’editor dei post.
Sono riuscito ad aggiungere il pulsante con qualcosa di simile a questo:
assets/javascripts/discourse/initializers/audio-message-button.js.es6
import { withPluginApi } from 'discourse/lib/plugin-api';
function initializeWithApi(api) {
api.onToolbarCreate(toolbar => {
toolbar.addButton({
id: "audio_message",
group: "extras",
icon: "microphone",
perform: (editor) => {
}
});
});
}
export default {
name: 'audio-message-button',
initialize(container) {
withPluginApi('0.12.0', api => initializeWithApi(api));
}
};
Ho provato a utilizzare ChatGPT per aiutarmi nello sviluppo e mi ha dato diversi suggerimenti riguardo alla struttura delle cartelle. Utilizzando componenti, template, file controller, ma non riesco a far apparire la finestra di dialogo. O ricevo messaggi di errore o non succede nulla.
Ho provato a cercare nel forum, ma non riesco a trovare nulla che possa aiutarmi.
Qualcuno può indicarmi la giusta direzione su come devo impostare la struttura delle cartelle e soprattutto le convenzioni di denominazione dei file coinvolti, in modo da poter mostrare una semplice finestra di dialogo modale per iniziare?
Grazie in anticipo!
EDIT: Sono consapevole che la funzione perform non fa nulla nel codice sopra. Ho provato diversi metodi per farla funzionare, ma nulla ha aiutato. Quindi l’ho lasciata vuota qui, solo per dimostrare cosa ho fatto finora per far apparire il pulsante nella barra degli strumenti.