Barre d'annonce

:information_source: Résumé Afficher une barre d’annonce
: eyeglasses: Aperçu https://discourse.theme-creator.io
:hammer_and_wrench: Dépôt https://github.com/nolosb/discourse-announcement-bar
:question: Guide d’installation Comment installer un thème ou un composant de thème
:open_book: Nouveau sur les thèmes Discourse ? Guide du débutant pour utiliser les thèmes Discourse

Installer ce composant de thème

Paramètres

Il existe quelques options pour définir le contenu, les cookies et l’emplacement de la mise en page :

Styles

Pour le style CSS, la structure du composant est :

.announcement-bar {
  &__wrapper { }

  &__container { }

  &__content { }

  &__close { }
}
24 « J'aime »

Excellent travail comme toujours @manuel :clap: :slight_smile:

8 « J'aime »

Idée de composant géniale !

Serait-il possible d’ajouter des paramètres qui limiteraient les groupes d’utilisateurs auxquels l’annonce devrait être visible ?

6 « J'aime »

Merci pour la suggestion @kinetiksoft ! J’aime garder les composants partagés sans fonctionnalités de groupe cependant :smile: . La raison est que, d’après mon expérience, les cas d’utilisation réels sont souvent plus spécifiques que la simple sélection d’un groupe. Vous pourriez avoir besoin de distinguer également les visiteurs anonymes. Ou afficher un contenu différent à différents groupes. Et cela ajoute déjà de la complexité.

Je fais généralement un fork des composants ou j’implémente simplement différentes options de mise en page avec CSS. Je crains donc que ce ne soit aussi ma recommandation.

Concernant le ciblage de groupes avec CSS, le composant Discourse groups css classes in body est une excellente aide.

2 « J'aime »

2 messages ont été déplacées vers un nouveau sujet : Le bouton d’installation du thème ne fonctionne pas sous Ember 5

Salut
Après l’installation et l’activation, j’obtiens l’erreur suivante :

Je pense que cette erreur de console est pertinente :

Il me manque quelque chose ? Merci

2 « J'aime »

Il semble que vous utilisiez une version de Discourse qui ne prend pas en charge le format de fichier .gjs.

Je crois que cela a été introduit dans la version v3.2.0.beta3 (juillet 2023 – spécifiquement dans ce commit).

Malheureusement, à moins que quelqu’un ne crée une version sans utiliser de fichier .gjs, vous pouvez soit mettre à niveau Discourse, soit désinstaller le composant.

4 « J'aime »

Nous sommes sur la version 3.1, donc cela devrait avoir du sens.

Espérons que Events sera bientôt mis à niveau pour prendre en charge la version 3.2 et nous changerons de cap.

Merci

4 « J'aime »

Désolé pour la confusion @martyn_thomas et merci pour l’explication @Arkshine ! J’ai mis à jour le fichier about pour indiquer "minimum_discourse_version": "3.2.0.beta3".

6 « J'aime »

Salut,

Je peux me tromper, mais je crois que lorsque quelqu’un rejette l’annonce (ce qui devrait être une option pour l’administrateur pour la supprimer), elle est supprimée pour tout le monde séparément en mode bureau ou en mode mobile.

Je ne le sais que parce que je l’ai éteint et rallumé pour le tester, et je l’ai laissé fonctionner. Je ne l’ai pas rayé, et maintenant il a disparu ?

Je ne comprends pas exactement à quoi vous faites référence. Pourriez-vous répéter ce que vous avez fait dans le backend d’administration, puis ce que vous avez vu comme résultat pour les utilisateurs ? Et pour quels utilisateurs ?

Je fais référence à ce composant de thème.

Je l’ai sur mon forum, mais il disparaît lorsque je ne l’ai pas décoché, car vous avez la possibilité de l’afficher ou non, en tant qu’utilisateur final.

Je l’ai désactivé et réactivé pour voir s’il y avait un problème, mais je pense que lorsque quelqu’un ignore les composants de thème, cela le supprime pour tous les autres. D’abord, je l’ai remarqué sur ma vue de bureau, puis ensuite sur la vue mobile.

1 « J'aime »

Ça ne devrait pas. Rejeter une bannière globale ou un sujet épinglé ne devrait le rejeter que pour cet utilisateur connecté. Pas pour tous les utilisateurs.

1 « J'aime »

La désactivation du composant le supprime pour tous.

Maintenant, si vous avez rejeté la bannière actuelle et désactivé puis réactivé le composant. Il ne réapparaîtra pas à moins qu’il ne soit modifié ou, sauf erreur, vous devrez peut-être vider les cookies.

Hmm… J’ai fait cela. J’ai également usurpé l’identité de quelqu’un qui ne s’est pas connecté depuis un certain temps et qui ne peut pas voir la barre d’annonces.

@Aaron_Walsh ce que je peux reproduire :

  • ignorer la barre d’annonce, que ce soit en tant qu’utilisateur ou visiteur anonyme
  • se déconnecter ou passer à un autre compte utilisateur sur le même navigateur
  • la barre ne s’affichera pas sur le même navigateur

Je suppose donc qu’il s’agit d’un problème de cache. Apparemment, la façon dont le cookie est implémenté n’est pas sensible au compte utilisateur mais à l’historique du navigateur. J’ai copié le code du cookie d’un autre composant et je ne connais pas très bien le fonctionnement détaillé des cookies. Je suis prêt à changer le code si c’est possible et si quelqu’un a le code. Sinon, cela ne me préoccupe pas trop. Ce que je vois, c’est que cela n’affecte que le même navigateur, et que la barre n’est pas ignorée pour les autres utilisateurs lors de leur session respective.

3 « J'aime »

Je peux confirmer. Barre chargée. Ignorée avec mon compte administrateur.

Connecté dans un navigateur anonyme avec un utilisateur différent.

La barre non connectée s’affiche. L’utilisateur de test connecté affiche la barre. Ignorer la barre, se déconnecter et se reconnecter sans la barre. Fermer le navigateur Chrome incognito et en ouvrir un nouveau. La barre d’annonce est de retour.

Donc, c’est définitivement un problème lié aux cookies/au cache du navigateur.

1 « J'aime »

Impersonate ne efface pas les cookies de votre navigateur.

Oui, je sais. Je veux dire, j’ai effacé les cookies, et même les données, avec Chrome juste pour être sûr.

L’usurpation d’identité n’était qu’un test pour voir s’ils avaient cela affiché sur leur compte.

1 « J'aime »