Plugin Événements 📅

J’ai fait la mise à jour vers la dernière version aujourd’hui. Cela fonctionne maintenant. Merci.

2 « J'aime »

C’est bon à savoir. Vous étiez très certainement confronté à ce problème.

2 « J'aime »

Bonjour à tous,

Je rencontre depuis environ un mois un bug que je n’arrive pas à reproduire, mais que je ne sais pas non plus résoudre.
Sur l’une des instances que je gère, la page Agenda est triée par date d’activité plutôt que par date de l’événement.
J’utilise les plugins suivants (mais je ne pense pas qu’ils soient impliqués, car j’utilise les mêmes sur d’autres instances) :

Plugins

discourse-checklist 0.4.1 O
discourse-custom-wizard 0.1 O
discourse-data-explorer 0.2 O
discourse-events 0.1 O
discourse-footnote 0.1 O
discourse-locations 0.1 O
discourse-math 0.9 N
discourse-quick-messages 0.1 N
discourse-sidebar-categories 0.1 O
discourse-solved 0.1 O
discourse-whos-online 1.0 O
docker_manager 0.1 O

Est-ce que l’un d’entre vous a une idée d’un problème de configuration, ou quelque chose que j’aurais pu faire qui aurait causé cela, ou un endroit où je devrais vérifier pour diagnostiquer le problème ?

Plus de détails ou accès à l’instance via MP.

Merci d’avance

2 « J'aime »

Merci pour votre signalement.
Veuillez cliquer sur le lien « Signaler un bug » dans le premier message de ce sujet et remplir le formulaire avec les détails pertinents. Cela nous permettra de faciliter la planification d’un moment approprié pour examiner le problème.

3 « J'aime »

Bonjour à tous,

À côté du nom du sujet, une icône de calendrier et la date de l’événement s’affichent sur les pages /latest, /top, /unread ou /agenda. Elles ne sont pas affichées sur la page <Category + Latest>, ni sur mobile.

Existe-t-il un paramètre pour les ajouter là-bas ? (Je n’ai pas réussi à le trouver)
Sinon, quelqu’un voit-il une astuce un peu brutale que je pourrais utiliser pour y parvenir, par exemple en copiant-collant quelque chose dans le code du plugin pour /latest afin de l’activer sur /categories ? (même si cela deviendrait encombré, je trouverai un moyen avec CSS pour que ce ne soit pas trop horrible)

Merci d’avance

2 « J'aime »

Oui. Cela est signalé sur notre instance. Nous programmerons une correction sous peu.

3 « J'aime »
      if (this._state === 'destroying') return;

Pouvez-vous m’expliquer l’objectif de cette ligne de code dans l’observateur Ember ? Est-ce lié au cycle de vie des composants Ember : https://guides.emberjs.com/release/components/the-component-lifecycle/ ?

2 « J'aime »

Oui. Vous pouvez en fait l’afficher dans la console et voir sa valeur lors des différents événements du cycle de vie.

1 « J'aime »

D’accord, alors quel est l’intérêt de simplement faire un retour quand l’état est ‘destroying’ ? Que se passerait-il si on omettait cette ligne ?

1 « J'aime »

Pour éviter que les deux instructions suivantes ne soient exécutées, car elles deviendraient inutiles :slight_smile:

1 « J'aime »

Donc, c’est pour la performance ?

2 « J'aime »

Cela vaudrait la peine de le faire même s’il n’y avait aucun gain de performance. Pourquoi voudriez-vous exécuter un tas d’instructions inutiles dans un cas particulier ?

Maintenant que j’y ai réfléchi et fait quelques recherches, il existe un terme approprié pour cela : le « pattern de retour anticipé » pour les fonctions.

1 « J'aime »


J’ai creusé un peu plus. J’ai placé un point d’arrêt sur la ligne, puis j’ai exécuté les instructions. Non seulement il est inutile de les exécuter, mais cela provoque en réalité une erreur.

2 « J'aime »

J’ai dit inutiles, mais oui, cela provoquerait également une erreur. Si cela vous intéresse, vous pouvez consulter ember-concurrency, qui propose une solution prête à l’emploi pour gérer ce type de situations. Elle n’est toutefois pas encore incluse dans le cœur de Discourse.

Ainsi, si elle était utilisée, ce cas serait géré par la bibliothèque elle-même.

1 « J'aime »

Je viens de regarder cette conférence tout en apprenant la différence entre les observateurs et les propriétés calculées :

Pourriez-vous m’expliquer pourquoi un observateur a été utilisé dans ce cas plutôt qu’une propriété calculée ?
J’essaie de comprendre les compromis et les différents cas d’usage.

1 « J'aime »

Cela peut-il être fait pour fonctionner sur les pages de balises ?

1 « J'aime »

Quelle fonctionnalité souhaitez-vous pour les pages de balises ? Le plugin Événements affecte principalement les sujets, mais les catégories peuvent également bénéficier d’un calendrier et d’une vue d’agenda des sujets d’événements au sein de la catégorie. Proposez-vous d’offrir une vue d’agenda des sujets d’événements tagués ? Cela pourrait être intéressant, par exemple pour afficher tous les événements tagués par un pays. Ce serait vraiment cool ! Mais ce n’est pas sur la feuille de route pour le moment, à ma connaissance. Vous pouvez demander cette fonctionnalité sur https://thepavilion.io/.

3 « J'aime »

Merci pour votre réponse @tobiaseigen. Nous faisons la promotion intensive des étiquettes pour la navigation des utilisateurs, car elles sont incroyablement flexibles. Le principal problème est que la plupart des plugins et des composants de thème ne fonctionnent pas avec elles. Donc oui, c’est cette flexibilité supplémentaire que nous souhaitons créer. Tout ce que les utilisateurs étiquettent dans les publications aurait un calendrier associé qu’ils peuvent utiliser s’ils visitent la page de l’étiquette.

Vous pouvez voir avec le plugin Kanban que l’un de nos développeurs bénévoles du Public Happiness Movement a réussi à l’adapter pour les pages d’étiquettes : https://github.com/artysidorenko/discourse-kanban-theme

Je suis moi-même un développeur assez basique, mais je me demande si le code utilisé par @artysidorenko peut être modifié pour fonctionner avec ce plugin également. Honnêtement, il y a tellement de plugins et de composants de thème qui bénéficieraient de fonctionner aussi avec les pages d’étiquettes, je me demande si l’équipe principale ne souhaiterait pas packager une solution standard.

3 « J'aime »

Vous pouvez activer le plug-in non seulement par catégorie, mais également au niveau du système. Cela devrait peut-être suffire pour votre cas d’usage.

1 « J'aime »

Merci pour votre réponse. Lorsqu’on utilise des balises pour la navigation, les utilisateurs ne se trouvent pas dans une catégorie, ce qui les empêche de voir un calendrier ou un lien. De plus, un calendrier global à l’échelle du site ne suffit pas pour plusieurs équipes.

1 « J'aime »