dolibarr  13.0.2
Public Member Functions | Protected Member Functions | List of all members
DolibarrModules Class Reference

Class DolibarrModules. More...

+ Inheritance diagram for DolibarrModules:

Public Member Functions

 __construct ($db)
 Constructor. More...
 
 getName ()
 Gives the translated module name if translation exists in admin.lang or into language files of module. More...
 
 getDesc ()
 Gives the translated module description if translation exists in admin.lang or the default module description. More...
 
 getDescLong ()
 Gives the long description of a module. More...
 
 getDescLongReadmeFound ()
 Return path of file if a README file was found. More...
 
 getChangeLog ()
 Gives the changelog. More...
 
 getPublisher ()
 Gives the publisher name. More...
 
 getPublisherUrl ()
 Gives the publisher url. More...
 
 getVersion ($translated=1)
 Gives module version (translated if param $translated is on) For 'experimental' modules, gives 'experimental' translation For 'dolibarr' modules, gives Dolibarr version. More...
 
 isCoreOrExternalModule ()
 Tells if module is core or external. More...
 
 getLangFilesArray ()
 Gives module related language files list. More...
 
 getExportDatasetLabel ($r)
 Gives translated label of an export dataset. More...
 
 getImportDatasetLabel ($r)
 Gives translated label of an import dataset. More...
 
 getLastActivationDate ()
 Gives the last date of activation. More...
 
 getLastActivationInfo ()
 Gives the last author of activation. More...
 
 insert_boxes ($option= '')
 Adds boxes. More...
 
 delete_boxes ()
 Removes boxes. More...
 
 insert_cronjobs ()
 Adds cronjobs. More...
 
 delete_cronjobs ()
 Removes boxes. More...
 
 delete_tabs ()
 Removes tabs. More...
 
 insert_tabs ()
 Adds tabs. More...
 
 insert_const ()
 Adds constants. More...
 
 delete_const ()
 Removes constants tagged 'deleteonunactive'. More...
 
 insert_permissions ($reinitadminperms=0, $force_entity=null, $notrigger=0)
 Adds access rights. More...
 
 delete_permissions ()
 Removes access rights. More...
 
 insert_menus ()
 Adds menu entries. More...
 
 delete_menus ()
 Removes menu entries. More...
 
 create_dirs ()
 Creates directories. More...
 
 insert_dirs ($name, $dir)
 Adds directories definitions. More...
 
 delete_dirs ()
 Removes directories. More...
 
 insert_module_parts ()
 Adds generic parts. More...
 
 delete_module_parts ()
 Removes generic parts. More...
 
 init ($options= '')
 Function called when module is enabled. More...
 
 remove ($options= '')
 Function called when module is disabled. More...
 
 getKanbanView ($codeenabledisable= '', $codetoconfig= '')
 Return Kanban view of a module. More...
 

Protected Member Functions

 _init ($array_sql, $options= '')
 Enables a module. More...
 
 _remove ($array_sql, $options= '')
 Disable function. More...
 
 _active ()
 Insert constants for module activation. More...
 
 _unactive ()
 Module deactivation. More...
 
 _load_tables ($reldir)
 Create tables and keys required by module. More...
 

Detailed Description

Class DolibarrModules.

Parent class for module descriptor class files

Definition at line 37 of file DolibarrModules.class.php.

Constructor & Destructor Documentation

DolibarrModules::__construct (   $db)

Constructor.

Define names, constants, directories, boxes, permissions

Parameters
DoliDB$dbDatabase handler

Definition at line 343 of file DolibarrModules.class.php.

References db.

Member Function Documentation

DolibarrModules::_active ( )
protected

Insert constants for module activation.

Returns
int Error count (0 if OK)

Definition at line 947 of file DolibarrModules.class.php.

References $_SERVER, $resql, db, and dol_syslog().

Referenced by _init().

DolibarrModules::_init (   $array_sql,
  $options = '' 
)
protected

Enables a module.

Inserts all informations into database

Parameters
array$array_sqlSQL requests to be executed when enabling module
string$optionsString with options when disabling module:
  • 'noboxes' = Do not insert boxes - 'newboxdefonly' = For boxes, insert def of boxes only and not boxes activation
Returns
int 1 if OK, 0 if KO

Definition at line 366 of file DolibarrModules.class.php.

References _active(), create_dirs(), db, dol_syslog(), insert_boxes(), insert_const(), insert_cronjobs(), insert_menus(), insert_module_parts(), insert_permissions(), and insert_tabs().

Referenced by modExternalRss\init(), modNotification\init(), modDebugBar\init(), modLabel\init(), modDocumentGeneration\init(), modComptabilite\init(), modProductBatch\init(), modBarcode\init(), modOauth\init(), modReceiptPrinter\init(), modCashDesk\init(), modHRM\init(), modPaymentByBankTransfer\init(), modPrelevement\init(), modMailing\init(), modWorkflow\init(), modWebsite\init(), modDon\init(), modDeplacement\init(), modSupplierProposal\init(), modLoan\init(), modBlockedLog\init(), modSalaries\init(), modOpenSurvey\init(), modTax\init(), modDataPolicy\init(), modAsset\init(), modContrat\init(), modFicheinter\init(), modApi\init(), modExpenseReport\init(), modReception\init(), modBanque\init(), modMultiCurrency\init(), modEmailCollector\init(), modTakePos\init(), modDav\init(), modHoliday\init(), modTicket\init(), modResource\init(), modMrp\init(), modBom\init(), modExpedition\init(), modProjet\init(), modZapier\init(), modUser\init(), modFacture\init(), modAdherent\init(), modRecruitment\init(), modMyModule\init(), modStock\init(), modCommande\init(), modPropale\init(), modCategorie\init(), modService\init(), modProduct\init(), modSociete\init(), modFournisseur\init(), and init().

DolibarrModules::_load_tables (   $reldir)
protected

Create tables and keys required by module.

Files module.sql and module.key.sql with create table and create keys commands must be stored in directory reldir='/module/sql/' This function is called by this->init

Parameters
string$reldirRelative directory where to scan files
Returns
int <=0 if KO, >0 if OK

Definition at line 1021 of file DolibarrModules.class.php.

References dol_syslog(), and run_sql().

Referenced by modDataPolicy\init(), modApi\init(), modTakePos\init(), modMrp\init(), modBom\init(), modZapier\init(), modRecruitment\init(), modMyModule\init(), and modResource\loadTables().

DolibarrModules::_remove (   $array_sql,
  $options = '' 
)
protected

Disable function.

Deletes the module constants and boxes from the database.

Parameters
string[]$array_sql SQL requests to be executed when module is disabled
string$optionsOptions when disabling module:
Returns
int 1 if OK, 0 if KO

Definition at line 466 of file DolibarrModules.class.php.

References _unactive(), db, delete_boxes(), delete_const(), delete_cronjobs(), delete_dirs(), delete_menus(), delete_module_parts(), delete_permissions(), delete_tabs(), and dol_syslog().

Referenced by modExternalRss\remove(), modSupplierProposal\remove(), modBlockedLog\remove(), modApi\remove(), modDataPolicy\remove(), modMultiCurrency\remove(), modTakePos\remove(), modDav\remove(), modZapier\remove(), modMrp\remove(), modBom\remove(), modEmailCollector\remove(), modRecruitment\remove(), modMyModule\remove(), and remove().

DolibarrModules::_unactive ( )
protected

Module deactivation.

Returns
int Error count (0 if OK)

Definition at line 990 of file DolibarrModules.class.php.

References db, and dol_syslog().

Referenced by _remove().

DolibarrModules::create_dirs ( )

Creates directories.

Returns
int Error count (0 if OK)

Definition at line 1940 of file DolibarrModules.class.php.

References dol_mkdir(), dol_syslog(), and insert_dirs().

Referenced by _init().

DolibarrModules::delete_boxes ( )

Removes boxes.

Returns
int Error count (0 if OK)

Definition at line 1234 of file DolibarrModules.class.php.

References $resql, db, and dol_syslog().

Referenced by _remove().

DolibarrModules::delete_const ( )

Removes constants tagged 'deleteonunactive'.

Returns
int <0 if KO, 0 if OK

Definition at line 1617 of file DolibarrModules.class.php.

References db, and dol_syslog().

Referenced by _remove().

DolibarrModules::delete_cronjobs ( )

Removes boxes.

Returns
int Error count (0 if OK)

Definition at line 1426 of file DolibarrModules.class.php.

References $resql, db, dol_syslog(), and name.

Referenced by _remove().

DolibarrModules::delete_dirs ( )

Removes directories.

Returns
int Error count (0 if OK)

Definition at line 2042 of file DolibarrModules.class.php.

References db, and dol_syslog().

Referenced by _remove().

DolibarrModules::delete_menus ( )

Removes menu entries.

Returns
int Error count (0 if OK)

Definition at line 1910 of file DolibarrModules.class.php.

References $resql, db, dol_syslog(), and name.

Referenced by _remove().

DolibarrModules::delete_module_parts ( )

Removes generic parts.

Returns
int Error count (0 if OK)

Definition at line 2141 of file DolibarrModules.class.php.

References db, and dol_syslog().

Referenced by _remove().

DolibarrModules::delete_permissions ( )

Removes access rights.

Returns
int Error count (0 if OK)

Definition at line 1788 of file DolibarrModules.class.php.

References db, dol_syslog(), and name.

Referenced by _remove().

DolibarrModules::delete_tabs ( )

Removes tabs.

Returns
int Error count (0 if OK)

Definition at line 1457 of file DolibarrModules.class.php.

References db, and dol_syslog().

Referenced by _remove().

DolibarrModules::getChangeLog ( )

Gives the changelog.

First check ChangeLog-la_LA.md then ChangeLog.md

Returns
string Content of ChangeLog

Definition at line 704 of file DolibarrModules.class.php.

References dol_buildpath(), dol_is_file(), dolMd2Html(), and name.

DolibarrModules::getDesc ( )

Gives the translated module description if translation exists in admin.lang or the default module description.

Returns
string Translated module description

Definition at line 583 of file DolibarrModules.class.php.

References description, and name.

Referenced by getKanbanView().

DolibarrModules::getDescLong ( )

Gives the long description of a module.

First check README-la_LA.md then README.md If no markdown files found, it returns translated value of the key ->descriptionlong.

Returns
string Long description of a module from README.md of from property.

Definition at line 617 of file DolibarrModules.class.php.

References dol_buildpath(), dolMd2Html(), getDescLongReadmeFound(), and name.

DolibarrModules::getDescLongReadmeFound ( )

Return path of file if a README file was found.

Returns
string Path of file if a README file was found.

Definition at line 669 of file DolibarrModules.class.php.

References dol_buildpath(), dol_is_file(), and name.

Referenced by getDescLong().

DolibarrModules::getExportDatasetLabel (   $r)

Gives translated label of an export dataset.

Parameters
int$rDataset index
Returns
string Translated databaset label

Definition at line 837 of file DolibarrModules.class.php.

DolibarrModules::getImportDatasetLabel (   $r)

Gives translated label of an import dataset.

Parameters
int$rDataset index
Returns
string Translated dataset label

Definition at line 859 of file DolibarrModules.class.php.

DolibarrModules::getKanbanView (   $codeenabledisable = '',
  $codetoconfig = '' 
)

Return Kanban view of a module.

Parameters
string$codeenabledisableHTML code for button to enable/disable module
string$codetoconfigHTML code to go to config page
Returns
string HTML code of Kanban view

Definition at line 2206 of file DolibarrModules.class.php.

References dol_escape_htmltag(), getDesc(), getName(), getVersion(), img_object(), img_picto(), isCoreOrExternalModule(), and print.

DolibarrModules::getLangFilesArray ( )

Gives module related language files list.

Returns
string[] Language files list

Definition at line 825 of file DolibarrModules.class.php.

DolibarrModules::getLastActivationDate ( )

Gives the last date of activation.

Returns
int|string Date of last activation or '' if module was never activated

Definition at line 880 of file DolibarrModules.class.php.

References $resql, db, and dol_syslog().

DolibarrModules::getLastActivationInfo ( )

Gives the last author of activation.

Returns
array Array array('authorid'=>Id of last activation user, 'lastactivationdate'=>Date of last activation)

Definition at line 911 of file DolibarrModules.class.php.

References $resql, db, and dol_syslog().

DolibarrModules::getName ( )

Gives the translated module name if translation exists in admin.lang or into language files of module.

Otherwise return the module key name.

Returns
string Translated module name

Definition at line 549 of file DolibarrModules.class.php.

References name.

Referenced by getKanbanView().

DolibarrModules::getPublisher ( )

Gives the publisher name.

Returns
string Publisher name

Definition at line 747 of file DolibarrModules.class.php.

DolibarrModules::getPublisherUrl ( )

Gives the publisher url.

Returns
string Publisher url

Definition at line 757 of file DolibarrModules.class.php.

DolibarrModules::getVersion (   $translated = 1)

Gives module version (translated if param $translated is on) For 'experimental' modules, gives 'experimental' translation For 'dolibarr' modules, gives Dolibarr version.

Parameters
int$translated1=Special version keys are translated, 0=Special version keys are not translated
Returns
string Module version

Definition at line 770 of file DolibarrModules.class.php.

Referenced by getKanbanView().

DolibarrModules::init (   $options = '')

Function called when module is enabled.

The init function adds tabs, constants, boxes, permissions and menus (defined in constructor) into Dolibarr database. It also creates data directories

Parameters
string$optionsOptions when enabling module ('', 'newboxdefonly', 'noboxes') 'noboxes' = Do not insert boxes 'newboxdefonly' = For boxes, insert def of boxes only and not boxes activation
Returns
int 1 if OK, 0 if KO

Definition at line 2180 of file DolibarrModules.class.php.

References _init().

DolibarrModules::insert_boxes (   $option = '')

Adds boxes.

Parameters
string$optionOptions when disabling module ('newboxdefonly'=insert only boxes definition)
Returns
int Error count (0 if OK)

Definition at line 1140 of file DolibarrModules.class.php.

References $resql, db, dol_syslog(), and InfoBox\getListOfPagesForBoxes().

Referenced by _init().

DolibarrModules::insert_const ( )

Adds constants.

Returns
int Error count (0 if OK)

Definition at line 1549 of file DolibarrModules.class.php.

References db, dol_syslog(), and if.

Referenced by _init().

DolibarrModules::insert_cronjobs ( )

Adds cronjobs.

Returns
int Error count (0 if OK)

Definition at line 1308 of file DolibarrModules.class.php.

References $resql, db, dol_now(), dol_syslog(), and name.

Referenced by _init().

DolibarrModules::insert_dirs (   $name,
  $dir 
)

Adds directories definitions.

Parameters
string$nameName
string$dirDirectory
Returns
int Error count (0 if OK)

Definition at line 2003 of file DolibarrModules.class.php.

References db, dol_syslog(), and name.

Referenced by create_dirs().

DolibarrModules::insert_menus ( )

Adds menu entries.

Returns
int Error count (0 if OK)

Definition at line 1814 of file DolibarrModules.class.php.

References db, dol_syslog(), and name.

Referenced by _init().

DolibarrModules::insert_module_parts ( )

Adds generic parts.

Returns
int Error count (0 if OK)

Definition at line 2068 of file DolibarrModules.class.php.

References $resql, db, and dol_syslog().

Referenced by _init().

DolibarrModules::insert_permissions (   $reinitadminperms = 0,
  $force_entity = null,
  $notrigger = 0 
)

Adds access rights.

Parameters
int$reinitadminpermsIf 1, we also grant them to all admin users
int$force_entityForce current entity
int$notrigger1=Does not execute triggers, 0= execute triggers
Returns
int Error count (0 if OK)

Definition at line 1656 of file DolibarrModules.class.php.

References $resql, db, dol_print_error(), dol_strlen(), dol_syslog(), and name.

Referenced by _init().

DolibarrModules::insert_tabs ( )

Adds tabs.

Returns
int Error count (0 if ok)

Definition at line 1483 of file DolibarrModules.class.php.

References $resql, db, and dol_syslog().

Referenced by _init().

DolibarrModules::isCoreOrExternalModule ( )

Tells if module is core or external.

Returns
string 'core', 'external' or 'unknown'

Definition at line 802 of file DolibarrModules.class.php.

Referenced by getKanbanView().

DolibarrModules::remove (   $options = '')

Function called when module is disabled.

The remove function removes tabs, constants, boxes, permissions and menus from Dolibarr database. Data directories are not deleted

Parameters
string$optionsOptions when enabling module ('', 'noboxes')
Returns
int 1 if OK, 0 if KO

Definition at line 2193 of file DolibarrModules.class.php.

References _remove().


The documentation for this class was generated from the following file: