J’ai mis à jour deux sites que j’entretiens, et avec les deux, j’ai rencontré des difficultés qui m’ont conduit au plugin de notes utilisateur.
Sur l’un de mes sites hier, j’ai eu le « white screen of death » (écran blanc de la mort) - le site n’était pas du tout visible sauf en mode sans échec. J’ai commenté le plugin dans app.yml et reconstruit, et le site est revenu.
Sur un autre, seul le menu de navigation supérieur avec le logo et le menu hamburger, etc., a disparu et j’ai eu une erreur dans la console - voir ci-dessous. La désactivation du plugin via le tableau de bord d’administration l’a fait revenir.
vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:12 Uncaught (in promise) Error: Could not find module `discourse/plugins/discourse-user-notes/discourse-user-notes/connectors/user-profile-controls/show-notes-on-profile` imported from `discourse/plugins/discourse-staff-notes/discourse-user-notes/connectors/admin-user-controls-after/add-user-notes-button`
at vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:12:31
at c (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:12:96)
at s.findDeps (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:24:158)
at c (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:12:152)
at requireModule (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:6:60)
at discourse-aebc0fdc441730b0e5f42bf52a5341cffca664e9a40a015a846b1b64f61dd773.js:4420:78
at discourse-aebc0fdc441730b0e5f42bf52a5341cffca664e9a40a015a846b1b64f61dd773.js:4420:1
at Array.forEach (<anonymous>)
at a (discourse-aebc0fdc441730b0e5f42bf52a5341cffca664e9a40a015a846b1b64f61dd773.js:4417:32)
at u (discourse-aebc0fdc441730b0e5f42bf52a5341cffca664e9a40a015a846b1b64f61dd773.js:4420:39)
at discourse-aebc0fdc441730b0e5f42bf52a5341cffca664e9a40a015a846b1b64f61dd773.js:4424:261
at discourse-aebc0fdc441730b0e5f42bf52a5341cffca664e9a40a015a846b1b64f61dd773.js:4420:1
at Array.forEach (<anonymous>)
at a (discourse-aebc0fdc441730b0e5f42bf52a5341cffca664e9a40a015a846b1b64f61dd773.js:4417:32)
at c (discourse-aebc0fdc441730b0e5f42bf52a5341cffca664e9a40a015a846b1b64f61dd773.js:4424:64)
at e.renderedConnectorsFor (discourse-aebc0fdc441730b0e5f42bf52a5341cffca664e9a40a015a846b1b64f61dd773.js:4414:65)
at e.init (discourse-aebc0fdc441730b0e5f42bf52a5341cffca664e9a40a015a846b1b64f61dd773.js:1196:50)
at e.r [as init] (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:2090:9)
at g (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:2007:98)
at e.create (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:2015:108)
at g.create (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:604:93)
at ye.create (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:747:9)
at Object.evaluate (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3299:9)
at Object.evaluate (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3134:13)
at Dt.evaluateSyscall (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3435:61)
at Dt.evaluateInner (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3429:138)
at Dt.evaluateOuter (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3429:59)
at Wt.next (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3490:26)
at Wt._execute (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3489:25)
at Wt.execute (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3488:298)
at Yt.sync (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3492:86)
at Er.render (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:1061:546)
at vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:1087:31
at It (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3425:5)
at Rr._renderRoots (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:1086:34)
at Rr._renderRootsTransaction (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:1091:10)
at Rr._renderRoot (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:1085:50)
at Rr._appendDefinition (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:1080:6)
at Rr.appendOutletView (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:1078:6)
at invoke (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3834:139)
at p.flush (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3826:74)
at h.flush (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3839:207)
at q._end (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3896:9)
at _boundAutorunEnd (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3848:605)
discourse-aebc0fdc441730b0e5f42bf52a5341cffca664e9a40a015a846b1b64f61dd773.js:5224 Uncaught (in promise) TypeError: Cannot read properties of null (reading 'addEventListener')
at discourse-aebc0fdc441730b0e5f42bf52a5341cffca664e9a40a015a846b1b64f61dd773.js:5224:291
at Array.forEach (<anonymous>)
at e.didInsertElement (discourse-aebc0fdc441730b0e5f42bf52a5341cffca664e9a40a015a846b1b64f61dd773.js:5224:253)
at e.r [as didInsertElement] (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:2090:9)
at e.trigger (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:2233:34)
at e.r [as trigger] (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:2090:9)
at ye.didCreate (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:761:32)
at Nt.commit (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3414:3)
at Mt.commit (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3423:17)
at It (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3425:19)
at Rr._renderRoots (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:1086:34)
at Rr._renderRootsTransaction (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:1091:10)
at Rr._revalidate (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:1091:490)
at invoke (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3834:129)
at p.flush (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3826:74)
at h.flush (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3839:207)
at q._end (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3896:9)
at _boundAutorunEnd (vendor-fded770671ed964514369b968313e4ab522dc911c142420bcc24ae31cf85252f.js:3848:605)
Je vous ferai savoir ce qui se passe lorsque je mettrai à jour mon site de test qui le contient…
EDIT : J’ai veillé à ajouter quelques notes utilisateur avant la mise à niveau pour voir si cela causait des problèmes, mais je n’en ai eu aucun. Cela a très bien fonctionné.
J’ai ce plugin sur mon site de test (80fce67150) ainsi qu’ici sur Meta et tout semble fonctionner correctement ?
En fait, en disant cela, le bouton « ajouter une note utilisateur » n’apparaît que sur certaines cartes utilisateur et pas sur d’autres.
Je pense qu’il n’apparaît que pour les personnes qui ont eu une note utilisateur attachée à un moment donné. Ceux qui n’en ont jamais eu ne semblent pas la générer.
@tobiaseigen Avez-vous déjà utilisé des notes utilisateur sur l’un de ces sites ?
Quelle énigme. Je l’ai désactivé maintenant car il ne fonctionne pas sur mes sites, je ne peux donc pas vérifier. Sur le site présentant un écran blanc de la mort, je l’avais utilisé dans le passé mais je ne me souviens plus sur quels utilisateurs. Sur le site présentant un en-tête manquant, je ne l’ai jamais utilisé.
Je pensais que c’était peut-être parce qu’il n’y en avait pas, et qu’il avait du mal à comprendre quelque chose parce qu’il n’y avait aucun précédent à suivre :
`Uncaught (in promise) Error: Could not find module `discourse/plugins/discourse-user-notes/discourse-user-notes/connectors/user-profile-controls/show-notes-on-profile` imported from `discourse/plugins/discourse-staff-notes/discourse-user-notes/connectors/admin-user-controls-after/add-user-notes-button`
Et, pour le second, Cannot read properties of null
Je suis à peu près sûr que l’icône s’affiche normalement sur la carte utilisateur de tout le monde, donc quelque chose cloche même ici.
hmm.. le site de l’écran blanc de la mort affiche ceci dans les paramètres d’un composant de thème personnalisé. peut-être qu’une prochaine étape pour moi est d’essayer de désactiver ce composant de thème, puis de réactiver les notes utilisateur.
Désolé – l’utilisation des sélecteurs CSS ember ou .ember-view n’est pas autorisée, car ces noms sont générés dynamiquement à l’exécution et changeront avec le temps, ce qui finira par entraîner un CSS cassé. Essayez un sélecteur différent.
À moins que je ne comprenne mal votre propos… je ne pense pas que ce soit correct. Je n’ai jamais vu l’icône que lorsqu’une note utilisateur a été créée pour cet utilisateur spécifique. Je ne les ai jamais vues appliquées à tous les utilisateurs simplement lorsque le plugin est activé.
Celui à côté du nom d’utilisateur sur les publications n’apparaît que lorsqu’il y a une note. Mais je pensais que celui de la carte utilisateur était un moyen de les ajouter facilement.
Ah… oui, je pense que nous parlons de l’interface utilisateur à deux endroits différents : sur le profil de l’utilisateur, le bouton doit toujours être présent lorsque le plugin est activé, ainsi :
Mais il n’apparaît à côté de leur nom dans un sujet que s’ils ont une note utilisateur :
Ah… on se rapproche.
Je ne l’ai vu là que lorsque l’utilisateur avait une note associée. C’est ce à quoi je m’attendais, mais je devrais regarder le code pour voir si c’est ce qui est prévu.
J’ai le même problème depuis que j’ai reconstruit l’image docker.
J’obtiens ceci dans la console de développement de Chrome sur la page d’accueil du site, encore et encore :
Uncaught (in promise) Error: Could not find module `discourse/plugins/discourse-user-notes/discourse-user-notes/connectors/user-profile-controls/show-notes-on-profile` imported from `discourse/plugins/discourse-staff-notes/discourse-user-notes/connectors/admin-user-controls-after/add-user-notes-button`
at loader.js:247:1
at c (loader.js:258:1)
at s.findDeps (loader.js:168:1)
at c (loader.js:262:1)
at requireModule (loader.js:24:1)
at plugin-connectors.js:65:1
at plugin-connectors.js:51:1
at Array.forEach (<anonymous>)
at a (plugin-connectors.js:46:1)
at u (plugin-connectors.js:64:1)
at plugin-connectors.js:93:1
at plugin-connectors.js:51:1
at Array.forEach (<anonymous>)
at a (plugin-connectors.js:46:1)
at c (plugin-connectors.js:84:1)
at e.renderedConnectorsFor (plugin-connectors.js:107:1)
at e.init (plugin-outlet.js:53:1)
at e.r [as init] (index.js:449:1)
at g (core_object.js:149:1)
at e.create (core_object.js:685:1)
at g.create (index.js:551:1)
at ye.create (index.js:1054:1)
at Object.evaluate (runtime.js:3301:1)
at Object.evaluate (runtime.js:1312:1)
at Dt.evaluateSyscall (runtime.js:5232:1)
at Dt.evaluateInner (runtime.js:5188:1)
at Dt.evaluateOuter (runtime.js:5180:1)
at Wt.next (runtime.js:6191:1)
at Wt._execute (runtime.js:6175:1)
at Wt.execute (runtime.js:6166:1)
at Yt.sync (runtime.js:6250:1)
at Er.render (index.js:7576:1)
at index.js:7896:1
at It (runtime.js:5074:1)
at Rr._renderRoots (index.js:7876:1)
at Rr._renderRootsTransaction (index.js:7928:1)
at Rr._renderRoot (index.js:7863:1)
at Rr._appendDefinition (index.js:7770:1)
at Rr.appendOutletView (index.js:7752:1)
at invoke (backburner.js:353:1)
at p.flush (backburner.js:241:1)
at h.flush (backburner.js:447:1)
at B._end (backburner.js:999:1)
at B._boundAutorunEnd (backburner.js:648:1)
désactiver le plugin dans admin->plugins fait disparaître l’erreur, mais il n’y a plus de notes
Est-ce possible parce que j’utilise discourse-staff-notes et non discourse-user-notes ?
Autant que je sache, “user notes” est le nouveau nom de “staff notes”, c’est la même chose. Si vous visitez https://github.com/discourse/discourse-staff-notes, vous serez redirigé vers :
Cela ne peut certainement pas faire de mal de corriger le fichier app.yml s’il fait référence à l’ancien chemin.
Pour information, nous avons rencontré la même erreur que Tobias aujourd’hui.
Même erreur, écran blanc sur mobile, pas de navigation supérieure sur ordinateur.
C’est arrivé sur la page d’accueil (peut-être sur plus de pages, je n’ai pas vérifié).
Pour faire court , la remarque gagnante est ici
Même s’ils pointent vers le même dépôt, le plugin se bloque lorsqu’il est installé dans un répertoire de plugin qui ne s’appelle pas discourse-user-notes.
Alors Tobias, je parie que tu es à l’ancienne et que tu l’appelais encore discourse-staff-notes, n’est-ce pas ?
Mais bien sûr ! J’ai mis en place ce site en 2015, donc plutôt vieille école. Je viens de le renommer et je suis en train de le reconstruire, donc nous verrons bien ce qui se passe. Merci pour le tuyau !