Difference between revisions of "Module Dolistore Validation Rules"

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search
Line 6: Line 6:
  
 
=== Inclusion ===  
 
=== Inclusion ===  
*To include a core file, use include_once/require_once/include/require DOL_DOCUMENT_ROOT.'/pathtofile';
+
* To include a core file, use include_once/require_once/include/require DOL_DOCUMENT_ROOT.'/pathtofile';
*To include to a module file from a module file, use include_once/require_once/include/require './mymodulefile';
+
* To include a file of module into a file of same module, use include_once/require_once/include/require './mymoduledir/...';
*To include to a module file from a core file (call by hook / trigger / speciales pages), use dol_include_once('/My_Module_directory/...');
+
* To include a file of another external module into a module file, use dol_include_once('/otherextmoduledir/...');
  
 
=== Link ===  
 
=== Link ===  
Line 17: Line 17:
 
      
 
      
 
=== Core file modifications ===
 
=== Core file modifications ===
If core dolibarr files have to be modified for feature of your module :
+
If dolibarr core files have to be modified, it will be accepted :
*They were be accepted si they are pushed to dolibarr dev branch on GitHub (add feature to standard class without risk of regression, html.form.class.php/function.lib.php,...)
+
* If they are pushed to dolibarr dev branch on GitHub (add feature to standard class without risk of regression, html.form.class.php/function.lib.php,...)
*They were be accepted if adding hook/trigger is pushed to dolibarr dev branch on GitHub to be sure that on next dolibarr version your next module version will not have to change dolibarr core code 
 
In all cases:
 
* If and only if they are test with
 
    if (!empty($conf->mymodule->enabled))
 

Revision as of 22:00, 7 August 2013

Art.png Enabling/activation condition of external module on DoliStore

Here are the rules that will be apply by Dolibarr team on validation/activation of external module on [www.dolistore.com www.dolistore.com]

Structure

All module files have to be insise module directory, check this template GitHub Dolibarr Module Template

Inclusion

  • To include a core file, use include_once/require_once/include/require DOL_DOCUMENT_ROOT.'/pathtofile';
  • To include a file of module into a file of same module, use include_once/require_once/include/require './mymoduledir/...';
  • To include a file of another external module into a module file, use dol_include_once('/otherextmoduledir/...');

Link

All link to generated by HTML should be done by getNomUrl object class method or at least using dol_buildpath

Custom directory

An external module can be use in htdocs/custom/mymodule as well as in htdocs/mymodule

Core file modifications

If dolibarr core files have to be modified, it will be accepted :

  • If they are pushed to dolibarr dev branch on GitHub (add feature to standard class without risk of regression, html.form.class.php/function.lib.php,...)