Le vote de publication a les likes activés mais ils n'apparaîtront pas

Nous avons le paramètre qa enable likes on answers activé, mais aucun :heart: n’est visible.

Nous avons également installé le plugin officiel Discourse Reactions. Cela pourrait-il être la cause de ce bug ?

5 « J'aime »

Je viens d’activer/désactiver les réactions sur mon site de test pour vérifier cela et il semble que ce soit lié. Je me demande si c’est une conséquence de cette correction de bug Pouce levé, deux fois ?

3 « J'aime »

Bonjour,

Les réactions sont désactivées (cachées) par défaut sur les sujets de vote de publication avec CSS.

Vous pouvez les réactiver en ajoutant un peu de CSS à un composant Commun/CSS :arrow_down_small:

.post-voting-topic,
.post-voting-topic-sort-by-activity {
  .discourse-reactions-actions {
    display: inline-flex;
  }
}
6 « J'aime »

Merci beaucoup !

La limitation par défaut est compréhensible (trop d’options pour donner un retour peut être déroutant), mais s’il existe un paramètre permettant aux administrateurs d’activer les « J’aime » et que ces administrateurs ont activé les réactions sur leur site, alors il serait logique d’activer les réactions dans les publications de vote lorsqu’ils activent le paramètre.

Et dans tous les cas, je suppose que plus d’administrateurs penseront qu’il y a un bug plutôt que de vérifier le code et de corriger le CSS. :slight_smile:

3 « J'aime »
réactions installées vote de publication installé activer les likes sur les réponses appeler removePostMenuButton(‘like’) ?
non non non (N/A) non, garder :heart:
oui non N/A oui, supprimer le bouton like, afficher les réactions
non oui non oui, supprimer le bouton like pour les réponses
non oui oui non, garder :heart: pour chaque publication
oui oui non oui, supprimer le bouton like, afficher uniquement les réactions pour la première publication et non les réponses
oui oui oui oui, supprimer le bouton like, afficher les réactions pour toutes

J’ai esquissé quelque chose comme une table de vérité ici. Nous devons programmer l’affichage des réactions pour différentes publications en fonction des paramètres du site, en particulier celui de enable likes on answers, au lieu d’un simple display:none en CSS.

@tgxworld a en quelque sorte attrapé cela à l’époque en suggérant que nous devrions probablement exposer une API sur discourse-reactions (t/67550/10). Peut-être devrions-nous y réfléchir.

7 « J'aime »
// Suppression du bouton `like`
api.removePostMenuButton("like");
// Et ajout à nouveau
api.decorateWidget("post-menu:before-extra-controls", (dec) => {
  return dec.attach("discourse-reactions-actions", {

Au lieu de faire ceci :arrow_up_small:, nous devrions ajouter une méthode replacePostMenuButton dans l’API du plugin principal et l’utiliser dans le plugin de réactions. Dans ce cas, nous n’avons pas besoin d’une logique distincte pour le bouton de réaction dans le plugin de vote de publication.

Puisqu’il existe une solution de contournement, j’apporterai cette modification après la prochaine version.

7 « J'aime »

Cela a nécessité 3 PRs mais votre idée d’implémentation était géniale @vinothkannans, ça fonctionne à merveille. Une fois que tout sera fusionné, je posterai à nouveau :slight_smile:

9 « J'aime »

Les PRs ont été fusionnées et maintenant (lorsque votre instance Discourse sera mise à jour), les réactions respecteront le paramètre qa_enable_likes_on_answers. Merci pour le rapport de bug @icaria36 !

4 « J'aime »

Les PR fusionnés cassent la version stable de discourse. Le site ne se charge pas en raison d’une erreur javascript.

Uncaught (in promise) TypeError: e.replacePostMenuButton is not a function
    u discourse-reactions.js:12
    withPluginApi plugin-api.js:2247
    initialize discourse-reactions.js:165
    initialize app.js:173
    runInstanceInitializers Ember
    each dag-map.js:192
    walk dag-map.js:121
    each dag-map.js:66
    topsort dag-map.js:72
    Ember 4
    invoke queue.ts:201
    flush queue.ts:98
    flush deferred-action-queues.ts:75
    _end index.ts:616
    _boundAutorunEnd index.ts:257
discourse-reactions.js:12
2 « J'aime »

Oui, j’aurais dû anticiper cela. Je vais pousser un correctif pour le plugin de réactions afin qu’il revienne en arrière lorsque replacePostMenuButton n’est pas présent.

Edit : J’ai fusionné un changement qui ajoute la compatibilité ascendante.

3 « J'aime »

Ce sujet a été automatiquement fermé après 4 jours. Les nouvelles réponses ne sont plus autorisées.