Isi-APP Docs fonctionnelles
Toutes les docs
Markdown brut
Templates de widgets — Documentation Fonctionnelle
Actif widget functional Revu le 2026-08-11 widget/widget-templates.md

Templates de widgets

Configurations types de widgets, nommées et réutilisables, applicables sur un client depuis le Widget Manager.


À quoi ça sert

Jusqu'ici, initialiser les widgets d'un client ne proposait qu'un seul point de départ : « Importer les widgets par défaut », c'est-à-dire une configuration unique et générique qui ne correspond au profil d'aucun client en particulier.

Les templates permettent de préparer à l'avance plusieurs configurations types nommées (« Presta », « Portail Catho », « Portail Startup »…), puis de les appliquer en deux clics sur autant de clients que souhaité.


Règles d'accès

  • Réservé aux administrateurs ISI-App de profil 1 (entité ISI). Un utilisateur isidsi d'un autre profil accède toujours au Widget Manager mais ne voit pas l'onglet Gestion templates, et reçoit une erreur 403 s'il tente d'ouvrir l'URL directement.
  • Le pilotage se fait depuis le Widget Manager (/widgets-panel), onglet Gestion templates. Seule l'action Importer un template vit dans l'onglet Affichage clients : c'est la seule qui dépende du client sélectionné.

Comment ça marche

Créer un template

La création se fait en deux temps.

Étape 1 — Identité. Depuis l'onglet « Gestion templates », cliquer sur « Créer un template ». Renseigner :

  • le nom (obligatoire, unique parmi les templates existants — le nom d'un template supprimé redevient disponible) ;
  • l'icône (facultative) — choisie dans la bibliothèque d'icônes de l'application, elle sert de repère visuel dans la liste des templates ;
  • la description (facultative, 500 caractères max) — à quel profil de client ce template s'adresse, ce qu'il contient. Elle est reprise dans la liste des templates et rappelée au moment de l'appliquer sur un client, pour confirmer qu'on choisit le bon.

Valider avec « Continuer vers les widgets ». Annuler revient à la liste sans rien créer.

Étape 2 — Composition. Le formulaire d'identité laisse la place au contenu : ajouter les widgets un à un, exactement comme sur la configuration d'un client (choix du widget, titre, largeur, hauteur, options spécifiques…). Les widgets se réordonnent par glisser-déposer ; chacun peut être modifié, masqué si vide ou retiré.

Le nom et la description restent rappelés en haut de page et se corrigent via le bouton Modifier de ce rappel.

Un template ne porte que les widgets du tableau de bord d'accueil (/home), la seule page gérée par le Widget Manager.

Gérer les templates existants

L'onglet « Gestion templates » liste tous les templates dans un tableau à quatre colonnes — Nom (précédé de son icône), Description, Widgets (nombre) et Créé le — offrant les mêmes outils que le catalogue de widgets : recherche (sur le nom comme sur la description), tri sur chacune des trois colonnes, pagination et filtres enregistrables. Une description trop longue est tronquée, son texte complet s'affiche au survol.

Deux filtres sont disponibles :

  • Contenu — isoler les templates encore vides, ou au contraire ceux qui sont alimentés ;
  • Créé entre — restreindre à une plage de dates de création (bornes incluses).

Depuis chaque ligne, on peut :

  • Modifier son contenu — bouton principal, qui ouvre la page dédiée ;
  • Voir un aperçu de sa composition (menu ⋮) ;
  • Renommer le template directement dans la ligne (menu ⋮) ;
  • Supprimer le template (menu ⋮), après une demande de confirmation.

⚠️ La suppression est définitive. Le template et sa composition disparaissent réellement de la base — il n'y a pas de corbeille et rien à restaurer. En revanche, les clients sur lesquels le template a déjà été appliqué ne sont pas affectés : ils ont reçu une copie.

Le nom redevient immédiatement réutilisable pour un nouveau template.

Un client sans le module ne verra pas le widget

Certains widgets dépendent d'un module auquel le client doit être abonné : Projets, Tickets, Contrats, Interventions, Parc informatique. Si le module est absent, le widget est copié mais ne s'affiche pas sur le tableau de bord du client — sans carte vide ni message, les widgets suivants prennent simplement sa place.

Ce n'est pas une perte : la configuration reste enregistrée, et le widget apparaîtra tout seul le jour où le module sera activé. Rien à réappliquer.

Pour éviter la mauvaise surprise, la modale d'application prévient avant de valider : un avertissement liste les widgets concernés et le module qui manque. Il n'apparaît que s'il y a effectivement quelque chose à signaler.

À savoir : un widget peut aussi être masqué pour certains profils d'utilisateurs (le tableau de bord Projets, par exemple). Cela ne dépend pas du client mais de chaque utilisateur, l'avertissement ne peut donc pas l'anticiper.

Les droits de visibilité ne sont pas transférés

Les restrictions Super Limite (visibilité d'un widget réservée à certains groupes ou entités) ne sont pas recopiées lors de l'application. Elles désignent des groupes propres à chaque client : les transposer depuis un template n'aurait aucun sens et injecterait des identifiants étrangers. Si le client a besoin de restrictions, elles doivent être redéfinies après application.

Le sens est unique

Un template écrase un client, jamais l'inverse. Il n'existe aucun moyen de « remonter » la configuration d'un client dans un template : pour faire évoluer un template, on l'édite depuis sa page dédiée.

Un template n'est pas un lien vivant

Appliquer un template réalise une copie à l'instant T. Modifier le template ensuite n'a aucun effet sur les clients où il a déjà été appliqué — il faut le réappliquer. De même, supprimer un template n'affecte pas les clients qui en ont hérité.

L'ancien import reste disponible

Le bouton « Importer les widgets par défaut » n'a pas disparu : il continue de copier la configuration _id=99 historique, indépendamment des templates.


Voir aussi

  • Gestionnaire de widgets : docs/widget/widget-manager.md
  • Catalogue des widgets disponibles : docs/widget/widget-catalog.md
  • Documentation technique : .claude/technical-docs/widget/widget-templates.md