Le dashboard du module

Mode code

Chaque module installé a sa page dans le dashboard de l’admin. Tu y ajoutes des réglages, des boutons d’action, des listes et des classements.

Boutons d’action

Déclare un bouton dans Commandes et listes › Boutons du dashboard (identifiant et libellé), puis :

JavaScript
module.action('publier-panneau', async (ctx) => {
  await ctx.send(ctx.config.salon, {
    title: 'Support',
    text: 'Besoin d’aide ? Clique ci-dessous.',
    buttons: [{ id: 'ouvrir-ticket', label: 'Ouvrir un ticket', style: 'primary' }],
  });
  await ctx.reply('Panneau publié dans le salon.');
});

ctx.reply affiche le résultat à l’admin dans le dashboard. Aucun membre n’est concerné.

Listes et boutons de ligne

Une liste déclarée dans Listes s’affiche en tableau, avec les colonnes que tu choisis (clés des éléments de ctx.collection). Des boutons de ligne (3 max) déclenchent module.row avec l’élément dans ctx.item :

JavaScript
module.row('accepter', async (ctx) => {
  await ctx.collection('candidatures').update(ctx.item.id, { statut: 'acceptée' });
  await ctx.dm(ctx.item.membre, 'Ta candidature est acceptée !');
  await ctx.reply('Candidature acceptée.');
});

Classements et mémoire

Les classements de ctx.points et les valeurs de ctx.memory apparaissent automatiquement dans le dashboard.

Journal

ctx.log(texte) écrit une ligne dans l’onglet Journal du module, à côté des erreurs. Les 300 dernières lignes sont gardées.

Le dashboard du module · Documentation Opale