Partager un projet
Cette section décrit en détail le partage d’un projet dans HNetwork : inviter des collaborateurs par email, ajuster leurs rôles, transférer la propriété, et les cas particuliers liés aux projets rattachés à une organisation.
💡 Le partage est ouvert via le bouton 🤝 Partager de la toolbar du canvas ou de la page docs. La modale s’ouvre avec la liste des membres actuels et un formulaire d’invitation.
📷 [IMAGE — modale de partage] (à venir)
1. Vue d’ensemble de la modale
Section titled “1. Vue d’ensemble de la modale”La modale « Partager le projet » se compose de deux sections :
- Formulaire d’invitation (en haut, visible si tu as les droits) — email + rôle + bouton Inviter.
- Liste des membres — owner en tête, puis admins, editors, viewers, triés par date d’ajout.
2. Rôles de projet
Section titled “2. Rôles de projet”Quatre rôles existent au niveau du projet, indépendamment du rôle dans l’organisation :
| Rôle | Libellé | Capacités |
|---|---|---|
owner | Owner | Tout faire. Un seul owner par projet. Peut transférer la propriété ou supprimer le projet. |
admin | Admin | Modifier le projet (canvas + docs), gérer le partage. Ne peut pas supprimer le projet ni transférer la propriété. |
editor | Éditeur | Modifier le canvas et les docs. Pas de gestion du partage. |
viewer | Lecteur | Lecture seule (canvas + docs en read-only). |
💡 Les rôles owner et admin sont les seuls à pouvoir inviter ou retirer des membres. Les editors et viewers voient la liste mais ne peuvent que quitter le projet.
Codes couleur
Section titled “Codes couleur”Les rôles affichent un badge coloré :
- Owner → ambre (couronne 👑 implicite).
- Admin → violet.
- Éditeur → vert.
- Lecteur → gris.
3. Inviter un membre
Section titled “3. Inviter un membre”🔒 Visible uniquement si tu es
ownerouadmindu projet.
- Renseigne l’email du collaborateur.
- Choisis son rôle : Admin, Éditeur ou Lecteur.
- Clique sur Inviter.
Autocomplete (projets org-scopés)
Section titled “Autocomplete (projets org-scopés)”Si le projet est rattaché à une organisation, l’autocomplete propose automatiquement les membres de l’org correspondant à ta saisie :
- Suggestions par préfixe sur le nom ou l’email.
- Maximum 6 résultats.
- Les membres déjà présents sur le projet sont exclus de la liste.
- Clique sur une suggestion pour pré-remplir l’email.
📷 [IMAGE — autocomplete membres org] (à venir)
Comportement selon le destinataire
Section titled “Comportement selon le destinataire”Deux cas possibles :
- L’invité s’est déjà connecté au moins une fois à HNetwork → l’accès est créé immédiatement, toast : « Membre ajouté ».
- Pas de compte → l’invitation est enregistrée en attente :
- L’accès sera créé automatiquement à la première connexion de la personne.
- Toast : « Invitation enregistrée — l’accès sera créé à la première connexion de l’invité ».
- ⚠️ HNetwork n’envoie pas d’email automatique à ce stade — pense à prévenir l’invité par un canal externe.
Erreurs courantes
Section titled “Erreurs courantes”| Erreur | Cause | Solution |
|---|---|---|
| 409 — déjà membre | L’email est déjà dans la liste. | Modifier son rôle dans la liste. |
| 400 — owner non transférable | Tentative d’inviter en tant que owner. | Inviter en admin puis transférer la propriété (voir section 5). |
| 400 — email invalide | Format d’email incorrect. | Corriger la saisie. |
4. Liste des membres
Section titled “4. Liste des membres”Chaque ligne affiche :
| Élément | Détails |
|---|---|
| Avatar | Photo de profil ou initiale colorée. |
| Nom | Nom complet du membre (ou email à défaut). |
| Sous le nom (si différent du libellé principal). | |
| Badge « vous » | Repère ta propre ligne. |
| Badge « En attente » | Repère les invitations non encore activées (ambre). |
| Rôle | Badge coloré (read-only) ou sélecteur (éditable). |
| Actions | 👑 transfert / 🔁 renouvellement / 🗑️ retrait. |
📷 [IMAGE — liste des membres] (à venir)
Modifier un rôle
Section titled “Modifier un rôle”- Le sélecteur de rôle apparaît au survol pour les lignes éditables.
- Disponible si :
- Tu es
ownerouadmin. - La cible n’est pas le
owner. - La cible n’est pas toi-même.
- La cible n’est pas une invitation en attente (le rôle est figé jusqu’à acceptation).
- Cas particulier
admin → autre admin: seul leownerpeut modifier le rôle d’un autre admin.
- Tu es
- Changement appliqué immédiatement, sans confirmation.
Retirer un membre
Section titled “Retirer un membre”L’action 🗑️ est disponible avec ces règles :
| Cible | Toi | Action possible si |
|---|---|---|
| Membre actif (non-owner) | Owner / Admin | Toujours (sauf admin → admin qui est réservé à l’owner). |
| Toi-même | N’importe qui sauf owner | Toujours — bouton libellé « Quitter ». |
| Invitation en attente | Owner / Admin | Toujours — bouton libellé « Annuler l’invitation ». |
| Owner | Personne | Impossible : il faut d’abord transférer la propriété. |
Une confirmation s’affiche systématiquement :
- Retrait standard : « Le membre perdra l’accès à ce projet ».
- Self-leave : « Vous perdrez l’accès à ce projet » → la modale se ferme après confirmation, retour au dashboard.
- Annulation d’invite : « L’invitation sera annulée. L’invité ne pourra plus rejoindre via ce lien. »
📷 [IMAGE — confirmation retrait] (à venir)
5. Transférer la propriété
Section titled “5. Transférer la propriété”🔒 Réservé au
ownerdu projet.
Le bouton 👑 apparaît sur chaque ligne d’un membre actif (non owner, non pending).
- Clique sur l’icône couronne.
- La modale de confirmation rappelle : « Le projet sera transféré à {nom}. Vous deviendrez administrateur. »
- Confirme.
Conséquences :
- La cible devient le nouvel owner.
- Tu passes admin automatiquement (
demoted_role: "admin"). - Le badge rôle dans la toolbar du canvas se met à jour en direct.
⚠️ Action immédiate et irréversible côté projet — pour récupérer la propriété, il faudra demander au nouvel owner de te la retransférer.
📷 [IMAGE — modale transfert de propriété] (à venir)
6. Invitations en attente
Section titled “6. Invitations en attente”Une invitation en attente (badge ambre « En attente ») signifie que l’invité n’a pas encore activé son accès (il ne s’est jamais connecté à HNetwork avec cet email).
Chaque ligne affiche :
- L’email invité.
- L’expiration :
- « Expire dans X j — accès à la première connexion ».
- « Expire dans X h — accès à la première connexion » (jour J).
- « Invitation expirée » si la fenêtre est dépassée.
- « Accès créé à la première connexion » si l’invitation n’a pas d’expiration.
Renouveler une invitation
Section titled “Renouveler une invitation”🔒 Visible si tu es
ownerouadmin, sur les lignes pending uniquement.
Le bouton 🔁 :
- Refresh la date d’expiration.
- Renvoie l’email d’invitation (toast : « Invitation renouvelée — email renvoyé »).
- Pratique quand l’invitation est sur le point d’expirer ou si l’email initial a été perdu.
Annuler une invitation
Section titled “Annuler une invitation”Cliquer 🗑️ ouvre la modale « Annuler l’invitation envoyée à {email} ? ». Après confirmation, l’invitation est supprimée et l’invité ne pourra plus rejoindre via ce lien.
📷 [IMAGE — invitation en attente] (à venir)
7. Quitter un projet
Section titled “7. Quitter un projet”N’importe quel membre non-owner peut quitter un projet :
- Ouvre la modale de partage.
- Clique sur 🗑️ sur ta propre ligne.
- Confirme dans la modale « Quitter ce projet ? ».
Conséquences :
- Tu perds l’accès au projet (canvas + docs).
- La modale se ferme, retour au dashboard.
- Si tu étais le dernier non-owner, le owner se retrouve seul (le projet n’est jamais orphelin).
⚠️ Si tu es le owner, l’action « Quitter » n’est pas proposée. Il faut d’abord transférer la propriété à un autre membre.
8. Projets perso vs projets org
Section titled “8. Projets perso vs projets org”Projet personnel (perso)
Section titled “Projet personnel (perso)”- L’owner est le créateur, dans son espace perso.
- Aucune relation avec une organisation.
- Le partage se fait individu par individu (par email).
- Pas d’autocomplete d’org disponible.
Projet org-scopé
Section titled “Projet org-scopé”- Le projet appartient à une organisation.
- L’owner reste l’utilisateur qui l’a créé, mais l’org applique en plus son cloisonnement par utilisateur (un membre de l’org ne voit pas le projet par défaut, sauf si tu l’ajoutes ici).
- L’autocomplete suggère les membres de l’org.
- Les admins de l’org ayant la permission
hnetwork.content.access_any_projectpeuvent outrepasser le cloisonnement et accéder au projet en édition depuis l’admin org → onglet Contenu (voir Admin → Contenu).
💡 Pour déplacer un projet perso → org : depuis la carte du projet sur le dashboard, clic sur l’icône ↔️ (voir Dashboard → carte projet).
9. Récapitulatif des permissions
Section titled “9. Récapitulatif des permissions”| Action | Owner | Admin | Editor | Viewer |
|---|---|---|---|---|
| Voir la liste des membres | ✅ | ✅ | ✅ | ✅ |
| Inviter un membre | ✅ | ✅ | ❌ | ❌ |
| Modifier un rôle (non-admin) | ✅ | ✅ | ❌ | ❌ |
| Modifier un rôle d’un admin | ✅ | ❌ | ❌ | ❌ |
| Retirer un non-admin | ✅ | ✅ | ❌ | ❌ |
| Retirer un admin | ✅ | ❌ | ❌ | ❌ |
| Annuler une invitation | ✅ | ✅ | ❌ | ❌ |
| Renouveler une invitation | ✅ | ✅ | ❌ | ❌ |
| Transférer la propriété | ✅ | ❌ | ❌ | ❌ |
| Se retirer (quitter) | ❌¹ | ✅ | ✅ | ✅ |
¹ L’owner doit d’abord transférer la propriété avant de quitter.
10. FAQ
Section titled “10. FAQ”Pourquoi je ne peux pas inviter quelqu’un en owner directement ?
Le rôle owner est unique et nécessite un transfert explicite depuis
le owner actuel. Invite la personne en admin, puis transfère.
L’invité a reçu une erreur 404 en s’inscrivant. C’est la limitation v3.1 : un email non connu de Kinde n’est pas trouvable à l’invitation. La v3.3 corrige ce point avec les pending invites Kinde. Solution : demande à l’invité de se créer un compte sur HNetwork au préalable, puis renouvelle l’invitation.
Comment partager avec une équipe entière ? Aujourd’hui, le partage projet se fait individu par individu. Pour un partage à l’échelle d’une équipe, utilise plutôt le partage par groupe (à l’étude — pour l’instant, ajoute chaque membre explicitement).
Le bouton « Partager » est désactivé. Le projet n’est pas encore chargé, ou tu n’as pas le droit de l’ouvrir.
Comment savoir qui est l’owner actuel ? La première ligne de la liste affiche le badge ambre Owner.