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 2023-01-03 18:28:37

Paul Durieux
Member
Registered: 2023-01-03
Posts: 4

Création d'un champ dans la rubrique "Ticket"

Bonjour,

Je souhaiterai ajouter un champ "Carto-SI" dans la rubrique Ticket.

J'ai essayé de m'inspirer du plugin "TimelineTicket" mais le champ ne s'affiche pas.

Voici ma configuration :

setup.php (j'ai juste mis la fonction init) :

function plugin_init_cartosi() {
   global $PLUGIN_HOOKS,$CFG_GLPI;

   // CSRF compliance : All actions must be done via POST and forms closed by Html::closeForm();
   $PLUGIN_HOOKS[Hooks::CSRF_COMPLIANT]['cartosi'] = true;

   $PLUGIN_HOOKS['menu_toadd']['cartosi'] = ['plugins' => Cartosi::class,
                                             'tools'   => Cartosi::class];

   if (Plugin::isPluginActive('cartosi')) {

      Plugin::registerClass('PluginCartositicketDisplay',['addtabon' => ['Ticket']]);
      // Config page
      $PLUGIN_HOOKS['config_page']['cartosi'] = 'front/config.php';
   }
}

display.class.php situé dans le /inc

class PluginCartositicketDisplay extends CommonDBTM {

   static function showForTicket(Ticket $ticket) {
      global $CFG_GLPI, $DB;
      echo "Test";
   }

   function getTabNameForItem(CommonGLPI $item, $withtemplate = 0) {

      if ($item->getType() == 'Ticket') {
         return __('CartoSI');
      }
      return '';
   }
   static function displayTabContentForItem(CommonGLPI $item, $tabnum = 1, $withtemplate = 0) {

      if ($item->getType() == 'Ticket') {
         self::showForTicket($item);
      }
      return true;
   }
}

Une idée de ce que j'ai mal fais ?

Version de GLPI utilisée : 10.0.5

Merci d'avance.

Last edited by Paul Durieux (2023-01-03 18:42:36)

Offline

#2 2023-01-03 18:58:40

Paul Durieux
Member
Registered: 2023-01-03
Posts: 4

Re: Création d'un champ dans la rubrique "Ticket"

Problème résolu.
En renommant ma classe PluginCartosiDisplay en PluginCartosiTicket et en changeant le nom du fichier display.class.php en ticket.class.php, mon champ s'affiche.

Vous pouvez fermé la page.
Merci.

Last edited by Paul Durieux (2023-01-03 19:02:33)

Offline

#3 2023-01-04 10:21:48

Sico31
Member
Registered: 2018-09-24
Posts: 596

Re: Création d'un champ dans la rubrique "Ticket"

et pourquoi ne pas passer par le plugin Fields ?


Manger un castor, c'est sauver un arbre.
Quand on est mort, on ne sait pas qu'on est mort ; c'est pour les autres que c'est difficile. Quand on est con, c'est pareil !

Offline

#4 2023-01-04 10:42:12

Paul Durieux
Member
Registered: 2023-01-03
Posts: 4

Re: Création d'un champ dans la rubrique "Ticket"

Sico31 wrote:

et pourquoi ne pas passer par le plugin Fields ?

Je préfère passer par mon plugin pour pouvoir customiser le champ (avec du code html) comme je l'entends.

Offline

#5 2023-05-04 11:17:46

Slain
Member
Registered: 2023-03-06
Posts: 37

Re: Création d'un champ dans la rubrique "Ticket"

Bonjour Paul,
Avez-vous mis en prod votre plugin customisé?

Si oui, avez-vous créé des balises de notifications personnalisées (par exemple ##ticket.Carto-SI##) pour les réponses?

Si oui, accepteriez-vous de me partager une partie du code (car j'essaie de forker le plugin Fields pour créer des balises de notifications pour 2 champs "numéro de devis" et "statut du devis", mais je tourne sans réussir à créer ces balises)?

Merci smile

Offline

Board footer

Powered by FluxBB