/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modMailmanSpip($db) { parent::__construct($db); $this->numero = 105; $this->family = "technic"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Mailman or Spip interface for member module"; $this->version = 'dolibarr'; // 'development' or 'experimental' or 'dolibarr' or version $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 1; $this->picto = 'technic'; // Data directories to create when module is enabled $this->dirs = array(); // Dependencies $this->depends = array('modAdherent'); $this->requiredby = array(); // Config pages $this->config_page_url = array('mailman.php@adherents'); // Constants $this->const = array(); $this->const[1] = array("ADHERENT_MAILMAN_UNSUB_URL", "chaine", "http://lists.domain.com/cgi-bin/mailman/admin/%LISTE%/members?adminpw=%MAILMAN_ADMINPW%&user=%EMAIL%", "Url de désinscription aux listes mailman"); $this->const[2] = array("ADHERENT_MAILMAN_URL", "chaine", "http://lists.domain.com/cgi-bin/mailman/admin/%LISTE%/members?adminpw=%MAILMAN_ADMINPW%&send_welcome_msg_to_this_batch=1&subscribees=%EMAIL%", "Url pour les inscriptions mailman"); $this->const[3] = array("ADHERENT_MAILMAN_LISTS", "chaine", "", "Mailing-list to subscribe new members to"); // Boxes $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'clicktodial'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modFckeditor($db) { parent::__construct($db); $this->numero = 2000; $this->family = "technic"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Editeur WYSIWYG"; $this->version = 'dolibarr'; // 'experimental' or 'dolibarr' or version $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 2; // Name of png file (without png) used for this module. // Png file must be in theme/yourtheme/img directory under name object_pictovalue.png. $this->picto = 'list'; // Data directories to create when module is enabled $this->dirs = array("/fckeditor/temp", "/fckeditor/image"); // Config pages $this->config_page_url = array("fckeditor.php"); // Dependances $this->depends = array(); $this->requiredby = array(); // Constantes $this->const = array(); $this->const[0] = array("FCKEDITOR_ENABLE_SOCIETE", "yesno", "1", "Activation fckeditor sur notes autres"); $this->const[1] = array("FCKEDITOR_ENABLE_PRODUCTDESC", "yesno", "1", "Activation fckeditor sur notes produits"); $this->const[2] = array("FCKEDITOR_ENABLE_MAILING", "yesno", "1", "Activation fckeditor sur emailing"); // Boites $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'fckeditor'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modNotification($db) { parent::__construct($db); $this->numero = 600; $this->family = "technic"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Gestion des notifications (par mail) sur evenement Dolibarr"; $this->version = 'dolibarr'; // 'experimental' or 'dolibarr' or version $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 1; $this->picto = 'email'; // Data directories to create when module is enabled. $this->dirs = array(); // Dependances $this->depends = array(); $this->requiredby = array(); $this->langfiles = array("mails"); // Config pages $this->config_page_url = array("notification.php"); // Constantes $this->const = array(); // Boites $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'notification'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modSyslog($db) { parent::__construct($db); $this->numero = 42; // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' // It is used to group modules in module setup page $this->family = "base"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); // Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module) $this->description = "Activate debug logs (syslog)"; // Can be enabled / disabled only in the main company $this->core_enabled = 1; // Possible values for version are: 'development', 'experimental', 'dolibarr' or version $this->version = 'speedealing'; // 'experimental' or 'dolibarr' or version // Where to store the module in setup page (0=common,1=interface,2=others,3=very specific) $this->special = 2; // Name of image file used for this module. $this->picto = 'technic'; // Data directories to create when module is enabled $this->dirs = array(); // Config pages $this->config_page_url = array("syslog.php"); // Dependances $this->depends = array(); $this->requiredby = array(); // Constantes $this->const = array(); // Boites $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'syslog'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modClickToDial($db) { parent::__construct($db); $this->numero = 58; $this->family = "technic"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Gestion du Click To Dial"; $this->version = 'dolibarr'; // 'development' or 'experimental' or 'dolibarr' or version $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 1; $this->picto = 'phoning'; // Data directories to create when module is enabled $this->dirs = array(); // Dependencies $this->depends = array(); $this->requiredby = array(); // Config pages $this->config_page_url = array("clicktodial.php"); // Constants $this->const = array(); // Boxes $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'clicktodial'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modComptabilite($db) { global $conf; parent::__construct($db); $this->numero = 10; $this->family = "financial"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Gestion sommaire de comptabilite"; // Possible values for version are: 'development', 'experimental', 'dolibarr' or version $this->version = 'dolibarr'; $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 0; $this->picto = ''; // Config pages $this->config_page_url = array("compta.php"); // Dependances $this->depends = array("modFacture", "modBanque"); $this->requiredby = array(); $this->conflictwith = array("modAccounting"); $this->langfiles = array("compta"); // Constantes $this->const = array(); // Data directories to create when module is enabled $this->dirs = array("/comptabilite/temp", "/comptabilite/rapport", "/comptabilite/export", "/comptabilite/bordereau"); // Boites $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'compta'; $r = 0; $r++; $this->rights[$r][0] = 95; $this->rights[$r][1] = 'Lire CA, bilans, resultats'; $this->rights[$r][2] = 'r'; $this->rights[$r][3] = 1; $this->rights[$r][4] = 'resultat'; $this->rights[$r][5] = 'lire'; $r++; $this->rights[$r][0] = 96; $this->rights[$r][1] = 'Parametrer la ventilation'; $this->rights[$r][2] = 'r'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'ventilation'; $this->rights[$r][5] = 'parametrer'; $r++; $this->rights[$r][0] = 97; $this->rights[$r][1] = 'Lire les ventilations de factures'; $this->rights[$r][2] = 'r'; $this->rights[$r][3] = 1; $this->rights[$r][4] = 'ventilation'; $this->rights[$r][5] = 'lire'; $r++; $this->rights[$r][0] = 98; $this->rights[$r][1] = 'Ventiler les lignes de factures'; $this->rights[$r][2] = 'r'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'ventilation'; $this->rights[$r][5] = 'creer'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modLdap($db) { parent::__construct($db); $this->numero = 200; $this->family = "technic"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Synchronisation Ldap"; $this->version = 'dolibarr'; // 'experimental' or 'dolibarr' or version $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); // Where to store the module in setup page (0=common,1=interface,2=others,3=very specific) $this->special = 1; // Name of image file used for this module. // If file is in theme/yourtheme/img directory under name object_pictovalue.png, use this->picto='pictovalue' // If file is in module/images directory, use this->picto=DOL_URL_ROOT.'/module/images/file.png' $this->picto = 'technic'; // Data directories to create when module is enabled $this->dirs = array("/ldap/temp"); // Config pages $this->config_page_url = array("ldap.php"); // Dependancies $this->depends = array(); $this->requiredby = array(); // Constants $this->const = array(0 => array('LDAP_SERVER_TYPE', 'chaine', 'openldap', '', 0), 1 => array('LDAP_SERVER_PROTOCOLVERSION', 'chaine', '3', '', 0), 2 => array('LDAP_SERVER_HOST', 'chaine', 'localhost', '', 0), 3 => array('LDAP_USER_DN', 'chaine', 'ou=users,dc=my-domain,dc=com', '', 0), 4 => array('LDAP_GROUP_DN', 'chaine', 'ou=groups,dc=my-domain,dc=com', '', 0), 5 => array('LDAP_FILTER_CONNECTION', 'chaine', '&(objectClass=user)(objectCategory=person)', '', 0), 6 => array('LDAP_FIELD_LOGIN', 'chaine', 'uid', '', 0), 7 => array('LDAP_FIELD_FULLNAME', 'chaine', 'cn', '', 0), 8 => array('LDAP_FIELD_NAME', 'chaine', 'sn', '', 0), 9 => array('LDAP_FIELD_FIRSTNAME', 'chaine', 'givenname', '', 0), 10 => array('LDAP_FIELD_MAIL', 'chaine', 'mail', '', 0), 11 => array('LDAP_FIELD_PHONE', 'chaine', 'telephonenumber', '', 0), 12 => array('LDAP_FIELD_FAX', 'chaine', 'facsimiletelephonenumber', '', 0), 13 => array('LDAP_FIELD_MOBILE', 'chaine', 'mobile', '', 0)); // Boites $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'ldap'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modExternalRss($db) { global $conf; parent::__construct($db); $this->numero = 320; $this->family = "technic"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Ajout de files d'informations RSS dans les ecrans Dolibarr"; $this->version = 'dolibarr'; // 'experimental' or 'dolibarr' or version $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 1; $this->picto = 'rss'; // Data directories to create when module is enabled $this->dirs = array("/externalrss/temp"); // Config pages $this->config_page_url = array("external_rss.php"); // Dependances $this->depends = array(); $this->requiredby = array(); $this->phpmin = array(4, 2, 0); $this->phpmax = array(); // Constantes $this->const = array(); // Boxes $this->boxes = array(); // Les boites sont ajoutees lors de la configuration des flux // Permissions $this->rights = array(); $this->rights_class = 'externalrss'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modBarcode($db) { parent::__construct($db); $this->numero = 55; $this->family = "technic"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Gestion des codes barres"; $this->version = 'dolibarr'; // 'development' or 'experimental' or 'dolibarr' or version $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 2; $this->picto = 'barcode'; // Data directories to create when module is enabled $this->dirs = array("/barcode/temp"); // Dependances $this->depends = array(); // May be used for product or service or third party module $this->requiredby = array(); // Config pages $this->config_page_url = array("barcode.php"); // Constants // Example: $this->const=array(0=>array('MYMODULE_MYNEWCONST1','chaine','myvalue','This is a constant to add',0), // 1=>array('MYMODULE_MYNEWCONST2','chaine','myvalue','This is another constant to add',0) ); $this->const = array(); // Boxes $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'barcode'; $this->rights[1][0] = 300; // id de la permission $this->rights[1][1] = 'Lire les codes barres'; // libelle de la permission $this->rights[1][2] = 'r'; // type de la permission (deprecie a ce jour) $this->rights[1][3] = 1; // La permission est-elle une permission par defaut $this->rights[1][4] = 'lire'; $this->rights[2][0] = 301; // id de la permission $this->rights[2][1] = 'Creer/modifier les codes barres'; // libelle de la permission $this->rights[2][2] = 'w'; // type de la permission (deprecie a ce jour) $this->rights[2][3] = 0; // La permission est-elle une permission par defaut $this->rights[2][4] = 'creer'; $this->rights[4][0] = 302; // id de la permission $this->rights[4][1] = 'Supprimer les codes barres'; // libelle de la permission $this->rights[4][2] = 'd'; // type de la permission (deprecie a ce jour) $this->rights[4][3] = 0; // La permission est-elle une permission par defaut $this->rights[4][4] = 'supprimer'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modExternalSite($db) { parent::__construct($db); // Id for module (must be unique). // Use here a free id. $this->numero = 100; // Family can be 'crm','financial','hr','projects','product','technic','other' // It is used to sort modules in module setup page $this->family = "other"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); // Module description used if translation string 'ModuleXXXDesc' not found (XXX is id value) $this->description = "Include any external web site into Dolibarr menus and view it into a Dolibarr frame."; // Possible values for version are: 'development', 'experimental', 'dolibarr' or version $this->version = 'dolibarr'; // Key used in llx_const table to save module status enabled/disabled (XXX is id value) $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); // Where to store the module in setup page (0=common,1=interface,2=other) $this->special = 1; // Name of png file (without png) used for this module $this->picto = 'bookmark'; // Call to inside lang's file $this->langfiles = array("@externalsite"); // Data directories to create when module is enabled $this->dirs = array(); // Config pages. Put here list of php page names stored in admmin directory used to setup module $this->config_page_url = array("externalsite.php@externalsite"); // Dependencies $this->depends = array(); // List of modules id that must be enabled if this module is enabled $this->requiredby = array(); // List of modules id to disable if this one is disabled // Constants $this->const = array(); // List of parameters // Boxes $this->boxes = array(); // List of boxes $r = 0; // Add here list of php file(s) stored in core/boxes that contains class to show a box. // Example: //$this->boxes[$r][1] = "myboxa.php"; //$r++; //$this->boxes[$r][1] = "myboxb.php"; //$r++; // Permissions $this->rights_class = 'externalsite'; // Permission key $this->rights = array(); // Permission array used by this module // Menus //------ $r = 0; $this->menu[$r] = array('fk_menu' => 0, 'type' => 'top', 'titre' => 'ExternalSites', 'mainmenu' => 'externalsite', 'url' => '/externalsite/frames.php', 'langs' => 'other', 'position' => 100, 'perms' => '', 'enabled' => '$conf->externalsite->enabled', 'target' => '', 'user' => 0); $r++; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modDon($db) { parent::__construct($db); $this->numero = 700; $this->family = "financial"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Gestion des dons"; $this->version = 'dolibarr'; // 'experimental' or 'dolibarr' or version $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 0; // Name of png file (without png) used for this module. // Png file must be in theme/yourtheme/img directory under name object_pictovalue.png. $this->picto = 'bill'; // Data directories to create when module is enabled $this->dirs = array("/dons/temp"); // Dependancies $this->depends = array(); $this->requiredby = array(); // Config pages $this->config_page_url = array("dons.php"); // Constants $this->const = array(); $r = 0; $this->const[$r][0] = "DON_ADDON_MODEL"; $this->const[$r][1] = "chaine"; $this->const[$r][2] = "html_cerfafr"; $this->const[$r][3] = 'Nom du gestionnaire de generation de recu de dons'; $this->const[$r][4] = 0; $r++; // Boxes $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'don'; $this->rights[1][0] = 701; $this->rights[1][1] = 'Lire les dons'; $this->rights[1][2] = 'r'; $this->rights[1][3] = 1; $this->rights[1][4] = 'lire'; $this->rights[2][0] = 702; $this->rights[2][1] = 'Creer/modifier les dons'; $this->rights[2][2] = 'w'; $this->rights[2][3] = 0; $this->rights[2][4] = 'creer'; $this->rights[3][0] = 703; $this->rights[3][1] = 'Supprimer les dons'; $this->rights[3][2] = 'd'; $this->rights[3][3] = 0; $this->rights[3][4] = 'supprimer'; }
/** * \brief Constructeur. Definit les noms, constantes et boites * \param DB Database handler */ function modMap($DB) { parent::__construct($DB); $this->numero = 450; $this->family = "technic"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Carthographie"; $this->version = 'dolibarr'; // 'experimental' or 'dolibarr' or version $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 0; $this->picto = 'globe'; $this->moddir = "map"; //directory for module in htdocs : test index.php presence // Data directories to create when module is enabled $this->dirs = array(); // Config pages //------------- $this->config_page_url = array("map.php@map"); // Dependances //------------ $this->depends = array(); $this->requiredby = array(); $this->langfiles = array("map@map", "companies"); // Constantes //----------- $this->const = array(); $this->const[0] = array("MAP_SYSTEM", "texte", "openlayers"); // Boites //------- $this->boxes = array(); // Menu //------------ // None // Permissions //------------ $this->rights = array(); $this->rights_class = 'map'; $r = 0; // $this->rights[$r][0] Id permission (unique tous modules confondus) // $this->rights[$r][1] Libelle par defaut si traduction de cle "PermissionXXX" non trouvee (XXX = Id permission) // $this->rights[$r][2] Non utilise // $this->rights[$r][3] 1=Permis par defaut, 0=Non permis par defaut // $this->rights[$r][4] Niveau 1 pour nommer permission dans code // $this->rights[$r][5] Niveau 2 pour nommer permission dans code $this->rights[$r][0] = 451; $this->rights[$r][1] = 'See map'; $this->rights[$r][2] = 'r'; $this->rights[$r][3] = 1; $this->rights[$r][4] = 'read'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modLabel($db) { parent::__construct($db); $this->numero = 60; $this->family = "other"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Gestion des etiquettes"; $this->version = 'development'; // 'development' or 'experimental' or 'dolibarr' or version $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 2; $this->picto = 'label'; // Data directories to create when module is enabled $this->dirs = array("/label/temp"); // Dependancies $this->depends = array(); $this->requiredby = array(); // Config pages $this->config_page_url = array("label.php"); // Constants $this->const = array(); // Boxes $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'label'; $this->rights[1][0] = 601; // id de la permission $this->rights[1][1] = 'Lire les etiquettes'; // libelle de la permission $this->rights[1][3] = 1; // La permission est-elle une permission par defaut $this->rights[1][4] = 'lire'; $this->rights[2][0] = 602; // id de la permission $this->rights[2][1] = 'Creer/modifier les etiquettes'; // libelle de la permission $this->rights[2][3] = 0; // La permission est-elle une permission par defaut $this->rights[2][4] = 'creer'; $this->rights[4][0] = 609; // id de la permission $this->rights[4][1] = 'Supprimer les etiquettes'; // libelle de la permission $this->rights[4][3] = 0; // La permission est-elle une permission par defaut $this->rights[4][4] = 'supprimer'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modExport($db) { parent::__construct($db); $this->numero = 240; $this->family = "technic"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Outils d'exports de donnees Dolibarr (via un assistant)"; $this->version = 'dolibarr'; // 'experimental' or 'dolibarr' or version $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 0; $this->picto = 'technic'; // Data directories to create when module is enabled $this->dirs = array("/export/temp"); // Config pages $this->config_page_url = array(); // Dependances $this->depends = array(); $this->requiredby = array(); $this->phpmin = array(4, 2, 0); $this->phpmax = array(); // Constantes $this->const = array(); // Boxes $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'export'; $r = 0; $r++; $this->rights[$r][0] = 1201; $this->rights[$r][1] = 'Lire les exports'; $this->rights[$r][2] = 'r'; $this->rights[$r][3] = 1; $this->rights[$r][4] = 'lire'; $r++; $this->rights[$r][0] = 1202; $this->rights[$r][1] = 'Creer/modifier un export'; $this->rights[$r][2] = 'w'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'creer'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modGeoIPMaxmind($db) { parent::__construct($db); $this->numero = 2900; // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' // It is used to group modules in module setup page $this->family = "technic"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); // Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module) $this->description = "GeoIP Maxmind conversions capabilities"; // Possible values for version are: 'development', 'experimental', 'dolibarr' or version $this->version = 'dolibarr'; // Key used in llx_const table to save module status enabled/disabled (where MYMODULE is value of property name of module in uppercase) $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); // Where to store the module in setup page (0=common,1=interface,2=others,3=very specific) $this->special = 1; // Name of image file used for this module. // If file is in theme/yourtheme/img directory under name object_pictovalue.png, use this->picto='pictovalue' // If file is in module/images directory, use this->picto=DOL_URL_ROOT.'/module/images/file.png' $this->picto = 'globe'; // Data directories to create when module is enabled $this->dirs = array("/geoipmaxmind"); // Config pages $this->config_page_url = array("geoipmaxmind.php"); // D�pendances $this->depends = array(); $this->requiredby = array(); $this->phpmin = array(4, 2, 0); $this->phpmax = array(); $this->need_dolibarr_version = array(2, 7, -1); // Minimum version of Dolibarr required by module $this->need_javascript_ajax = 1; // Constantes $this->const = array(); // Boxes $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'geoipmaxmind'; $r = 0; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modImport($db) { parent::__construct($db); $this->numero = 250; $this->family = "technic"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Outils d'imports de donnees Dolibarr (via un assistant)"; // Possible values for version are: 'experimental' or 'dolibarr' or version $this->version = 'dolibarr'; // 'experimental' or 'dolibarr' or version $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 0; $this->picto = 'technic'; // Data directories to create when module is enabled $this->dirs = array("/import/temp"); // Config pages $this->config_page_url = array(); // D�pendances $this->depends = array(); $this->requiredby = array(); $this->phpmin = array(4, 3, 0); // Need auto_detect_line_endings php option to solve MAC pbs. $this->phpmax = array(); $this->need_dolibarr_version = array(2, 7, -1); // Minimum version of Dolibarr required by module $this->need_javascript_ajax = 1; // Constantes $this->const = array(); // Boxes $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'import'; $r = 0; $r++; $this->rights[$r][0] = 1251; $this->rights[$r][1] = 'Run mass imports of external data (data load)'; $this->rights[$r][2] = 'r'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'run'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modDocument($db) { parent::__construct($db); $this->numero = 51; $this->family = "technic"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Generation de courriers/publipostages papiers"; // Possible values for version are: 'development', 'experimental', 'dolibarr' or version $this->version = 'development'; $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 0; $this->picto = 'email'; // Data directories to create when module is enabled $this->dirs = array("/document/temp"); // Config pages //$this->config_page_url = array("document.php"); // Dependencies $this->depends = array(); $this->requiredby = array(); $this->conflictwith = array(); $this->langfiles = array("orders", "bills", "companies"); // Constantes $this->const = array(); // Boites $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'document'; $r = 0; $this->rights[$r][0] = 511; $this->rights[$r][1] = 'Lire les documents'; $this->rights[$r][2] = 'r'; $this->rights[$r][3] = 1; $this->rights[$r][4] = 'lire'; $r++; $this->rights[$r][0] = 512; $this->rights[$r][1] = 'Supprimer les documents clients'; $this->rights[$r][2] = 'd'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'supprimer'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modWebServices($db) { parent::__construct($db); $this->numero = 2600; $this->family = "technic"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Enable the Dolibarr web services server"; $this->version = 'dolibarr'; // 'experimental' or 'dolibarr' or version // Key used in llx_const table to save module status enabled/disabled (where MYMODULE is value of property name of module in uppercase) $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); // Where to store the module in setup page (0=common,1=interface,2=others,3=very specific) $this->special = 1; // Name of image file used for this module. $this->picto = 'technic'; // Data directories to create when module is enabled $this->dirs = array(); // Config pages //------------- $this->config_page_url = array("webservices.php@webservices"); // Dependancies //------------- $this->depends = array(); $this->requiredby = array(); $this->langfiles = array("other"); // Constantes //----------- $this->const = array(); // New pages on tabs // ----------------- $this->tabs = array(); // Boxes //------ $this->boxes = array(); // Permissions //------------ $this->rights = array(); $this->rights_class = 'webservices'; $r = 0; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modBoutique($db) { parent::__construct($db); $this->numero = 800; $this->family = "products"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Interface de visualisation d'une boutique OSCommerce ou OSCSS"; $this->version = 'dolibarr'; // 'experimental' or 'dolibarr' or version $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 1; // Data directories to create when module is enabled $this->dirs = array(); // Config pages // $this->config_page_url = array("boutique.php","osc-languages.php"); $this->config_page_url = array("boutique.php@boutique"); // Dependancies $this->depends = array(); $this->requiredby = array(); $this->conflictwith = array("modOSCommerceWS"); $this->langfiles = array("shop"); // Constants $this->const = array(); $r = 0; $this->const[$r][0] = "OSC_DB_HOST"; $this->const[$r][1] = "chaine"; $this->const[$r][2] = "localhost"; $this->const[$r][3] = "Host for OSC database for OSCommerce module 1"; $this->const[$r][4] = 0; $r++; // Boites $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'boutique'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modPaypal($db) { parent::__construct($db); // Id for module (must be unique). // Use here a free id (See in Home -> System information -> Dolibarr for list of used modules id). $this->numero = 50200; // Key text used to identify module (for permissions, menus, etc...) $this->rights_class = 'paypal'; // Family can be 'crm','financial','hr','projects','products','ecm','technic','other' // It is used to group modules in module setup page $this->family = "other"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); // Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module) $this->description = "Module to offer an online payment page with PayPal"; // Possible values for version are: 'development', 'experimental', 'dolibarr' or version $this->version = 'dolibarr'; // Key used in llx_const table to save module status enabled/disabled (where MYMODULE is value of property name of module in uppercase) $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); // Where to store the module in setup page (0=common,1=interface,2=other) $this->special = 1; // Name of image file used for this module. // If file is in theme/yourtheme/img directory under name object_pictovalue.png, use this->picto='pictovalue' // If file is in module/img directory, use this->picto=DOL_URL_ROOT.'/module/img/file.png' $this->picto = 'paypal@paypal'; // Data directories to create when module is enabled. $this->dirs = array('/paypal/temp'); // Config pages. Put here list of php page names stored in admmin directory used to setup module. $this->config_page_url = array("paypal.php@paypal"); // Dependencies $this->depends = array(); // List of modules id that must be enabled if this module is enabled $this->requiredby = array('modPaypalPlus'); // List of modules id to disable if this one is disabled $this->phpmin = array(5, 2); // Minimum version of PHP required by module $this->need_dolibarr_version = array(3, 0); // Minimum version of Dolibarr required by module $this->langfiles = array("paypal"); // Constants $this->const = array(); // List of particular constants to add when module is enabled //Example: $this->const=array(0=>array('MODULE_MY_NEW_CONST1','chaine','myvalue','This is a constant to add',0), // 1=>array('MODULE_MY_NEW_CONST2','chaine','myvalue','This is another constant to add',0) ); // New pages on tabs $this->tabs = array(); // Boxes $this->boxes = array(); // List of boxes $r = 0; // Add here list of php file(s) stored in core/boxes that contains class to show a box. // Example: //$this->boxes[$r][1] = "myboxa.php"; //$r++; //$this->boxes[$r][1] = "myboxb.php"; //$r++; // Permissions $this->rights = array(); // Permission array used by this module $r = 0; // Main menu entries $this->menus = array(); // List of menus to add $r = 0; // Add here entries to declare new menus // Example to declare the Top Menu entry: // $this->menu[$r]=array( 'fk_menu'=>0, // Put 0 if this is a top menu // 'type'=>'top', // This is a Top menu entry // 'titre'=>'MyModule top menu', // 'mainmenu'=>'mymodule', // 'url'=>'/mymodule/pagetop.php', // 'langs'=>'mylangfile', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. // 'position'=>100, // 'perms'=>'1', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules // 'target'=>'', // 'user'=>2); // 0=Menu for internal users, 1=external users, 2=both // $r++; // // Example to declare a Left Menu entry: // $this->menu[$r]=array( 'fk_menu'=>'r=0', // Use r=value where r is index key used for the parent menu entry (higher parent must be a top menu entry) // 'type'=>'left', // This is a Left menu entry // 'titre'=>'MyModule left menu 1', // 'mainmenu'=>'mymodule', // 'url'=>'/mymodule/pagelevel1.php', // 'langs'=>'mylangfile', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. // 'position'=>100, // 'perms'=>'1', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules // 'target'=>'', // 'user'=>2); // 0=Menu for internal users, 1=external users, 2=both // $r++; // // Example to declare another Left Menu entry: // $this->menu[$r]=array( 'fk_menu'=>'r=1', // Use r=value where r is index key used for the parent menu entry (higher parent must be a top menu entry) // 'type'=>'left', // This is a Left menu entry // 'titre'=>'MyModule left menu 2', // 'mainmenu'=>'mymodule', // 'url'=>'/mymodule/pagelevel2.php', // 'langs'=>'mylangfile', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory. // 'position'=>100, // 'perms'=>'1', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules // 'target'=>'', // 'user'=>2); // 0=Menu for internal users, 1=external users, 2=both // $r++; // Exports $r = 1; // Example: // $this->export_code[$r]=$this->rights_class.'_'.$r; // $this->export_label[$r]='CustomersInvoicesAndInvoiceLines'; // Translation key (used only if key ExportDataset_xxx_z not found) // $this->export_permission[$r]=array(array("facture","facture","export")); // $this->export_fields_array[$r]=array('s.rowid'=>"IdCompany",'s.nom'=>'CompanyName','s.address'=>'Address','s.cp'=>'Zip','s.ville'=>'Town','s.fk_pays'=>'Country','s.tel'=>'Phone','s.siren'=>'ProfId1','s.siret'=>'ProfId2','s.ape'=>'ProfId3','s.idprof4'=>'ProfId4','s.code_compta'=>'CustomerAccountancyCode','s.code_compta_fournisseur'=>'SupplierAccountancyCode','f.rowid'=>"InvoiceId",'f.facnumber'=>"InvoiceRef",'f.datec'=>"InvoiceDateCreation",'f.datef'=>"DateInvoice",'f.total'=>"TotalHT",'f.total_ttc'=>"TotalTTC",'f.tva'=>"TotalVAT",'f.paye'=>"InvoicePaid",'f.fk_statut'=>'InvoiceStatus','f.note'=>"InvoiceNote",'fd.rowid'=>'LineId','fd.description'=>"LineDescription",'fd.price'=>"LineUnitPrice",'fd.tva_tx'=>"LineVATRate",'fd.qty'=>"LineQty",'fd.total_ht'=>"LineTotalHT",'fd.total_tva'=>"LineTotalTVA",'fd.total_ttc'=>"LineTotalTTC",'fd.date_start'=>"DateStart",'fd.date_end'=>"DateEnd",'fd.fk_product'=>'ProductId','p.ref'=>'ProductRef'); // $this->export_entities_array[$r]=array('s.rowid'=>"company",'s.nom'=>'company','s.address'=>'company','s.cp'=>'company','s.ville'=>'company','s.fk_pays'=>'company','s.tel'=>'company','s.siren'=>'company','s.siret'=>'company','s.ape'=>'company','s.idprof4'=>'company','s.code_compta'=>'company','s.code_compta_fournisseur'=>'company','f.rowid'=>"invoice",'f.facnumber'=>"invoice",'f.datec'=>"invoice",'f.datef'=>"invoice",'f.total'=>"invoice",'f.total_ttc'=>"invoice",'f.tva'=>"invoice",'f.paye'=>"invoice",'f.fk_statut'=>'invoice','f.note'=>"invoice",'fd.rowid'=>'invoice_line','fd.description'=>"invoice_line",'fd.price'=>"invoice_line",'fd.total_ht'=>"invoice_line",'fd.total_tva'=>"invoice_line",'fd.total_ttc'=>"invoice_line",'fd.tva_tx'=>"invoice_line",'fd.qty'=>"invoice_line",'fd.date_start'=>"invoice_line",'fd.date_end'=>"invoice_line",'fd.fk_product'=>'product','p.ref'=>'product'); // $this->export_sql_start[$r]='SELECT DISTINCT '; // $this->export_sql_end[$r] =' FROM ('.MAIN_DB_PREFIX.'facture as f, '.MAIN_DB_PREFIX.'facturedet as fd, '.MAIN_DB_PREFIX.'societe as s)'; // $this->export_sql_end[$r] .=' LEFT JOIN '.MAIN_DB_PREFIX.'product as p on (fd.fk_product = p.rowid)'; // $this->export_sql_end[$r] .=' WHERE f.fk_soc = s.rowid AND f.rowid = fd.fk_facture'; // $r++; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modProjet($db) { parent::__construct($db); $this->numero = 400; $this->family = "projects"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Gestion des projets"; // Possible values for version are: 'development', 'experimental', 'dolibarr' or version $this->version = 'dolibarr'; $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 0; $this->config_page_url = array("project.php"); $this->picto = 'project'; // Data directories to create when module is enabled $this->dirs = array("/projet/temp"); // Dependancies $this->depends = array(); $this->requiredby = array(); // Constants $this->const = array(); $r = 0; $this->const[$r][0] = "PROJECT_ADDON_PDF"; $this->const[$r][1] = "chaine"; $this->const[$r][2] = "baleine"; $this->const[$r][3] = 'Nom du gestionnaire de generation des projets en PDF'; $this->const[$r][4] = 0; $r++; $this->const[$r][0] = "PROJECT_ADDON"; $this->const[$r][1] = "chaine"; $this->const[$r][2] = "mod_project_simple"; $this->const[$r][3] = 'Nom du gestionnaire de numerotation des projets'; $this->const[$r][4] = 0; $r++; // Boxes $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'projet'; $r = 0; $r++; $this->rights[$r][0] = 41; // id de la permission $this->rights[$r][1] = "Lire les projets et taches (partagés ou dont je suis contact)"; // libelle de la permission $this->rights[$r][2] = 'r'; // type de la permission (deprecie a ce jour) $this->rights[$r][3] = 1; // La permission est-elle une permission par defaut $this->rights[$r][4] = 'lire'; $r++; $this->rights[$r][0] = 42; // id de la permission $this->rights[$r][1] = "Creer/modifier les projets et taches (partagés ou dont je suis contact)"; // libelle de la permission $this->rights[$r][2] = 'w'; // type de la permission (deprecie a ce jour) $this->rights[$r][3] = 0; // La permission est-elle une permission par defaut $this->rights[$r][4] = 'creer'; $r++; $this->rights[$r][0] = 44; // id de la permission $this->rights[$r][1] = "Supprimer les projets et taches (partagés ou dont je suis contact)"; // libelle de la permission $this->rights[$r][2] = 'd'; // type de la permission (deprecie a ce jour) $this->rights[$r][3] = 0; // La permission est-elle une permission par defaut $this->rights[$r][4] = 'supprimer'; $r++; $this->rights[$r][0] = 141; // id de la permission $this->rights[$r][1] = "Lire tous les projets et taches (y compris prives qui ne me sont pas affectes)"; // libelle de la permission $this->rights[$r][2] = 'r'; // type de la permission (deprecie a ce jour) $this->rights[$r][3] = 0; // La permission est-elle une permission par defaut $this->rights[$r][4] = 'all'; $this->rights[$r][5] = 'lire'; $r++; $this->rights[$r][0] = 142; // id de la permission $this->rights[$r][1] = "Creer/modifier tous les projets et taches (y compris prives qui ne me sont pas affectes)"; // libelle de la permission $this->rights[$r][2] = 'w'; // type de la permission (deprecie a ce jour) $this->rights[$r][3] = 0; // La permission est-elle une permission par defaut $this->rights[$r][4] = 'all'; $this->rights[$r][5] = 'creer'; $r++; $this->rights[$r][0] = 144; // id de la permission $this->rights[$r][1] = "Supprimer tous les projets et taches (y compris prives qui ne me sont pas affectes)"; // libelle de la permission $this->rights[$r][2] = 'd'; // type de la permission (deprecie a ce jour) $this->rights[$r][3] = 0; // La permission est-elle une permission par defaut $this->rights[$r][4] = 'all'; $this->rights[$r][5] = 'supprimer'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modMailing($db) { parent::__construct($db); $this->numero = 22; $this->family = "technic"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Gestion des EMailings"; $this->version = 'speedealing'; // 'experimental' or 'speedealing' or version $this->special = 0; $this->picto = 'email'; // Data directories to create when module is enabled $this->dirs = array("/mailing/temp"); // Dependances $this->depends = array(); $this->requiredby = array(); $this->langfiles = array("mails"); // Config pages $this->config_page_url = array("mailing.php"); // Constantes $this->const = array(); // Boites $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'mailing'; $r = 0; $this->rights[$r]->id = 221; // id de la permission $this->rights[$r]->desc = 'Consulter les mailings'; // libelle de la permission $this->rights[$r]->default = 1; // La permission est-elle une permission par defaut $this->rights[$r]->perm = array('lire'); $r++; $this->rights[$r]->id = 222; $this->rights[$r]->desc = 'Creer/modifier les mailings (sujet, destinataires...)'; $this->rights[$r]->default = 0; $this->rights[$r]->perm = array('creer'); $r++; $this->rights[$r]->id = 223; $this->rights[$r]->desc = 'Valider les mailings (permet leur envoi)'; $this->rights[$r]->default = 0; $this->rights[$r]->perm = array('valider'); $r++; $this->rights[$r]->id = 229; $this->rights[$r]->desc = 'Supprimer les mailings)'; $this->rights[$r]->default = 0; $this->rights[$r]->perm = array('supprimer'); $r++; $this->rights[$r]->id = 237; $this->rights[$r]->desc = 'View recipients and info'; $this->rights[$r]->default = 0; $this->rights[$r]->perm = array('mailing_advance', 'recipient'); $r++; $this->rights[$r]->id = 238; $this->rights[$r]->desc = 'Manually send mailings'; $this->rights[$r]->default = 0; $this->rights[$r]->perm = array('mailing_advance', 'send'); $r++; $this->rights[$r]->id = 239; $this->rights[$r]->desc = 'Delete mailings after validation and/or sent'; $this->rights[$r]->default = 0; $this->rights[$r]->perm = array('mailing_advance', 'delete'); $this->menu = array(); // List of menus to add $r = 0; $this->menus[$r]->_id = "menu:tools"; $this->menus[$r]->type = "top"; $this->menus[$r]->position = 8; $this->menus[$r]->url = "/core/tools.php"; $this->menus[$r]->langs = "other"; $this->menus[$r]->perms = '$user->rights->mailing->lire || $user->rights->export->lire || $user->rights->import->run'; $this->menus[$r]->enabled = '$conf->Mailing->enabled || $conf->Export->enabled || $conf->Import->enabled'; $this->menus[$r]->usertype = 2; $this->menus[$r]->title = "Tools"; $r++; $this->menus[$r]->_id = "menu:emailings"; $this->menus[$r]->position = 1; $this->menus[$r]->url = "/comm/mailing/index.php"; $this->menus[$r]->langs = "mails"; $this->menus[$r]->perms = '$user->rights->mailing->lire'; $this->menus[$r]->enabled = '$conf->Mailing->enabled'; $this->menus[$r]->usertype = 2; $this->menus[$r]->title = "EMailings"; $this->menus[$r]->fk_menu = "menu:tools"; $r++; $this->menus[$r]->_id = "menu:newmailing"; $this->menus[$r]->position = 1; $this->menus[$r]->url = "/comm/mailing/fiche.php?action=create"; $this->menus[$r]->langs = "mails"; $this->menus[$r]->perms = '$user->rights->mailing->creer'; $this->menus[$r]->enabled = '$conf->Mailing->enabled'; $this->menus[$r]->usertype = 2; $this->menus[$r]->title = "NewMailing"; $this->menus[$r]->fk_menu = "menu:emailings"; $r++; $this->menus[$r]->_id = "menu:list17"; $this->menus[$r]->position = 2; $this->menus[$r]->url = "/comm/mailing/liste.php"; $this->menus[$r]->langs = "mails"; $this->menus[$r]->perms = '$user->rights->mailing->lire'; $this->menus[$r]->enabled = '$conf->Mailing->enabled'; $this->menus[$r]->usertype = 2; $this->menus[$r]->title = "List"; $this->menus[$r]->fk_menu = "menu:emailings"; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modCommande($db) { global $conf; parent::__construct($db); $this->numero = 25; $this->family = "crm"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Gestion des commandes clients"; // Possible values for version are: 'development', 'experimental', 'dolibarr' or version $this->version = 'dolibarr'; $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 0; $this->picto = 'order'; // Data directories to create when module is enabled $this->dirs = array("/commande/temp"); // Config pages $this->config_page_url = array("commande.php"); // Dependancies $this->depends = array("modSociete"); $this->requiredby = array("modExpedition"); $this->conflictwith = array(); $this->langfiles = array("orders", "bills", "companies", "products"); // Constantes $this->const = array(); $r = 0; $this->const[$r][0] = "COMMANDE_ADDON_PDF"; $this->const[$r][1] = "chaine"; $this->const[$r][2] = "einstein"; $this->const[$r][3] = 'Nom du gestionnaire de generation des commandes en PDF'; $this->const[$r][4] = 0; $r++; $this->const[$r][0] = "COMMANDE_ADDON"; $this->const[$r][1] = "chaine"; $this->const[$r][2] = "mod_commande_marbre"; $this->const[$r][3] = 'Nom du gestionnaire de numerotation des commandes'; $this->const[$r][4] = 0; $r++; $this->const[$r][0] = "COMMANDE_ADDON_PDF_ODT_PATH"; $this->const[$r][1] = "chaine"; $this->const[$r][2] = "DOL_DATA_ROOT/doctemplates/orders"; $this->const[$r][3] = ""; $this->const[$r][4] = 0; // Boites $this->boxes = array(); $this->boxes[0][1] = "box_commandes.php"; // Permissions $this->rights = array(); $this->rights_class = 'commande'; $r = 0; $r++; $this->rights[$r][0] = 81; $this->rights[$r][1] = 'Lire les commandes clients'; $this->rights[$r][2] = 'r'; $this->rights[$r][3] = 1; $this->rights[$r][4] = 'lire'; $r++; $this->rights[$r][0] = 82; $this->rights[$r][1] = 'Creer/modifier les commandes clients'; $this->rights[$r][2] = 'w'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'creer'; $r++; $this->rights[$r][0] = 84; $this->rights[$r][1] = 'Valider les commandes clients'; $this->rights[$r][2] = 'd'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'valider'; $r++; $this->rights[$r][0] = 86; $this->rights[$r][1] = 'Envoyer les commandes clients'; $this->rights[$r][2] = 'd'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'order_advance'; $this->rights[$r][5] = 'send'; $r++; $this->rights[$r][0] = 87; $this->rights[$r][1] = 'Cloturer les commandes clients'; $this->rights[$r][2] = 'd'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'cloturer'; $r++; $this->rights[$r][0] = 88; $this->rights[$r][1] = 'Annuler les commandes clients'; $this->rights[$r][2] = 'd'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'annuler'; $r++; $this->rights[$r][0] = 89; $this->rights[$r][1] = 'Supprimer les commandes clients'; $this->rights[$r][2] = 'd'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'supprimer'; $r++; $this->rights[$r][0] = 1421; $this->rights[$r][1] = 'Exporter les commandes clients et attributs'; $this->rights[$r][2] = 'r'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'commande'; $this->rights[$r][5] = 'export'; // Exports //-------- $r = 0; $r++; $this->export_code[$r] = $this->rights_class . '_' . $r; $this->export_label[$r] = 'CustomersOrdersAndOrdersLines'; // Translation key (used only if key ExportDataset_xxx_z not found) $this->export_permission[$r] = array(array("commande", "commande", "export")); $this->export_fields_array[$r] = array('s.rowid' => "IdCompany", 's.nom' => 'CompanyName', 's.address' => 'Address', 's.cp' => 'Zip', 's.ville' => 'Town', 's.fk_pays' => 'Country', 's.tel' => 'Phone', 's.siren' => 'ProfId1', 's.siret' => 'ProfId2', 's.ape' => 'ProfId3', 's.idprof4' => 'ProfId4', 'c.rowid' => "Id", 'c.ref' => "Ref", 'c.ref_client' => "RefClient", 'c.fk_soc' => "IdCompany", 'c.date_creation' => "DateCreation", 'c.date_commande' => "DateOrder", 'c.amount_ht' => "Amount", 'c.remise_percent' => "GlobalDiscount", 'c.total_ht' => "TotalHT", 'c.total_ttc' => "TotalTTC", 'c.facture' => "OrderShortStatusInvoicee", 'c.fk_statut' => 'Status', 'c.note' => "Note", 'c.date_livraison' => 'DeliveryDate', 'cd.rowid' => 'LineId', 'cd.description' => "LineDescription", 'cd.product_type' => 'TypeOfLineServiceOrProduct', 'cd.tva_tx' => "LineVATRate", 'cd.qty' => "LineQty", 'cd.total_ht' => "LineTotalHT", 'cd.total_tva' => "LineTotalVAT", 'cd.total_ttc' => "LineTotalTTC", 'p.rowid' => 'ProductId', 'p.ref' => 'ProductRef', 'p.label' => 'Label'); $this->export_entities_array[$r] = array('s.rowid' => "company", 's.nom' => 'company', 's.address' => 'company', 's.cp' => 'company', 's.ville' => 'company', 's.fk_pays' => 'company', 's.tel' => 'company', 's.siren' => 'company', 's.ape' => 'company', 's.idprof4' => 'company', 's.siret' => 'company', 'c.rowid' => "order", 'c.ref' => "order", 'c.ref_client' => "order", 'c.fk_soc' => "order", 'c.date_creation' => "order", 'c.date_commande' => "order", 'c.amount_ht' => "order", 'c.remise_percent' => "order", 'c.total_ht' => "order", 'c.total_ttc' => "order", 'c.facture' => "order", 'c.fk_statut' => "order", 'c.note' => "order", 'c.date_livraison' => "order", 'cd.rowid' => 'order_line', 'cd.description' => "order_line", 'cd.product_type' => 'order_line', 'cd.tva_tx' => "order_line", 'cd.qty' => "order_line", 'cd.total_ht' => "order_line", 'cd.total_tva' => "order_line", 'cd.total_ttc' => "order_line", 'p.rowid' => 'product', 'p.ref' => 'product', 'p.label' => 'product'); $this->export_sql_start[$r] = 'SELECT DISTINCT '; $this->export_sql_end[$r] = ' FROM (' . MAIN_DB_PREFIX . 'commande as c, ' . MAIN_DB_PREFIX . 'societe as s, ' . MAIN_DB_PREFIX . 'commandedet as cd)'; $this->export_sql_end[$r] .= ' LEFT JOIN ' . MAIN_DB_PREFIX . 'product as p on (cd.fk_product = p.rowid)'; $this->export_sql_end[$r] .= ' WHERE c.fk_soc = s.rowid AND c.rowid = cd.fk_commande'; $this->export_sql_end[$r] .= ' AND c.entity = ' . $conf->entity; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modContrat($db) { parent::__construct($db); $this->numero = 54; $this->family = "crm"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Gestion des contrats de services"; // Possible values for version are: 'development', 'experimental', 'dolibarr' or version $this->version = 'dolibarr'; $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 0; $this->picto = 'contract'; // Data directories to create when module is enabled $this->dirs = array("/contracts/temp"); // Dependances $this->depends = array("modSociete", "modService"); $this->requiredby = array(); // Config pages $this->config_page_url = array("contract.php@contrat"); // Constantes $this->const = array(); $this->const[0][0] = "CONTRACT_ADDON"; $this->const[0][1] = "chaine"; $this->const[0][2] = "mod_contract_serpis"; $this->const[0][3] = 'Nom du gestionnaire de numerotation des contrats'; $this->const[0][4] = 0; $this->const[1] = array("CONTRAT_ADDON_PDF_ODT_PATH", "chaine", "DOL_DATA_ROOT/doctemplates/contracts", "Directory models"); // Boxes $this->boxes = array(); $this->boxes[0][1] = "box_contracts.php"; $this->boxes[1][1] = "box_services_expired.php"; // Permissions $this->rights = array(); $this->rights_class = 'contrat'; $this->rights[1][0] = 161; $this->rights[1][1] = 'Lire les contrats'; $this->rights[1][2] = 'r'; $this->rights[1][3] = 1; $this->rights[1][4] = 'lire'; $this->rights[2][0] = 162; $this->rights[2][1] = 'Creer / modifier les contrats'; $this->rights[2][2] = 'w'; $this->rights[2][3] = 0; $this->rights[2][4] = 'creer'; $this->rights[3][0] = 163; $this->rights[3][1] = 'Activer un service d\'un contrat'; $this->rights[3][2] = 'w'; $this->rights[3][3] = 0; $this->rights[3][4] = 'activer'; $this->rights[4][0] = 164; $this->rights[4][1] = 'Desactiver un service d\'un contrat'; $this->rights[4][2] = 'w'; $this->rights[4][3] = 0; $this->rights[4][4] = 'desactiver'; $this->rights[5][0] = 165; $this->rights[5][1] = 'Supprimer un contrat'; $this->rights[5][2] = 'd'; $this->rights[5][3] = 0; $this->rights[5][4] = 'supprimer'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $DB Database handler */ function modDeplacement($DB) { global $conf; parent::__construct($DB); $this->numero = 75; $this->family = "financial"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Gestion des notes de frais et deplacements"; // Si traduction Module75Desc non trouvee // Possible values for version are: 'development', 'experimental', 'dolibarr' or version $this->version = 'dolibarr'; $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 0; $this->picto = "trip"; // Data directories to create when module is enabled $this->dirs = array(); // Config pages $this->config_page_url = array(); $this->langfiles = array("companies", "trips"); // Dependancies $this->depends = array(); $this->requiredby = array(); // Constants $this->const = array(); // Boxes $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'deplacement'; $this->rights[1][0] = 171; $this->rights[1][1] = 'Lire les deplacements'; $this->rights[1][2] = 'r'; $this->rights[1][3] = 1; $this->rights[1][4] = 'lire'; $this->rights[2][0] = 172; $this->rights[2][1] = 'Creer/modifier les deplacements'; $this->rights[2][2] = 'w'; $this->rights[2][3] = 0; $this->rights[2][4] = 'creer'; $this->rights[3][0] = 173; $this->rights[3][1] = 'Supprimer les deplacements'; $this->rights[3][2] = 'd'; $this->rights[3][3] = 0; $this->rights[3][4] = 'supprimer'; /* $this->rights[4][0] = 174; $this->rights[4][1] = 'Bloquer les deplacements'; $this->rights[4][2] = 'a'; $this->rights[4][3] = 0; $this->rights[4][4] = 'valider'; $this->rights[5][0] = 175; $this->rights[5][1] = 'Debloquer les deplacements'; $this->rights[5][2] = 'a'; $this->rights[5][3] = 0; $this->rights[5][4] = 'unvalidate'; */ $this->rights[6][0] = 178; $this->rights[6][1] = 'Exporter les deplacements'; $this->rights[6][2] = 'd'; $this->rights[6][3] = 0; $this->rights[6][4] = 'export'; // Exports $r = 0; $r++; $this->export_code[$r] = 'trips_' . $r; $this->export_label[$r] = 'ListTripsAndExpenses'; $this->export_permission[$r] = array(array("deplacement", "export")); $this->export_fields_array[$r] = array('u.login' => 'Login', 'u.name' => 'Lastname', 'u.firstname' => 'Firstname', 'd.rowid' => "TripId", 'd.type' => "Type", 'd.km' => "FeesKilometersOrAmout", 'd.dated' => "Date", 'd.note' => 'NotePrivate', 'd.note_public' => 'NotePublic', 's.nom' => 'ThirdParty'); $this->export_entities_array[$r] = array('u.login' => 'user', 'u.name' => 'user', 'u.firstname' => 'user', 'd.rowid' => "trip", 'd.type' => "trip", 'd.km' => "trip", 'd.dated' => "trip", 'd.note' => 'trip', 'd.note_public' => 'trip', 's.nom' => 'company'); $this->export_sql_start[$r] = 'SELECT DISTINCT '; $this->export_sql_end[$r] = ' FROM ' . MAIN_DB_PREFIX . 'user as u'; $this->export_sql_end[$r] .= ', ' . MAIN_DB_PREFIX . 'deplacement as d'; $this->export_sql_end[$r] .= ' LEFT JOIN ' . MAIN_DB_PREFIX . 'societe as s ON d.fk_soc = s.rowid'; $this->export_sql_end[$r] .= ' WHERE d.fk_user = u.rowid'; $this->export_sql_end[$r] .= ' AND d.entity = ' . $conf->entity; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modFTP($db) { parent::__construct($db); // Id for module (must be unique). // Use here a free id. $this->numero = 2800; // Family can be 'crm','financial','hr','projects','product','ecm','technic','other' // It is used to sort modules in module setup page $this->family = "other"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); // Module description used if translation string 'ModuleXXXDesc' not found (XXX is id value) $this->description = "FTP Client"; // Possible values for version are: 'development', 'experimental', 'dolibarr' or version $this->version = 'dolibarr'; // Key used in llx_const table to save module status enabled/disabled (XXX is id value) $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); // Where to store the module in setup page (0=common,1=interface,2=others,3=very specific) $this->special = 1; // Name of png file (without png) used for this module $this->picto = 'dir'; // Data directories to create when module is enabled $this->dirs = array("/ftp/temp"); // Langs file within the module $this->langfiles = array("ftp"); // Config pages. Put here list of php page names stored in admmin directory used to setup module $this->config_page_url = array('ftpclient.php@ftp'); // Dependencies $this->depends = array(); // List of modules id that must be enabled if this module is enabled $this->requiredby = array(); // List of modules id to disable if this one is disabled // Constants $this->const = array(); // List of parameters // Boxes $this->boxes = array(); // List of boxes $r = 0; // Add here list of php file(s) stored in core/boxes that contains class to show a box. // Example: //$this->boxes[$r][1] = "myboxa.php"; //$r++; //$this->boxes[$r][1] = "myboxb.php"; //$r++; // Permissions $this->rights_class = 'ftp'; // Permission key $this->rights = array(); // Permission array used by this module $r++; $this->rights[$r][0] = 2801; $this->rights[$r][1] = 'Use FTP client in read mode (browse and download only)'; $this->rights[$r][2] = 'r'; $this->rights[$r][3] = 1; $this->rights[$r][4] = 'read'; $r++; $this->rights[$r][0] = 2802; $this->rights[$r][1] = 'Use FTP client in write mode (delete or upload files)'; $this->rights[$r][2] = 'w'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'write'; // Menus //------ $this->menus = array(); // List of menus to add $r = 0; // Top menu $this->menu[$r] = array('fk_menu' => 0, 'type' => 'top', 'titre' => 'FTP', 'mainmenu' => 'ftp', 'url' => '/ftp/index.php', 'langs' => 'ftp', 'position' => 100, 'enabled' => '$conf->ftp->enabled', 'perms' => '$user->rights->ftp->read || $user->rights->ftp->write || $user->rights->ftp->setup', 'target' => '', 'user' => 2); // 0=Menu for internal users, 1=external users, 2=both $r++; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modAccounting($db) { global $conf; parent::__construct($db); $this->numero = 50400; $this->family = "financial"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Gestion complete de comptabilite (doubles parties)"; // Possible values for version are: 'development', 'experimental', 'dolibarr' or version //$this->version = 'dolibarr'; $this->version = "development"; $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 0; // Config pages $this->config_page_url = array("accounting.php"); // Dependancies $this->depends = array("modFacture", "modBanque", "modTax"); $this->requiredby = array(); $this->conflictwith = array("modComptabilite"); $this->langfiles = array("compta"); // Constants $this->const = array(0 => array('MAIN_COMPANY_CODE_ALWAYS_REQUIRED', 'chaine', '1', 'With this constants on, third party code is always required whatever is numbering module behaviour', 0, 'current', 1), 1 => array('MAIN_BANK_ACCOUNTANCY_CODE_ALWAYS_REQUIRED', 'chaine', '1', 'With this constants on, bank account number is always required', 0, 'current', 1)); // List of particular constants to add when module is enabled // Data directories to create when module is enabled $this->dirs = array("/accounting/temp"); // Boxes $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'accounting'; $this->rights[1][0] = 50401; $this->rights[1][1] = 'Lire le plan de compte'; $this->rights[1][2] = 'r'; $this->rights[1][3] = 1; $this->rights[1][4] = 'plancompte'; $this->rights[1][5] = 'lire'; $this->rights[2][0] = 50402; $this->rights[2][1] = 'Creer/modifier un plan de compte'; $this->rights[2][2] = 'w'; $this->rights[2][3] = 0; $this->rights[2][4] = 'plancompte'; $this->rights[2][5] = 'creer'; $this->rights[3][0] = 50403; $this->rights[3][1] = 'Cloturer plan de compte'; $this->rights[3][2] = 'w'; $this->rights[3][3] = 0; $this->rights[3][4] = 'plancompte'; $this->rights[3][5] = 'cloturer'; $this->rights[4][0] = 50411; $this->rights[4][1] = 'Lire les mouvements comptables'; $this->rights[4][2] = 'r'; $this->rights[4][3] = 1; $this->rights[4][4] = 'mouvements'; $this->rights[4][5] = 'lire'; $this->rights[5][0] = 50412; $this->rights[5][1] = 'Creer/modifier/annuler les mouvements comptables'; $this->rights[5][2] = 'w'; $this->rights[5][3] = 0; $this->rights[5][4] = 'mouvements'; $this->rights[5][5] = 'creer'; $this->rights[6][0] = 50415; $this->rights[6][1] = 'Lire CA, bilans, resultats, journaux, grands livres'; $this->rights[6][2] = 'r'; $this->rights[6][3] = 0; $this->rights[6][4] = 'comptarapport'; $this->rights[6][5] = 'lire'; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modFicheinter($db) { global $conf; parent::__construct($db); $this->numero = 70; $this->family = "crm"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); $this->description = "Gestion des fiches d'intervention"; // Possible values for version are: 'development', 'experimental', 'dolibarr' or version $this->version = 'dolibarr'; $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); $this->special = 0; $this->picto = "intervention"; // Data directories to create when module is enabled $this->dirs = array("/ficheinter/temp"); // Dependencies $this->depends = array("modSociete"); $this->requiredby = array(); $this->conflictwith = array(); $this->langfiles = array("bills", "companies", "interventions"); // Config pages $this->config_page_url = array("fichinter.php"); // Constantes $this->const = array(); $r = 0; $this->const[$r][0] = "FICHEINTER_ADDON_PDF"; $this->const[$r][1] = "chaine"; $this->const[$r][2] = "soleil"; $r++; $this->const[$r][0] = "FICHEINTER_ADDON"; $this->const[$r][1] = "chaine"; $this->const[$r][2] = "pacific"; $r++; // Boites $this->boxes = array(); // Permissions $this->rights = array(); $this->rights_class = 'ficheinter'; $r = 0; $r++; $this->rights[$r][0] = 61; $this->rights[$r][1] = 'Lire les fiches d\'intervention'; $this->rights[$r][2] = 'r'; $this->rights[$r][3] = 1; $this->rights[$r][4] = 'lire'; $r++; $this->rights[$r][0] = 62; $this->rights[$r][1] = 'Creer/modifier les fiches d\'intervention'; $this->rights[$r][2] = 'w'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'creer'; $r++; $this->rights[$r][0] = 64; $this->rights[$r][1] = 'Supprimer les fiches d\'intervention'; $this->rights[$r][2] = 'd'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'supprimer'; $r++; $this->rights[$r][0] = 67; $this->rights[$r][1] = 'Exporter les fiches interventions'; $this->rights[$r][2] = 'r'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'export'; $r++; $this->rights[$r][0] = 68; $this->rights[$r][1] = 'Envoyer les fiches d\'intervention par courriel'; $this->rights[$r][2] = 'r'; $this->rights[$r][3] = 0; $this->rights[$r][4] = 'ficheinter_advance'; // Visible if option MAIN_USE_ADVANCED_PERMS is on $this->rights[$r][5] = 'send'; //Exports //-------- $r = 1; $this->export_code[$r] = $this->rights_class . '_' . $r; $this->export_label[$r] = 'InterventionCardsAndInterventionLines'; // Translation key (used only if key ExportDataset_xxx_z not found) $this->export_permission[$r] = array(array("ficheinter", "export")); $this->export_fields_array[$r] = array('s.rowid' => "IdCompany", 's.nom' => 'CompanyName', 's.address' => 'Address', 's.cp' => 'Zip', 's.ville' => 'Town', 's.fk_pays' => 'Country', 's.tel' => 'Phone', 's.siren' => 'ProfId1', 's.siret' => 'ProfId2', 's.ape' => 'ProfId3', 's.idprof4' => 'ProfId4', 's.code_compta' => 'CustomerAccountancyCode', 's.code_compta_fournisseur' => 'SupplierAccountancyCode', 'f.rowid' => "InterId", 'f.ref' => "InterRef", 'f.datec' => "InterDateCreation", 'f.duree' => "InterDuration", 'f.fk_statut' => 'InterStatus', 'f.description' => "InterNote", 'fd.rowid' => 'InterLineId', 'fd.date' => "InterLineDate", 'fd.duree' => "InterLineDuration", 'fd.description' => "InterLineDesc"); $this->export_entities_array[$r] = array('s.rowid' => "company", 's.nom' => 'company', 's.address' => 'company', 's.cp' => 'company', 's.ville' => 'company', 's.fk_pays' => 'company', 's.tel' => 'company', 's.siren' => 'company', 's.siret' => 'company', 's.ape' => 'company', 's.idprof4' => 'company', 's.code_compta' => 'company', 's.code_compta_fournisseur' => 'company', 'f.rowid' => "intervention", 'f.ref' => "intervention", 'f.datec' => "intervention", 'f.duree' => "intervention", 'f.fk_statut' => "intervention", 'f.description' => "intervention", 'fd.rowid' => "inter_line", 'fd.date' => "inter_line", 'fd.duree' => 'inter_line', 'fd.description' => 'inter_line'); $this->export_sql_start[$r] = 'SELECT DISTINCT '; $this->export_sql_end[$r] = ' FROM (' . MAIN_DB_PREFIX . 'fichinter as f, ' . MAIN_DB_PREFIX . 'fichinterdet as fd, ' . MAIN_DB_PREFIX . 'societe as s)'; $this->export_sql_end[$r] .= ' WHERE f.fk_soc = s.rowid AND f.rowid = fd.fk_fichinter'; $this->export_sql_end[$r] .= ' AND f.entity = ' . $conf->entity; $r++; }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function __construct($db) { parent::__construct($db); // Id for module (must be unique). // Use here a free id (See in Home -> System information -> Dolibarr for list of used modules id). $this->numero = 6000; // Key text used to identify module (for permissions, menus, etc...) $this->rights_class = 'workflow'; $this->family = "technic"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); // Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module) $this->description = "Workflow management"; // Possible values for version are: 'development', 'experimental', 'dolibarr' or version $this->version = 'dolibarr'; // Key used in llx_const table to save module status enabled/disabled (where MYMODULE is value of property name of module in uppercase) $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); // Where to store the module in setup page (0=common,1=interface,2=others,3=very specific) $this->special = 2; // Name of png file (without png) used for this module. // If file is in theme/yourtheme/img directory under name object_pictovalue.png, use this->picto='pictovalue' // If file is in module/img directory under name object_pictovalue.png, use this->picto='pictovalue@module' $this->picto = 'technic'; // Data directories to create when module is enabled $this->dirs = array("/workflow/temp"); // Config pages. Put here list of php page names stored in admmin directory used to setup module. $this->config_page_url = array('workflow.php'); // Dependencies $this->depends = array(); // List of modules id that must be enabled if this module is enabled $this->requiredby = array(); // List of modules id to disable if this one is disabled $this->phpmin = array(5, 2); // Minimum version of PHP required by module $this->need_dolibarr_version = array(2, 8); // Minimum version of Dolibarr required by module $this->langfiles = array("@workflow"); // Constants // List of particular constants to add when module is enabled //Example: $this->const=array(0=>array('MODULE_MY_NEW_CONST1','chaine','myvalue','This is a constant to add',0), // 1=>array('MODULE_MY_NEW_CONST2','chaine','myvalue','This is another constant to add',0) ); $this->const = array(); // Boxes $this->boxes = array(); //$this->boxes[0][1] = "box_workflow@workflow"; // Permissions $this->rights = array(); $r = 0; /* $r++; $this->rights[$r][0] = 6001; // id de la permission $this->rights[$r][1] = "Lire les workflow"; // libelle de la permission $this->rights[$r][2] = 'r'; // type de la permission (deprecie a ce jour) $this->rights[$r][3] = 1; // La permission est-elle une permission par defaut $this->rights[$r][4] = 'read'; */ // Main menu entries $this->menus = array(); // List of menus to add $r = 0; /* $this->menu[$r]=array('fk_menu'=>0, 'type'=>'top', 'titre'=>'Workflow', 'mainmenu'=>'workflow', 'url'=>'/workflow/index.php', 'langs'=>'@workflow', 'position'=>100, 'perms'=>'$user->rights->workflow->read', 'enabled'=>'$conf->workflow->enabled', 'target'=>'', 'user'=>0); $r++; $this->menu[$r]=array( 'fk_menu'=>'r=0', 'type'=>'left', 'titre'=>'Workflow', 'mainmenu'=>'workflow', 'url'=>'/workflow/index.php', 'langs'=>'@workflow', 'position'=>101, 'enabled'=>1, 'perms'=>'$user->rights->workflow->read', 'target'=>'', 'user'=>0); $r++; */ }
/** * Constructor. Define names, constants, directories, boxes, permissions * * @param DoliDB $db Database handler */ function modECM($db) { parent::__construct($db); // Id for module (must be unique). // Use here a free id. $this->numero = 2500; // Family can be 'crm','financial','hr','projects','product','ecm','technic','other' // It is used to sort modules in module setup page $this->family = "ecm"; // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module) $this->name = preg_replace('/^mod/i', '', get_class($this)); // Module description used if translation string 'ModuleXXXDesc' not found (XXX is id value) $this->description = "Electronic Content Management"; // Possible values for version are: 'development', 'experimental', 'dolibarr' or version $this->version = 'dolibarr'; // Key used in llx_const table to save module status enabled/disabled (XXX is id value) $this->const_name = 'MAIN_MODULE_' . strtoupper($this->name); // Where to store the module in setup page (0=common,1=interface,2=other) $this->special = 0; // Name of png file (without png) used for this module $this->picto = 'dir'; // Data directories to create when module is enabled $this->dirs = array("/ecm/temp"); // Config pages. Put here list of php page names stored in admmin directory used to setup module $this->config_page_url = array(); // Dependencies $this->depends = array(); // List of modules id that must be enabled if this module is enabled $this->requiredby = array(); // List of modules id to disable if this one is disabled // Constants $this->const = array(); // List of parameters // Boxes $this->boxes = array(); // List of boxes $r = 0; // Add here list of php file(s) stored in core/boxes that contains class to show a box. // Example: //$this->boxes[$r][1] = "myboxa.php"; //$r++; //$this->boxes[$r][1] = "myboxb.php"; //$r++; // Permissions $this->rights_class = 'ecm'; // Permission key $this->rights = array(); // Permission array used by this module $r++; $this->rights[$r][0] = 2501; $this->rights[$r][1] = 'Consulter/Télécharger les documents'; $this->rights[$r][2] = 'r'; $this->rights[$r][3] = 1; $this->rights[$r][4] = 'read'; $r++; $this->rights[$r][0] = 2503; $this->rights[$r][1] = 'Soumettre ou supprimer des documents'; $this->rights[$r][2] = 'w'; $this->rights[$r][3] = 1; $this->rights[$r][4] = 'upload'; $r++; $this->rights[$r][0] = 2515; $this->rights[$r][1] = 'Administrer les rubriques de documents'; $this->rights[$r][2] = 'w'; $this->rights[$r][3] = 1; $this->rights[$r][4] = 'setup'; // Menus //------ $this->menus = array(); // List of menus to add $r = 0; // Top menu $this->menu[$r] = array('fk_menu' => 0, 'type' => 'top', 'titre' => 'MenuECM', 'mainmenu' => 'ecm', 'url' => '/ecm/index.php', 'langs' => 'ecm', 'position' => 100, 'perms' => '$user->rights->ecm->read || $user->rights->ecm->upload || $user->rights->ecm->setup', 'enabled' => '$conf->ecm->enabled', 'target' => '', 'user' => 2); // 0=Menu for internal users, 1=external users, 2=both $r++; // Left menu linked to top menu $this->menu[$r] = array('fk_menu' => 'r=0', 'type' => 'left', 'titre' => 'ECMArea', 'mainmenu' => 'ecm', 'url' => '/ecm/index.php', 'langs' => 'ecm', 'position' => 101, 'perms' => '$user->rights->ecm->read || $user->rights->ecm->upload', 'enabled' => '$user->rights->ecm->read || $user->rights->ecm->upload', 'target' => '', 'user' => 2); // 0=Menu for internal users, 1=external users, 2=both $r++; $this->menu[$r] = array('fk_menu' => 'r=1', 'type' => 'left', 'titre' => 'ECMNewSection', 'mainmenu' => 'ecm', 'url' => '/ecm/docdir.php?action=create', 'langs' => 'ecm', 'position' => 100, 'perms' => '$user->rights->ecm->setup', 'enabled' => '$user->rights->ecm->setup', 'target' => '', 'user' => 2); // 0=Menu for internal users, 1=external users, 2=both $r++; $this->menu[$r] = array('fk_menu' => 'r=1', 'type' => 'left', 'titre' => 'ECMFileManager', 'mainmenu' => 'ecm', 'url' => '/ecm/index.php?action=file_manager', 'langs' => 'ecm', 'position' => 102, 'perms' => '$user->rights->ecm->read || $user->rights->ecm->upload', 'enabled' => '$user->rights->ecm->read || $user->rights->ecm->upload', 'target' => '', 'user' => 2); // 0=Menu for internal users, 1=external users, 2=both $r++; $this->menu[$r] = array('fk_menu' => 'r=1', 'type' => 'left', 'titre' => 'Search', 'mainmenu' => 'ecm', 'url' => '/ecm/search.php', 'langs' => 'ecm', 'position' => 103, 'perms' => '$user->rights->ecm->read', 'enabled' => '$user->rights->ecm->read', 'target' => '', 'user' => 2); // 0=Menu for internal users, 1=external users, 2=both $r++; }