Développement module: Difference between revisions

Line 52: Line 52:
* htdocs/mymodule/themes/mythme if module provide its own skin
* htdocs/mymodule/themes/mythme if module provide its own skin


== Inclure des classes dans votre fichier ==
'''Quand''' : Si vous développez un module pour la version 2.9 et que vous le voulez opérationnel sur des versions plus anciennes égalements.
'''Pourquoi''' : A partir de la version 2.9, les classes sont déplacées dans un sous-répertoire "class".
'''Dans chaque fichier''' :
Définir à "NULL" la constante "DOL_CLASS_PATH" si elle n'est pas définie (versions antérieures à 2.9)
<source lang="php">
if (!defined('DOL_CLASS_PATH')) define('DOL_CLASS_PATH', null);
</source>
Inclure les fichiers voulus en utilisant la constante ("NULL" pour les versions antérieures à 2.9 et "class/" à partir de la version 2.9)
<source lang="php">
require_once(DOL_DOCUMENT_ROOT.'/societe/'.DOL_CLASS_PATH.'societe.class.php');
require_once(DOL_DOCUMENT_ROOT.'/contact/'.DOL_CLASS_PATH.'contact.class.php');
require_once(DOL_DOCUMENT_ROOT.'/product/'.DOL_CLASS_PATH.'product.class.php');
require_once(DOL_DOCUMENT_ROOT.'/commande/'.DOL_CLASS_PATH.'commande.class.php');
require_once(DOL_DOCUMENT_ROOT.'/compta/facture/'.DOL_CLASS_PATH.'facture.class.php');
require_once(DOL_DOCUMENT_ROOT.'/categories/'.DOL_CLASS_PATH.'categorie.class.php');
require_once(DOL_DOCUMENT_ROOT.'/expedition/'.DOL_CLASS_PATH.'expedition.class.php');
</source>
Notons que ceci est facultatif, et ne fonctionne que pour les classes qui ont été descendu dans un sous répertoire class/. Ceci ne fonctionnera pas avec les classes qui était dans la racine et qui ont été rangées correctement car ont alors été descendu de 2 sous répertoires. Dans ce cas, utiliser le chemin de la 2.9, le module ne pourra etre compatible avec les anciennes versions de Dolibarr.


= [[File:Art.png]] Créer vos tables SQL et la classe PHP des accesseurs (optionnel) =
= [[File:Art.png]] Créer vos tables SQL et la classe PHP des accesseurs (optionnel) =