Composant de bannière de page de groupe et/ou de redirection de connexion

Ce composant vous permet de rediriger les utilisateurs où vous le souhaitez après la connexion, et vous permet également d’afficher une bannière de bienvenue sur la page des groupes ( /g ).

Installer ce composant de thème

Il est construit avec deux parties indépendantes, vous pouvez donc rediriger où vous voulez, ou l’utiliser uniquement pour afficher une bannière sur la page des groupes. Le comportement par défaut est de rediriger les nouveaux utilisateurs vers la page des groupes où une bannière de bienvenue les encourage à rejoindre des groupes pour les aider à s’engager dans votre communauté.

Vous pouvez également utiliser ce composant pour rediriger les utilisateurs ayant un certain niveau de confiance vers une page à la connexion, ou les utilisateurs qui ont rejoint moins qu’un nombre de groupes que vous sélectionnez.

Redirection de première connexion (First Login Redirect)

Un composant de thème Discourse qui redirige les utilisateurs sans appartenance à un groupe vers une page personnalisée et affiche une bannière de bienvenue personnalisable.

Fonctionnalités

  • Redirection Intelligente - Redirige les utilisateurs sans appartenance à un groupe vers une page personnalisée à la connexion
  • Bannière Personnalisable - Bannière de bienvenue colorée sur la page des groupes
  • Entièrement configurable - Active/désactive la redirection et la bannière indépendamment
  • Logique basée sur les groupes - Arrête la redirection une fois que l’utilisateur rejoint n’importe quel groupe
  • Sensible au niveau de confiance - La visibilité de la bannière peut être restreinte par le niveau de confiance
  • Dégradé Arc-en-ciel - Arrière-plan à dégradé accrocheur de 6 couleurs (avec bascule pour couleur unie)
  • Adapté aux mobiles - La bannière s’adapte aux écrans mobiles

Installation

  1. Dans la console d’administration de Discourse, allez à Personnaliser → Thèmes → Composants et cliquez sur Installer

  2. Choisissez Depuis un dépôt Git et collez :

    https://github.com/focallocal/first-login-redirect
    
  3. Une fois installé, ajoutez le composant à votre thème actif

Comment cela fonctionne

Logique de Redirection

  • Vérifie si l’utilisateur est membre d’un groupe
  • Détecte quand il navigue vers la page d’accueil
  • Le redirige vers l’URL configurée (par défaut : /g)
  • Arrête la redirection une fois qu’il rejoint un groupe
  • Peut être désactivé indépendamment de la bannière

Bannière de Bienvenue

  • S’affiche sur la page d’index des groupes (/g) par défaut
  • La visibilité est contrôlée par les paramètres de niveau de confiance
  • Peut être désactivé indépendamment de la redirection
  • Se masque automatiquement une fois que l’utilisateur atteint le niveau de confiance 1
  • Positionné en haut de la liste des groupes en utilisant la sortie before-groups-index

Personnalisation

Paramètres du Thème (Panneau d’Administration)

Toute la personnalisation peut être effectuée depuis le panneau d’administration de Discourse sans modifier le code !

  1. Allez à Admin → Personnaliser → Thèmes
  2. Cliquez sur votre thème qui inclut ce composant
  3. Allez à Paramètres et trouvez la section « First Login Redirect »

Paramètres disponibles :

Paramètres de Redirection :

  • Activer la Redirection : Active/désactive la fonctionnalité de redirection (par défaut : vrai)
  • Groupes Min Requis : Nombre de groupes créés par l’utilisateur qu’il doit rejoindre avant que la redirection ne s’arrête (par défaut : 1)
    • Les groupes automatiques (comme trust_level_0, everyone) ne comptent pas
  • URL de Redirection : Où envoyer les utilisateurs sans groupes (par défaut : /g)
    • Exemples : /g (groupes), /categories, /about, /latest

Paramètres de la Bannière :

  • Afficher la Bannière : Active/désactive la bannière (par défaut : vrai)
  • Niveau de Confiance Min : Niveau de confiance minimum pour voir la bannière (0-4, par défaut : 0)
  • Niveau de Confiance Max : Niveau de confiance maximum pour voir la bannière (0-4, par défaut : 4)
  • Titre de la Bannière : Texte principal en gros
  • Sous-titre de la Bannière : Texte explicatif plus petit

Typographie :

  • Taille de Police du Titre : Taille du titre principal (par défaut : 2.5em)
  • Taille de Police du Sous-titre : Taille du sous-titre (par défaut : 1.25em)
  • Ombre de Texte Activée : Active l’ombre portée du texte pour la lisibilité
  • Lueur de Texte Activée : Active l’effet de lueur externe

Couleurs :

  • Utiliser le Dégradé : Active/désactive le dégradé (si désactivé, utilise une couleur unie)
  • Couleur Dégradé 1-6 : Personnalisez chaque couleur du dégradé
    • Par défaut : Rose → Orange → Jaune → Vert → Cyan
    • Réglez « Utiliser le Dégradé » sur NON pour une couleur unie en utilisant la Couleur 1

Mise en Page :

  • Rembourrage de la Bannière : Espace à l’intérieur de la bannière (par défaut : 3rem 2rem)
  • Rayon de la Bordure : Arrondi des coins (par défaut : 12px, utilisez 0 pour carré)


Exemples

Afficher uniquement pour TL0 (nouveaux utilisateurs) :
Réglez Niveau de Confiance Min = 0, Niveau de Confiance Max = 0

Afficher pour tout le monde sauf les administrateurs :
Réglez Niveau de Confiance Min = 0, Niveau de Confiance Max = 3

Bannière Couleur Unie :
Désactivez « Utiliser le Dégradé » et définissez la Couleur 1 sur la couleur désirée (par exemple, #FF5722 pour orange).

Dégradé Bicolore :
Activez « Utiliser le Dégradé » et définissez les couleurs 1-3 sur une couleur, les couleurs 4-6 sur une autre.

Texte Plus Grand :
Réglez le titre à 3em et le sous-titre à 1.5em.

Aucun Effet :
Désactivez à la fois « Ombre de Texte » et « Lueur de Texte » pour un texte plat.

Désactiver la Redirection (Bannière Seulement)

Supprimez ou commentez le fichier :
javascripts/discourse/api-initializers/first-login-redirect.js

Modifier l’Exigence de Niveau de Confiance

Dans les deux fichiers d’initialisation, changez :

currentUser.trust_level === 0

en :

currentUser.trust_level <= 1  // TL0 et TL1

Détails Techniques

  • Version de l’API : 1.8.0 (API Discourse moderne)
  • Type de Composant : Composant Glimmer avec balise de modèle (template tag)
  • Sortie de Plugin (Plugin Outlet) : before-groups-index
  • Compatibilité : Discourse 2.8.0+

Dépannage

Q : La redirection ne fonctionne pas
R : Effacez la sessionStorage de votre navigateur et testez avec un nouveau compte de Niveau de Confiance 0

Q : La bannière ne s’affiche pas lors des tests
R : Vérifiez que vous êtes sur la route /g et connecté en tant qu’utilisateur TL0, ou vérifiez les valeurs que vous avez définies dans l’administration. Consultez la console du navigateur pour les erreurs.

Q : Boucle de redirection
R : La vérification de la sessionStorage devrait empêcher cela. Si cela se produit, effacez le cache du navigateur et la sessionStorage.

Licence

MIT — Mouvement pour le Bonheur Public

1 « J'aime »