La visibilité des services est utilisée pour déterminer :
- les services qui sont présentés à l'utilisateur lors de la création d'un ticket
- les tickets qui seront visibles sur le tableau de bord et à travers l'interface de recherche
- les FAQs qui seront visibles dans la rubrique FAQ et à travers l'interface de recherche
Par défaut, la propriété suivante définie dans le fichier /properties/config.properties fait que tous les utilisateurs voient tous les services activés :
#departmentSelection.bean=defaultDepartmentSelector
La visibilité des services est alors gérée par le bean defaultDepartmentSelector (défini dans /properties/departmentSelection.xml) de la classe org.esupportail.helpdesk.domain.departmentSelection.DefaultDepartmentSelectorImpl, qui présente par défaut tous les services à tous les utilisateurs. Il est possible de restreindre les services vus par les utilisateurs en utilisant des classes de personnalisation.
La visibilité des service peut être gérée par n'importe quel bean implémentant l'interface org.esupportail.helpdesk.domain.departmentSelection.DepartmentSelector. Nous montrons ici comment utiliser une autre classe livrée dans la distribution, puis comment écrire sa propre personnalisation.
Avec la classe XmlDepartmentSelectorImpl
Pour utiliser la classe org.esupportail.helpdesk.domain.departmentSelection.XmlDepartmentSelectorImpl (livrée par défaut), il faut positionner la propriété suivante de /properties/config.properties :
departmentSelection.bean=xmlDepartmentSelector
La visibilité des services est alors réduite grâce à l'utilisation de règles de visibilité au format XML définies dans le fichier de configuration localisé par la propriété :
#xmlDepartmentSelection.configPath=properties/domain/xmlDepartmentSelection.xml
Voir : Syntaxe des règles XML de restriction de la visibilité des services
Avec une autre classe personnalisée
Pour utiliser une autre méthode de restriction de la visibilité des services, il faut :
- développer une classe implémentant l'interface org.esupportail.helpdesk.domain.departmentSelection.DepartmentSelector
- déclarer un nouveau bean departmentSelector de cette classe dans le fichier /properties/domain/departmentSelection.xml
- permettre la récupération de la nouvelle classe et du fichier /properties/domain/departmentSelection.xml lors de la prochaine mise à jour (cf Conservation des personnalisations lors des mises à jour).