Module Dolistore Règles de Validation

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search


Art.png Validation/activation d'un module externe sur Dolistore

Voici les règles qui prévalent lors de la soumission à validation d'un module sur https://www.dolistore.com. Ces règles s'appliquent à des soumissions de modules pour Dolibarr. Les fichiers d'autre nature (documentation, outils externes, autres) mis à disposition sur dolistore ne sont pas concernés.


Nommage du package

Tous les modules pour Dolibarr doivent être nommé module_mymodulename-VERSION.zip (où VERSION peut être x or x.y or x.y.z). Si le module est pour un autre logiciel, le nom du zip doit être moduleothersoftware_mymodulename-VERSION.zip (par exemple moduleprestashop_mymodulename-1.0.zip).

Les packages du type application android, document PDF sont libres d'utiliser le nom de leur choix.

Le reste du document ne s'applique que pour les modules Dolibarr uniquement.

Structure

Le premier répertoire dans le fichier zip module_mymodulename-VERSION.zip doit s'appeler mymodulename.

Tous les fichiers du module seront ensuite dans ce répertoire, comme fichier ou sous-répertoire, en suivant l'arborescence exemple proposée dans htdocs/modulebuilder/template.

Inclusion

  • Toutes les inclusions de fichier coeur doivent être réalisées par
include_once/require_once/include/require DOL_DOCUMENT_ROOT.'/pathtocorefile';
  • Toutes les inclusions de fichiers spécifiques au module par les pages du modules doivent être faites avec
include_once/require_once/include/require './monmoduledir/...';
  • Toutes les inclusions de fichiers spécifiques à un autre module externe doivent être faites par
dol_include_once('/extmoduledir/...');

Lien

Tous les liens générés pour le HTML vers les pages spécifiques (href, src,...) du module devraient utiliser getNomURL de la classe d'un object ou à minima utiliser dol_buildpath

Répertoire Custom

Un module externe de dolibarr doit pouvoir se mettre dans un répertoire htdocs/custom (cas standard), tout comme dans htdocs/ (cas alternatif), et il doit fonctionner dans les deux cas.

Pas d'écriture dans l'arborescence standard

Le module ne doit pas écrire dans l'arborescence des fichiers "programmes" de Dolibarr mais uniquement dans des fichiers situés dans le répertoire "documents". Y compris pour des fichiers temporaires. Il ne faut pas oublier que sur une installation correcte sécurisée de Dolibarr, l'ensemble de l'arborescence des programmes (à l'exception du répertoire custom) est positionné en lecture seule.

Modifications de fichier core Dolibarr

Compte tenu du point précédent, si des modifications de fichiers du coeur de Dolibarr sont nécessaires au module, elles doivent être soumises au projet via github. Elles seront acceptées :

  • Si elles sont poussées dans la branche dev du GitHub de Dolibarr (cas d'enrichissement de fonctionnalité Dolibarr)
  • Si il s'agit d'ajout de hook, trigger ou fonction, ou ajout de paramètres optionnels à des fonctions existantes. L'ajout de hook permet de permettre à un module externe d'intégrer son propre code n'import où dans le code de Dolibarr.

Information sur la fiche produit

Langue

La description du produit est obligatoire en Anglais.

Support

Si votre module est payant, il doit obligatoirement figurer dans la description du produit un mail ou un canal pour le support aux utilisateurs (comme un lien vers un site web de contact)