You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2013-05-30 11:56:14

hypnowitch
Member
Registered: 2013-05-15
Posts: 8

Modif perso : affichage des catégories de tickets

Bonjour à tous,

Je suis actuellement en stage dans une entreprise qui désire utiliser GLPI pour la gestion de son parc et spécialement pour le système de ticket pour le helpdesk.
GLPI répond bien aux besoins de l'entreprise, mais l'interface simplifiée pour la création de tickets nous pose problème.
La structure de l'entreprise et les choix de gestion font que nous nous retrouvons avec un grand nombre de catégories : l'utilisateur lambda pourrait ne pas s'y retrouver dans tous les catégories proposées dans la liste déroulante.

Il m'a donc été demandé de modifier l'interface afin de rendre cette liste dynamique, et afficher une sorte d'arborescence pour faciliter le choix.

Après une rapide formation en PHP, je suis parvenu à obtenir quelque chose de correct en bricolant quelques fichiers source.

modifcategtickets.png

Les modifs ont d'abord été faites pour la version 0.83.8 puis testée sur la version 0.83.6.
N'hésitez pas à m'envoyer un message pour avoir les codes et tester!

Pour l'instant c'est encore au stade de bricolage, alors vos conseils pour rendre la solution moins artisanale, plus propre et viable à long terme (changement de version de GLPI entre autres) sont les bienvenus. smile

PS : je n'ai pas réussi à mettre un aperçu qui redirige vers l'image en taille réelle à cause de :
"Too more links in message. Allowed 1 links. Reduce number of links and post it again."
Est-ce dû aux droits liés au profil?

Last edited by hypnowitch (2013-05-30 15:08:52)

Offline

#2 2013-05-31 04:15:46

ronan.paul
Member
Registered: 2013-05-31
Posts: 8

Re: Modif perso : affichage des catégories de tickets

Bonjour,

Cette modification paraît très intéressante : c'est ce que je cherche afin d'avoir une liste de catégorie avec un détail très fin, mais avec une interface qui permette à l'utilisateur de ne pas parcourir la liste totale mais d'y accéder en déroulant les niveaux.
=> Pouvez-vous partager le code source ?

Merci par avance,

Ronan

Offline

#3 2013-05-31 09:41:25

hypnowitch
Member
Registered: 2013-05-15
Posts: 8

Re: Modif perso : affichage des catégories de tickets

Voici les fichiers (version 3b) remaniés après les remarques de ronan.paul.

J'y ai rajouté un petit fichier txt expliquant rapidement les modifications apportées.

Last edited by hypnowitch (2013-06-08 15:01:34)

Offline

#4 2013-06-01 11:23:20

ronan.paul
Member
Registered: 2013-05-31
Posts: 8

Re: Modif perso : affichage des catégories de tickets

Bonjour,

Merci pour le partage !

J'ai téléchargé et installé le code : ça fonctionne, bravo !

Quelques remarques constructives :

  • un texte (codé en dur) s'affiche en haut de la saisie du ticket (il mentionne FABS, STEPS, SISTER, bref des éléments liés à votre contexte)

  • le fonctionnement standard de GLPI permet de désactiver certaines catégories de ticket dans l'interface simple ; toutefois le  comportement standard est le suivant : ces catégories sont affichées mais on ne peut pas les sélectionner et SURTOUT les catégories filles sont également affichées. Ce comportement permet "d'empêcher" les utilisateur de choisir des catégories qui sont des tires pour les  "obliger" à choisir une catégorie précise. Votre code ne reprend pas ce comportement : les catégories désactivées ne sont pas affichées, même si elles ont des catégories filles.
    => pouvez-vous améliorer cela ?

  • GLPI permet d'associer des FAQ à une catégorie. Dans ce cas, lorsqu'un catégorie de ticket a une FAQ associée, une icone apparaît à droite de la liste (à côté de l'icone permettant d'afficher le commenaire associé à l'élément sélectionné). Votre code ne reprend pas ce fonctionnement.
    => pouvez-vous améliorer cela ?

  • Dès qu'on sélectionne une catégorie, au rechargement de la page, son TITLE change et devient "showcost" ; je n'ai pas vérifié mais il me semble que c'est un effet de bord lié à ce code car je ne l'ai jamais observé auparavant

  • Dès qu'on sélectionne une catégorie, une ligne s'affiche avec un intitulé "--cliquez ici pour réduire l'arborescence" qui n'est pas super clair (on pourrait penser qu'on remonte d'un niveau alors qu'en fait on revient tout en haut de l'arborescence). Peut-être que "--retour à la liste" serait plus clair ?

  • Dès qu'on fait un choix, celui ci est affiché en haut de liste mais disparait de l'arborescence ; ce n'est pas un problème, mais à quoi cela sert-il ? Ne serait-il pas plus clair de laisser également l'item dans l'arborescente, avec le même afficahge qu'en haut de liste ?

Bref, quelques petits détails mais je trouve cette approche très pertinente pour faciliter la vie de l'utilisateur : merci !

Last edited by ronan.paul (2013-06-01 15:51:17)

Offline

#5 2013-06-01 23:08:40

hypnowitch
Member
Registered: 2013-05-15
Posts: 8

Re: Modif perso : affichage des catégories de tickets

Salut,

Merci pour les retours, n'étant pas un réel utilisateur, et ayant la tête dans le code je passe à côté de pas mal de choses.

Pour les points que tu soulèves :

ronan.paul wrote:

un texte (codé en dur) s'affiche en haut de la saisie du ticket (il mentionne FABS, STEPS, SISTER, bref des éléments liés à votre contexte)

=> ça m'a complètement échappé ^^°, pour le modifier : "ticket.class.php" -> ligne 3160

ronan.paul wrote:

le fonctionnement standard de GLPI permet de désactiver certaines catégories de ticket dans l'interface simple ; toutefois le  comportement standard est le suivant : ces catégories sont affichées mais on ne peut pas les sélectionner et SURTOUT les catégories filles sont également affichées. Ce comportement permet "d'empêcher" les utilisateur de choisir des catégories qui sont des tires pour les  "obliger" à choisir une catégorie précise. Votre code ne reprend pas ce comportement : les catégories désactivées ne sont pas affichées, même si elles ont des catégories filles.
=> pouvez-vous améliorer cela ?

=> Je travaille actuellement en local avec des catégories bidons, mais je devrais passer sur un vrai server test avec de vrais configs d'ici peu. J'approfondirai la question.

ronan.paul wrote:

GLPI permet d'associer des FAQ à une catégorie. Dans ce cas, lorsqu'un catégorie de ticket a une FAQ associée, une icone apparaît à droite de la liste (à côté de l'icone permettant d'afficher le commenaire associé à l'élément sélectionné). Votre code ne reprend pas ce fonctionnement.
=> pouvez-vous améliorer cela ?

=> Je ne connais pas cette fonctionnalité, pourrais tu me montrer ce qu'on est censé avoir avec la version originale?

ronan.paul wrote:

Dès qu'on sélectionne une catégorie, au rechargement de la page, son TITLE change et devient "showcost" ; je n'ai pas vérifié mais il me semble que c'est un effet de bord lié à ce code car je ne l'ai jamais observé auparavant

=> En effet, j'ai réussi à remettre le TITLE par défaut en refaisant les modifs à partir des fichiers originaux, mais je suis incapable de dire pourquoi le problème s'est posé à l'origine...

ronan.paul wrote:

Dès qu'on sélectionne une catégorie, une ligne s'affiche avec un intitulé "--cliquez ici pour réduire l'arborescence" qui n'est pas super clair (on pourrait penser qu'on remonte d'un niveau alors qu'en fait on revient tout en haut de l'arborescence). Peut-être que "--retour à la liste" serait plus clair ?

=> Plus c'est simple, mieux c'est. Je vais modifier ça.

ronan.paul wrote:

Dès qu'on fait un choix, celui ci est affiché en haut de liste mais disparait de l'arborescence ; ce n'est pas un problème, mais à quoi cela sert-il ? Ne serait-il pas plus clair de laisser également l'item dans l'arborescente, avec le même afficahge qu'en haut de liste ?

=> Les catégories sont affichées dans une «liste déroulante » HTML qui, dans la version
originale n’affichait qu’une seule ligne lorsqu’elle est « enroulée », il faut donc afficher la catégorie sélectionnée dans cette première ligne.
Plutôt que d’afficher une seule ligne en mode « enroulée » et le reste de la liste en « déroulée », j’ai fait en sorte que la liste soit ,en quelque sorte, toujours « déroulée ».
Je suis de ton avis et avais fait part de ce comportement un peu déroutant à mes responsables, ils estiment que ce n’est pas une problème prioritaire. N'ayant pas réussi à trouver de solution évidente (certaines parties du code qui remplit la liste déroulante échappent encore à ma compréhension), je pense ne pas m’y attarder dans l’immédiat.

Je posterai les fichiers corrigés.

Offline

#6 2013-06-03 19:26:51

ronan.paul
Member
Registered: 2013-05-31
Posts: 8

Re: Modif perso : affichage des catégories de tickets

Bonjour,

Merci pour la prise en compte des remarques : cette mise à jour corrige certains des points signalés.

Je récapitule ci-dessous leur statut :

un texte (codé en dur) s'affiche en haut de la saisie du ticket (il mentionne FABS, STEPS, SISTER, bref des éléments liés à votre contexte)

Corrigé

le fonctionnement standard de GLPI permet de désactiver certaines catégories de ticket dans l'interface simple ; toutefois le  comportement standard est le suivant : ces catégories sont affichées mais on ne peut pas les sélectionner et SURTOUT les catégories filles sont également affichées. Ce comportement permet "d'empêcher" les utilisateur de choisir des catégories qui sont des tires pour les  "obliger" à choisir une catégorie précise. Votre code ne reprend pas ce comportement : les catégories désactivées ne sont pas affichées, même si elles ont des catégories filles.

Ce point me paraît le plus important : l'intérêt de cet affichage par arborescence est justement de pouvoir avoir un détail très fin des catégories (avantages : précision du ticket + affectation automatique au bon interlocuteur défini dans la catégorie du ticket) sans pour autant fournir une liste indigeste.
Toutefois, pour que cela fonctionne, il ne faut pas autoriser le demandeur à positionner son ticket dans une catégorie de type "titre" mais au plus fin de l'arborescence, niveau "feuille".
L'enjeu est donc d'afficher les catégories masquées si elles ont des filles, d'autoriser à dérouler leur contenu mais de ne pas permettre la création du ticket avec ce choix.

GLPI permet d'associer des FAQ à une catégorie. Dans ce cas, lorsqu'un catégorie de ticket a une FAQ associée, une icone apparaît à droite de la liste (à côté de l'icone permettant d'afficher le commenaire associé à l'élément sélectionné). Votre code ne reprend pas ce fonctionnement.

Ce point n'est pas critique, mais c'est dommage de le casser.
Pour voir cela fonctionner, il faut créer qq contenus dans la FAQ puis dans la fiche d'une catégorie de ticket, lui affecter un élément de la FAQ.
Dans l'interface simple, lorsqu'un sélectionne une catégorie à laquelle une FAQ est associée, on a une petite icone qui s'ffiche à droite de la liste des catégories et qui permet d'afficher la FAQ correspondante.

Dès qu'on sélectionne une catégorie, au rechargement de la page, son TITLE change et devient "showcost" ; je n'ai pas vérifié mais il me semble que c'est un effet de bord lié à ce code car je ne l'ai jamais observé auparavant

Corrigé

Dès qu'on sélectionne une catégorie, une ligne s'affiche avec un intitulé "--cliquez ici pour réduire l'arborescence" qui n'est pas super clair (on pourrait penser qu'on remonte d'un niveau alors qu'en fait on revient tout en haut de l'arborescence). Peut-être que "--retour à la liste" serait plus clair ?

Corrigé

Dès qu'on fait un choix, celui ci est affiché en haut de liste mais disparait de l'arborescence ; ce n'est pas un problème, mais à quoi cela sert-il ? Ne serait-il pas plus clair de laisser également l'item dans l'arborescente, avec le même afficahge qu'en haut de liste ?

A améliorer si possible, car c'est assez perturbant. En toute logique il s'agit plutôt de désactiver la partie du code qui empêche l'affichage de cette ligne que d'inventer un nouveau comportement.

Merci et bon courage pour votre avancement !

Offline

#7 2013-06-06 11:51:22

hypnowitch
Member
Registered: 2013-05-15
Posts: 8

Re: Modif perso : affichage des catégories de tickets

Bonjour,

Suite à la mise en place de notre server test avec des configurations proches de celles de notre future production, nous avons pu constater les défauts relevés précédemment.

ronan.paul wrote:

Dès qu'on fait un choix, celui ci est affiché en haut de liste mais disparait de l'arborescence ; ce n'est pas un problème, mais à quoi cela sert-il ? Ne serait-il pas plus clair de laisser également l'item dans l'arborescente, avec le même afficahge qu'en haut de liste ?

=> Corrigé

ronan.paul wrote:

le fonctionnement standard de GLPI permet de désactiver certaines catégories de ticket dans l'interface simple ; toutefois le  comportement standard est le suivant : ces catégories sont affichées mais on ne peut pas les sélectionner et SURTOUT les catégories filles sont également affichées. Ce comportement permet "d'empêcher" les utilisateur de choisir des catégories qui sont des tires pour les  "obliger" à choisir une catégorie précise. Votre code ne reprend pas ce comportement : les catégories désactivées ne sont pas affichées, même si elles ont des catégories filles.

=> Corrigé

Les nouveaux fichiers (erreur code rectifiée).

Nous allons tester de notre côté, n'hésitez pas à faire remonter des bugs ou bizarreries de fonctionnement.

Last edited by hypnowitch (2013-06-06 14:29:57)

Offline

#8 2013-06-06 13:36:44

ronan.paul
Member
Registered: 2013-05-31
Posts: 8

Re: Modif perso : affichage des catégories de tickets

Bonjour,

Merci pour cette nouvelle évolution.

J'ai du (essayer de) corriger une erreur de syntaxe dans le code :

PHP Parse error:  syntax error, unexpected '[' in /Users/ronanpaul/Dropbox/sandbox/glpi/ajax/dropdownValue_custom.php on line 159

A savoir remplacer :

 $where_no_visible.= " AND ".explode('=',$conditions[0])[0]."='0'";

par

foreach ($condi as $key => $value) 
 $condi[$key]=explode('=',$value);
        $where_no_visible.= " AND ".$condi[0][0]."='0'";

=> ça fonctionne.

Toutefois, la solution n'est pas satisfaisante : les catégories inactives apparaissent bien si elles ont des catégories filles, mais elles apparaissent directement dépliées... ce qui est contraire à l'objectif initial : déplier les catégories par branche.

Par contre, l'affichage de la catégorie sélectionnée est simple, mais efficace.

Offline

#9 2013-06-06 14:27:58

hypnowitch
Member
Registered: 2013-05-15
Posts: 8

Re: Modif perso : affichage des catégories de tickets

J'avais rectifié cette erreur de code, mais visiblement je me suis emmêlé dans les différentes versions de fichiers.
(Mon code ne pique pas trop les yeux j'espère)

Sinon pour les catégories filles...
Il faudrait donc rendre les branches cliquables dans un premier temps, puis au rechargement suivant rendre la branche non-cliquable et forcer la sélection sur une des feuilles?

Last edited by hypnowitch (2013-06-06 14:55:19)

Offline

#10 2013-06-06 16:20:08

ronan.paul
Member
Registered: 2013-05-31
Posts: 8

Re: Modif perso : affichage des catégories de tickets

hypnowitch wrote:

J'avais rectifié cette erreur de code, mais visiblement je me suis emmêlé dans les différentes versions de fichiers.
(Mon code ne pique pas trop les yeux j'espère)

J'ai juste essayé de corriger l'erreur pour faire un test, je ne me sens donc pas légitime pour avoir un avis sur le code : j'essaie de contribuer par un regard fonctionnel ;-) !

hypnowitch wrote:

Sinon pour les catégories filles...
Il faudrait donc rendre les branches cliquables dans un premier temps, puis au rechargement suivant rendre la branche non-cliquable et forcer la sélection sur une des feuilles?

Je pense que cette approche ne va pas coller :

  • la sélection d'une feuille, même en automatique, devrait lancer les actions d'une catégorie (rechargement de la page, sélection d'un gabarit spécifique, chargement des valeurs masquées / prédéfinies, ainsi que le chargement des FAQ associées... quand vous aurez réparé ce fonctionnement ;-))

  • la fille d'une catégorie peut être une catégorie et non une feuille... ce qui génèrerait une action récursive qui n'est pas souhaitable

Je propose de pouvoir cliquer sur ces catégories inactives (pour générer le rechargement et afficher les filles), mais d'afficher ces éléments différemment dans la liste et d'interdire la validation du ticket avec ce choix.

Offline

#11 2013-06-08 14:59:30

hypnowitch
Member
Registered: 2013-05-15
Posts: 8

Re: Modif perso : affichage des catégories de tickets

Voici la dernière version qui devrait gérer correctement les branches et les feuilles.

J'avais un doute sur la catégorie associée au ticket après la création de celui-ci, et après testé sur mon GLPI local, cela semble fonctionner correctement. Cependant sur notre server test les résultats sont différents, sans doute à cause de notre workflow.
Si vous pouviez vérifier de votre côté et confirmer que le ticket est crée avec la bonne catégorie...

Aussi j'ai dû rajouter un certain nombre de requêtes à la base de donnée, et il se peut que le temps de rechargement soit un peu long. J'aimerais avoir votre avis là-dessus.

Last edited by hypnowitch (2013-06-08 15:02:37)

Offline

#12 2013-06-11 07:45:37

ronan.paul
Member
Registered: 2013-05-31
Posts: 8

Re: Modif perso : affichage des catégories de tickets

Bonjour,

J'ai installé la dernière version qui est fonctionnelle. Les catégories et sous-catégories s'affichent bien, en tenant compte de l'affichage de celles qui sont désactivées si elles ont des filles.
Par contre, je n'ai pas trouvé de mécanisme qui empêchait de sélectionner les catégories désactivées pour valider un ticket.
=> Comment est-ce sensé fonctionner ?

Je n'ai pas constaté de lenteur particulière.

Offline

#13 2013-06-11 10:03:09

hypnowitch
Member
Registered: 2013-05-15
Posts: 8

Re: Modif perso : affichage des catégories de tickets

Si on sélectionne une catégorie désactivée, cela affiche ses filles mais aucune catégorie n'est sélectionnée.
Donc si l'utilisateur ne sélectionne rien d'autre, le ticket devrait être crée sans catégorie associée.

Dans notre cas, nous avons rendu la sélection de catégorie obligatoire en utilisant les gabarits de tickets :

Assistance > Tickets > Gérer gabarits... (une icône avec le signe + et un triangle rouge en fond)

Ensuite il faut sélectionner le gabarit "Default" (ou en créer un). Puis en cliquant sur l'onglet "Champs obligatoires" sélectionner "Catégorie" dans la liste déroulante et cliquer sur le bouton "ajouter".

champsobligatoireticket.png

Après cela, si l'utilisateur essaye de valider après avoir cliqué sur une catégorie désactivée, il devrait recevoir un message d'erreur qui lui demande de sélectionner une catégorie.

Last edited by hypnowitch (2013-06-11 10:08:45)

Offline

#14 2013-06-11 13:38:49

ronan.paul
Member
Registered: 2013-05-31
Posts: 8

Re: Modif perso : affichage des catégories de tickets

hypnowitch wrote:

Dans notre cas, nous avons rendu la sélection de catégorie obligatoire en utilisant les gabarits de tickets :
Assistance > Tickets > Gérer gabarits... (une icône avec le signe + et un triangle rouge en fond)
Ensuite il faut sélectionner le gabarit "Default" (ou en créer un). Puis en cliquant sur l'onglet "Champs obligatoires" sélectionner "Catégorie" dans la liste déroulante et cliquer sur le bouton "ajouter".
Après cela, si l'utilisateur essaye de valider après avoir cliqué sur une catégorie désactivée, il devrait recevoir un message d'erreur qui lui demande de sélectionner une catégorie.

Exact, cela fonctionne comme décrit, merci des précisions.

Je note qu'il est difficile pour l'utilisateur de savoir qu'une catégorie permet d'être choisie ou non. Peut-on rendre cela plus visuel ? (code couleur par exemple ?)

Offline

#15 2013-06-11 14:31:17

hypnowitch
Member
Registered: 2013-05-15
Posts: 8

Re: Modif perso : affichage des catégories de tickets

Pour ce qui est du "style" des catégories, nous n'avons malheureusement pas beaucoup de choix car la liste est un objet html qui ne prend en compte que les modifications de couleur de la police.

Que suggérez-vous comme couleur(s)?

Last edited by hypnowitch (2013-06-11 14:31:39)

Offline

#16 2013-06-13 21:14:40

ronan.paul
Member
Registered: 2013-05-31
Posts: 8

Re: Modif perso : affichage des catégories de tickets

Bonjour,

Il me semble que la liste par défaut (avant votre modification) affiche ces catégories avec un fond gris (on ne peut pas les sélectionner, ce qui colle avec la logique de l'affichage "liste"). Pourquoi ne pas reprendre cette forme ?

Offline

#17 2013-12-05 11:37:39

Yoan84
Member
Registered: 2013-08-28
Posts: 63

Re: Modif perso : affichage des catégories de tickets

Bonjour,

Je ne sais pas si vous travaillez encore dessus ce petit plugin qui était fort intéressant.
Actuellement, il ne fonctionne plus du tout car il fait buggué tout glpi. Est-il possible de faire une MAJ ?

Offline

#18 2013-12-30 17:52:09

Yoan84
Member
Registered: 2013-08-28
Posts: 63

Re: Modif perso : affichage des catégories de tickets

Personne ?

Offline

#19 2018-08-28 15:42:07

glpi-beauzelle
Member
Registered: 2018-08-28
Posts: 19

Re: Modif perso : affichage des catégories de tickets

Bonjour,

Nous sommes fin Aout 2018, et je reprends cette conversation datant de 5 ans ...         smile

Quelqu'un peut-il me dire aujourd'hui si ce plugin (affichage hiérarchique des catégories) existe toujours et où il se trouve dans le "Plugins catalog".

Merci de vos réponses.       smile


Débutant, GLPI 9.1.2

Offline

#20 2018-09-27 16:55:56

rverchere
Member
Registered: 2012-08-29
Posts: 10

Re: Modif perso : affichage des catégories de tickets

Bonjour,

je suis également intéressé pour une maj du code pour fonctionner avec la dernière version de GLPI.

Merci wink

Offline

#21 2018-09-28 12:40:44

richard.blade
Member
Registered: 2017-03-03
Posts: 67

Re: Modif perso : affichage des catégories de tickets

Je penses que hypnowitch a finit son stage depuis ... ;-)


Glpi 9.4.2
MYSQL V14.14 distrib 5.7.25
Apache 2.4.7
Ubuntu 14.04.6 LTS

Offline

#22 2018-10-17 15:50:15

desparzagophone
Member
Registered: 2018-10-11
Posts: 8

Re: Modif perso : affichage des catégories de tickets

Buenos dias,

También estoy interesado en un código para trabajar con la última versión de GLPI.

Gracias guiño

Offline

#23 2018-10-17 15:51:22

desparzagophone
Member
Registered: 2018-10-11
Posts: 8

Re: Modif perso : affichage des catégories de tickets

please can you share the code for the latest version, since I tried to update it and it does not work

Offline

Board footer

Powered by FluxBB