Difference between revisions of "Système des Widgets"

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search
Line 31: Line 31:
 
Il faut ensuite référencer cette boite en base de donnée
 
Il faut ensuite référencer cette boite en base de donnée
  
INSERT INTO `llx_boxes_def` (`rowid`, `file`, `entity`, `tms`, `note`, `fk_user`) VALUES (NULL, 'box_lenomdufichier.php', '1', 'date', NULL, '0');
+
INSERT INTO `llx_boxes_def` (`rowid`, `file`, `entity`, `tms`, `note`, `fk_user`) VALUES (NULL, 'box_maboiteperso.php', '1', 'date', NULL, '0');
  
 
Toutefois, si vous comptez distribuer votre boîte à d'autres utilisateurs, vous devriez plutôt créer un module et stocker le ou les fichiers descripteurs dans votre module.
 
Toutefois, si vous comptez distribuer votre boîte à d'autres utilisateurs, vous devriez plutôt créer un module et stocker le ou les fichiers descripteurs dans votre module.

Revision as of 15:13, 2 May 2025

Les widgets sont des boîtes d'informations rectangulaires que l'on peut placer sur certaines pages (comme la page d'accueil). Elles sont décrites par des fichiers placés dans un répertoire particulier.

Le contenu de ces boîtes est à la liberté du développeur (graphique, tableau, texte, …).



Art.png Créer une nouvelle boite

Chaque boîte est stockée dans le répertoire htdocs/core/boxes Il y a un fichier par boîte.

Chaque fichier est une classe qui hérite de la classe ModeleBoxes.

Pour créer une nouvelle boîte, copiez un fichier existant et le renommer, par exemple en box_maboiteperso.php. Modifiez son contenu pour refléter le nouveau nom et y définir les informations à afficher dans la boîte.

Il faut ensuite référencer cette boite en base de donnée

INSERT INTO `llx_boxes_def` (`rowid`, `file`, `entity`, `tms`, `note`, `fk_user`) VALUES (NULL, 'box_maboiteperso.php', '1', 'date', NULL, '0');

Toutefois, si vous comptez distribuer votre boîte à d'autres utilisateurs, vous devriez plutôt créer un module et stocker le ou les fichiers descripteurs dans votre module.

  • Aller à la page Développement module pour savoir comment créer un module.
  • Ensuite, copier le fichier de votre boîte dans le répertoire htdocs/monmodule/core/boxes/
  • Une fois le descripteur de votre module créé, éditez-le pour ajouter les lignes suivantes afin de déclarer votre fichier de boîte
$this->boxes = array(
    0 => array(
        'file' => 'box_maboiteperso@monmodule',
        'note' => 'My notes',
        'enabledbydefaulton' => 'Home'
    )
    // Vous pouvez déclarer autant de boîtes que vous le souhaitez en incrémentant simplement l'indice
);

Art.png Activer une boîte

Pour activer et faire apparaître une boîte nouvellement créée, aller dans le menu Accueil - Configuration - Widgets et cliquer sur la boîte à activer. Elle apparaîtra alors sur la page pour laquelle elle a été activée.