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 2014-01-28 14:58:12

antoniom
Member
From: Belo Horizonte, MG, Brasil
Registered: 2012-10-10
Posts: 9

Localisation automatique de mise à jour lorsque l'utilisateur de deman

Dans la version 0.84 de GLPI est possible d'attribuer un billet à un endroit, et même, vous pouvez créer une règle pour définir l'emplacement du billet automatiquement à partir de l'emplacement du demandeur.

Mais, voir ma situation:
J'ai un modèle de billet qui est obligatoire pour définir l'emplacement. Si je crée une règle pour réglage automatique de l'emplacement, il est traité uniquement au moment où le billet est envoyé, mais si je ne choisis pas les paramètres régionaux n'est pas possible de créer le billet. Ainsi, le billet ne peut être créé si l'emplacement est choisi manuellement.

Pour contourner ce problème, j'ai créé un patch pour le fichier inc / ticket.class.php qui modifie une partie de la méthode ShowForm () pour que l'emplacement est automatiquement activé lorsque le demandeur est sélectionné.

Je souhaite que les coordinateurs de projet pensent de la possibilité d'inclure cette petite fonctionnalité dans de nouvelles versions.

Vous trouverez ci-patch généré:

--- inc/ticket.class.php        2014-01-22 10:43:57.000000000 -0200
+++ inc/ticket.class.php        2014-01-27 10:20:14.976716062 -0200
@@ -3409,6 +3409,12 @@
          echo "<tr class='tab_bg_1'><td>";
          printf(__('%1$s%2$s'), __('Location'), $tt->getMandatoryMark('locations_id'));
          echo "</td><td>";
+         if (!$values['locations_id'] && $values["_users_id_requester"] > 0){
+               $requester = new User();
+               $requester->getFromDB($values["_users_id_requester"]);
+               $values['locations_id'] = $requester->fields['locations_id'];
+               unset($requester);
+         }
          Location::dropdown(array('value'  => $values["locations_id"]));
          echo "</td></tr>";
       }
@@ -4344,6 +4350,12 @@
       echo "<td>";
       echo $tt->getBeginHiddenFieldValue('locations_id');
       if ($canupdate) {
+       if (!$ID && $values["_users_id_requester"] > 0){
+               $requester = new User();
+               $requester->getFromDB($values["_users_id_requester"]);
+               $this->fields['locations_id'] = $requester->fields['locations_id'];
+               unset($requester);
+       }
          Location::dropdown(array('value'  => $this->fields['locations_id'],
                                   'entity' => $this->fields['entities_id']));
       } else {

Remarque: le patch a été généré à la version 0.84.4 .

Cordialement ,

Antonio Franco

Offline

#2 2014-01-31 10:04:58

yllen
GLPI-DEV
From: Sillery (51)
Registered: 2008-01-14
Posts: 15,278

Re: Localisation automatique de mise à jour lorsque l'utilisateur de deman

Le problème est que le lieu sur un ticket ne correspond pas obligatoirement ni au lieu du demandeur, ni au lieu de l'objet lié.
Par exemple, une personne avec un portable qui est momentanément affecté à un autre lieu que son lieu principal (il est en agence au lieu d'être au siège).


CentOS 6.5 - CentOS 7.x
PHP 5.6 - PHP 7.x - MySQL 5.6  - MariaDB 10.2 + APC + oOPcache
GLPI from 0.72 to dev version
Certifiée ITIL (ITV2F, ITILF, ITILOSA)

Offline

Board footer

Powered by FluxBB