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 2019-09-30 10:21:18

rincevent
Member
Registered: 2018-04-26
Posts: 42

[Formcreator] affichage du champ identifiant lié à un objet glpi

Bonjour,

Je crée des questions avec un type "objet GLpi" -> "Administration Utilisateur".

Ayant de nombreux utilisateurs, certains ont le même combo nom/prénom.
J'aimerais remonter automatiquement l'identifiant et l'afficher dans le ticket, pour facilement les différencier.

Est-ce possible, ou y aurait il une modification de code à apporter ?

Glpi 9.4.2
Formcreator 2.8.3

En vous remerciant,

Offline

#2 2019-09-30 11:59:59

btry
Moderator
Registered: 2015-10-01
Posts: 340

Re: [Formcreator] affichage du champ identifiant lié à un objet glpi

Bonjour

Une vérification montre que le problème peut arriver dans GLPI (test de création de 2 utilsiateurs avec le même nom et prénom, puis ajout de l'un d'eux comme technicien d'un ordinateur). Du coup, c'est peut être dans GLPI qu'il faut faire une amélioration, puis s'assurer que la modification affecte Formcreator.


No support with MP - Always run an upgrade task on a testing instance before running it on production! Always backup before any upgrade task!

Flyve MDM: https://github.com/flyve-mdm/glpi-plugin
Formcreator: https://github.com/pluginsGLPI/formcreator

Offline

#3 2019-10-01 16:16:33

rincevent
Member
Registered: 2018-04-26
Posts: 42

Re: [Formcreator] affichage du champ identifiant lié à un objet glpi

Merci pour votre réponse.
problème résolu.

Mon prestataire à trouvé cette astuce :
Dans le fichier "dropdownfield.class.php" qui se trouves dans "glpi/plugins/formcreator/inc/fields/",

dans la fonction "getValueForTargetText()", il faut commenter la partie suivante :

// if ($itemtype == User::class) {
// $value = (new DBUtils())->getUserName($this->value);
// } else {
$value = Dropdown::getDropdownName($DbUtil->getTableForItemType($itemtype), $this->value);
// }

Dans la description du ticket, ce n'est plus le nom de l'utilisateur qui apparaitre, mais son identifiant, qui est unique.
Plus de risque de se tromper.

Offline

#4 2019-10-02 10:27:33

rincevent
Member
Registered: 2018-04-26
Posts: 42

Re: [Formcreator] affichage du champ identifiant lié à un objet glpi

J'y ai apporté une petite modification pour afficher le nom utilisateur et l'identifiant :

if ($itemtype == User::class) {
//Nom de l'utilisateur
         $value1 = (new DBUtils())->getUserName($this->value);

//Identifiant
         $value2 = Dropdown::getDropdownName($DbUtil->getTableForItemType($itemtype), $this->value);

//concaténation pour affichage dans la description du ticket
         $value = $value1." <b>Identifiant</b> : ".$value2;

      } else {
      $value = Dropdown::getDropdownName($DbUtil->getTableForItemType($itemtype), $this->value);
      }

Je suis loin d'être une star en php, donc si vous voyez une méthode plus propre , n'hésitez pas.

Offline

Board footer

Powered by FluxBB