Redirection de la Page d'Accueil
Le système de redirection de la page d'accueil de Softyflow est une fonctionnalité puissante qui transforme une page d'accueil générique en un tableau de bord personnalisé adapté au contexte de chaque utilisateur. En redirigeant automatiquement les utilisateurs vers des pages spécifiques en fonction de leurs rôles, métadonnées et conditions personnalisées, vous pouvez considérablement améliorer l'expérience utilisateur et rationaliser les flux de travail.
Aperçu
Le système fonctionne sur un principe simple mais efficace : lorsqu'un utilisateur accède à la page d'accueil par défaut (/home), Softyflow évalue une série de règles ordonnées. Chaque règle contient une condition JavaScript qui est vérifiée par rapport aux données de l'utilisateur connecté. La première règle dont la condition évalue à true est exécutée et l'utilisateur est immédiatement redirigé vers la page spécifiée dans cette règle. Si aucune condition n'est remplie, l'utilisateur est envoyé à la page d'accueil par défaut.
2. Guide Complet de Configuration
La configuration appropriée des règles de redirection est la clé pour créer une expérience utilisateur transparente. Voici comment procéder.
2.1. Accéder au Panneau des Paramètres de Redirection
Tout d'abord, vous devez accéder à l'interface de gestion de la redirection.
- Accédez à paramètres dans l'IDE
/ide/settings - Sélectionnez Page d'Accueil dans le panneau des paramètres
- Afficher la section Page d'Accueil avec les règles de redirection

Le centre névralgique pour gérer toutes les règles de redirection de la page d'accueil dans l'IDE Softyflow.
2.2. Créer et Structurer les Règles de Redirection
2.2.1. Initier une Nouvelle Règle
Pour commencer, ajoutez une nouvelle règle à la liste.
- Cliquez sur le bouton Créer une Règle. Une nouvelle ligne vide apparaîtra dans le tableau des règles.
- Cliquez sur l'icône Paramètres (engrenage) dans la nouvelle ligne pour ouvrir le panneau de configuration de cette règle.

Le tableau des règles de redirection après avoir cliqué sur "Créer une Règle", prêt pour la configuration.
2.2.2. Définir les Composants de la Règle
Chaque règle a trois parties principales qui déterminent son comportement.
- Sélection du Projet : Tout d'abord, choisissez le Projet qui contient votre page cible. Cette liste déroulante filtre les pages disponibles, facilitant la recherche de la bonne page.
- Sélection de la Page : Ensuite, sélectionnez la Page/Interface cible du projet choisi. C'est la destination où l'utilisateur sera envoyé si la condition de la règle est remplie.
- Condition de la Règle : Enfin, écrivez une expression JavaScript qui retourne
trueoufalse. Cette expression a accès à l'objetSF_connectedUser, qui contient toutes les informations sur l'utilisateur actuellement connecté, y compris ses rôles, métadonnées, e-mail, etc.

Le modal de configuration de la règle, où vous liez un projet et une page à une condition spécifique.
2.2.3. Prioriser Vos Règles
L'ordre des règles est critique. Les règles sont évaluées séquentiellement de haut en bas. La première règle qui correspond aux données de l'utilisateur déclenchera la redirection et toutes les règles suivantes seront ignorées.
- Utilisez les flèches vers le haut et vers le bas dans la colonne Tri pour modifier la priorité d'une règle.
- Placez vos règles les plus spécifiques en haut de la liste et les règles plus générales, fourre-tout, en bas.
3. Exemples de Règles Pratiques
3.1. Redirection Basée sur les Rôles
C'est le cas d'utilisation le plus courant : rediriger les utilisateurs en fonction de leur fonction professionnelle. Ici, nous redirigeons tous les utilisateurs ayant le rôle "Administrateur" vers un tableau de bord administrateur dédié.

Une règle qui redirige les utilisateurs avec un ID de rôle spécifique vers une page administrateur désignée.
- Logique : La condition
SF_connectedUser.roles.includes('62d815e3e6056a53653496e1')vérifie si le tableau des rôles de l'utilisateur contient l'ID du rôle "Administrateur". Utilisez toujours les ID de Rôles au lieu des noms pour la stabilité.
3.2. Redirection Basée sur les Métadonnées
Vous pouvez créer une logique plus granulaire en exploitant les métadonnées utilisateur personnalisées. Par exemple, vous pourriez rediriger les responsables du département "Ventes" vers un tableau de bord spécial d'analyse des ventes.

Une règle qui utilise des champs de métadonnées personnalisées — 'département' et 'isManager' — pour la redirection.
- Logique : La condition
SF_connectedUser.metadata.department === 'Sales' && SF_connectedUser.metadata.isManager === 'true'combine deux contrôles de métadonnées pour cibler un groupe d'utilisateurs très spécifique.
3.3. Redirection Basée sur l'E-mail pour les Utilisateurs Spécifiques
Pour les exceptions ou les règles qui s'appliquent à un seul individu, vous pouvez utiliser son adresse e-mail.

Cette règle cible un seul utilisateur par son adresse e-mail pour un remplacement spécifique.
- Logique : La condition
SF_connectedUser.mail === 'specific.user@example.com'fournit un moyen direct de gérer les cas ponctuels. Cette règle devrait être placée haut dans la liste de priorités.
4. Meilleures Pratiques pour la Gestion des Règles
4.1. Organisation des Règles
Ordonnez par Spécificité : Placez toujours les règles plus spécifiques avant les règles générales. Une règle pour l'e-mail d'un utilisateur spécifique devrait venir avant une règle pour tout un département.
Utilisez des Conditions Descriptives : Écrivez des conditions claires et lisibles. Cela facilite la maintenance pour vous et votre équipe.
// Bon : Clair et auto-documenté
SF_connectedUser.metadata.department === "Finance" &&
SF_connectedUser.metadata.isManager === "yes";
// Mauvais : Cryptique et difficile à maintenir
SF_connectedUser.metadata.d === "F" && SF_connectedUser.metadata.m === "y";Testez Minutieusement : Utilisez un environnement de test pour vérifier que vos règles fonctionnent comme prévu pour différents profils d'utilisateurs avant de déployer en production.
4.2. Considérations de Performance
- Minimisez le Nombre de Règles : Quelques règles bien conçues et efficaces sont meilleures qu'une longue liste de règles simples.
- Écrivez des Conditions Efficaces : Dans les conditions
&&complexes, placez les vérifications plus rapides à évaluer ou plus restrictives en premier. Cela permet à l'expression d'échouer rapidement. - Évitez les Opérations Lourdes : Les conditions doivent être légères. Évitez de faire des appels API, des calculs complexes ou du traitement lourd des données dans une règle.
4.3. Directives de Sécurité
Validez l'Existence des Données : Ne supposez jamais qu'un champ de métadonnées existe. Vérifiez toujours sa présence avant d'accéder à sa valeur pour éviter les erreurs.
// Sûr : Vérifie les métadonnées et le département
SF_connectedUser.metadata && SF_connectedUser.metadata.department === "IT";
// Risqué : Lèvera une erreur si les métadonnées ne sont pas définies
SF_connectedUser.metadata.department === "IT";Utilisez les ID au Lieu des Noms : Référencez toujours les rôles par leur ID unique, car les noms peuvent changer.
5. Dépannage des Problèmes Courants
Si une règle ne fonctionne pas comme prévu, vérifiez les points suivants :
- Ordre des Règles : Une règle plus générale est-elle placée avant votre règle spécifique, la faisant ignorer ?
- Syntaxe de la Condition : Votre syntaxe JavaScript est-elle correcte ? Vérifiez la console de développement du navigateur pour les erreurs lors de la connexion ou de l'accès à la page d'accueil.
- Données de l'Utilisateur : L'utilisateur avec lequel vous testez possède-t-il réellement les rôles et les métadonnées requis par la condition ? Vérifiez le profil de l'utilisateur dans la section gestion des utilisateurs.
- Page Cible : La page vers laquelle vous redirigez existe-t-elle encore et est-elle accessible à l'utilisateur ?
En combinant réfléchie les rôles, les métadonnées et la logique personnalisée, vous pouvez transformer la page d'accueil de Softyflow en un centre de navigation dynamique et intelligent qui répond aux besoins uniques de chaque utilisateur.