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 2018-07-25 18:14:30

pdubalen
Guest
From: Toulouse (France)
Registered: 2018-07-24
Posts: 4

Création d'un nouvel élément dans une liste d'intitulés (dropdown)

Bonjour,
Je tente pour ma société de réaliser un plugin qui introduit un type de lieu (location). Mon idée est de rajouter un nouveau dropdown permettant de créer ces types organisés hiérarchiquement pour construire une hiérarchie configurable comme par exemple : Pays -> Région -> Villes -> Site.

Je prévois ensuite d’associer un de ces types à chaque lieu et la hiérarchie des lieux devra respecter celle des types (pour un lieu donné, les lieux parents proposés devront être tous ceux du type parent du type du lieu).

Pour l’instant j’en suis simplement à la création des types. Je m’inspire de la gestion des places (roomlocation) dans le plugin racks.

Les écrans s’enchaînent correctement, mais le + permettant de créer un nouveau site n’est pas actif (Add is disabled, me dit-on) et je n’en comprends pas la raison.

Voici mon fichier : Fichier inc/type.class.php

<?php

if (!defined('GLPI_ROOT')) {
   die("Sorry. You can't access this file directly");
}

class PluginGeoentityType extends CommonTreeDropdown {
   public $dohistory          = true;
   public $can_be_translated  = true;
   static $rightname          = 'config';

   static function getTypeName($nb = 0) {
      return _n('Type', 'Location types', $nb, 'geoentity');
   }
}

Et voici la structure de la table des types :

CREATE TABLE `glpi_plugin_geoentity_types` (
   `id` int(11) NOT NULL AUTO_INCREMENT,
   `plugin_geoentity_types_id` int(11) DEFAULT NULL,
   `name` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
   `completename` text collate utf8_unicode_ci,
   `comment` text COLLATE utf8_unicode_ci,
   `level` int(11) NOT NULL default '0',
   PRIMARY KEY (`id`),
   UNIQUE KEY `unicity` (`plugin_geoentity_types_id`,`name`),
   KEY `name` (`name`),
   KEY `plugin_geoentity_types_id` (`plugin_geoentity_types_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

Merci pour votre aide et désolé pour ce message un peu long :-)

Offline

Board footer

Powered by FluxBB