diff --git a/ChangeLog b/ChangeLog index e1030fa18de..4ca56665cee 100644 --- a/ChangeLog +++ b/ChangeLog @@ -15,6 +15,8 @@ NEW Minimal PHP version is now PHP 7.0 instead of PHP 5.6 For developers or integrators: ------------------------------ +NEW Minimal PHP version is now PHP 7.0 instead of PHP 5.6 + ... @@ -25,6 +27,7 @@ Following changes may create regressions for some external modules, but were nec * Trigger ORDER_SUPPLIER_DISPATCH is removed, use ORDER_SUPPLIER_RECEIVE and/or LINEORDER_SUPPLIER_DISPATCH instead. + ***** ChangeLog for 16.0.0 compared to 15.0.0 ***** For users: @@ -49,28 +52,24 @@ NEW: ACE Editor is restored at same cursor position after a save. NEW: Add "addMoreActionsButtons" hook to subscription form NEW: Add an option in GUI to show a Quick add button into top menu bar NEW: Add a workflow to auto link contract on a ticket -NEW: Add column date of Signature on proposal list NEW: Add column template invoice in invoice list NEW: Add column "Total HT" to products array on document creation card NEW: Add configuration for text color of button action -NEW: Add entity filter in exports NEW: Show the event block on recurring invoices #20870 NEW: Add firstname, lastname and max number of attendees for module "Event Organization" NEW: Add margin info in proposal and order list -NEW: Add massaction "Edit Extrafield" for Product NEW: Add more fields to detect duplicate during import of thirdparties NEW: Add option to foce delivery on email for purchase order receipt to yes NEW: Add possibility to create contract from invoice NEW: Add possibility with constant MAIN_LOGIN_BADCHARUNAUTHORIZED to define bad character unauthorized into login name -NEW: Add private and public notes on tax files. +NEW: Add private and public notes on tax files NEW: Add substitutions "user numbers" -NEW: allow a ticket to be automatically marked as read when created from backend. NEW: allow cut&paste as real numeric value to excel NEW: A public form to send a message and create a lead is available NEW: automatically set totally received status in reception NEW: Auto set invoice paid when adding credit not and remain to pay is 0 +NEW: Backup tool has an "lowmemory" option for mysqldump on large database NEW: Can enter price with tax for predefined products on purchase objects -NEW: Can filter on a thirdparty on product statistics NEW: Can removed doc templates from setup page of thirdparty NEW: Can use ! to make a search that exclude a string NEW: clean values and amount in FEC import @@ -86,12 +85,13 @@ NEW: Dictionaries - Availibility dictionnary has a new column unit and number NEW: Display errors in a message box after generating documents NEW: Enhance the import. Can use 'auto' for the ref (import of orders) NEW: Events on Proposal to Return to Draft +NEW: Exports - add entity filter in exports NEW: Page to list expense report payments NEW: JS inventory autocalc input NEW: language support for more emailing target selectors NEW: leave requests: add field into type dictionary to block request if balance is negative NEW: Mass action "Close shipments" -NEW: Module BOM - add tabs for nets Bom +NEW: Module BOM - add tabs for nets BOM NEW: Module BOM - add the possibility to add sub-BOMs to BOM NEW: Module Recruitment - Add a public page with list of all open job positions. NEW: Module Recruitment - Add a tab with list of application on the jobposition file. @@ -105,14 +105,18 @@ NEW: Knowledge Management - add status "Obsolete" to KM articles NEW: MRP - split consumption line on MO NEW: MRP - display physical and virtual stock of the products when creating OF from a BOM NEW: MRP - display product ref in "Object link" product tab for BOM +NEW: Orders - support user_modif in order +NEW: Products - add massaction "Edit Extrafield" for Product +NEW: Products - List - add thumbnail field in product list +NEW: Products - Statistics - can filter on a thirdparty NEW: Projects - add filter "opportunity status" on statistics of projects. NEW: Proposals - option update prices on proposal cloning +NEW: Proposals - List - add column date of Signature on proposal list NEW: SEPA XML - option to place payment Type Info at Credit transfer Transaction level NEW: Stocks - stock filter in reassort lists NEW: Stocks - stock limit in stock export CSV NEW: Stocks - Inventory - can change value of AWP during the inventory NEW: Supplier order - Show ref supplier of reception in linked object block -NEW: support user_modif in order NEW: Surveys - Show number of votes into the label of tab "Results" of a survey NEW: TakePOS - barcode rule to insert product in TakePOS NEW: TakePOS - pagination on search results @@ -122,19 +126,18 @@ NEW: TakePOS - add constant to show category description NEW: TakePOS - add constant to show only the products in stock NEW: Themes - add param color button action NEW: Themes - Change in theme colors does not need to use the refresh button -NEW: Themes - more mode for THEME_TOPMENU_DISABLE_IMAGE (2, 3, ...) +NEW: Themes - more modes for THEME_TOPMENU_DISABLE_IMAGE (2, 3, ...) NEW: Themes - MD - add param border table for md theme -NEW: Third-Parties - Add rules "customer accountancy code" is mandatory to validate invoice -NEW: Third-Parties - Can set the parent company during the creation of thirdparty (action=add of societe/card.php) +NEW: Third-Parties - add rules "customer accountancy code" is mandatory to validate invoice +NEW: Third-Parties - can set the parent company during the creation of thirdparty (action=add of societe/card.php) +NEW: Tickets - allow a Ticket to be automatically marked as read when created from backend NEW: Tickets - create Third-party with contact if not found on public ticket NEW: Tickets - option to default check "notify tier at creation" NEW: Tickets - Trigger: allow to automatically send messages on new tickets NEW: Tickets - optional display warning icons on ticket list NEW: Websites Module - supports now the multicompany module NEW: Websites Module - on redirect of page in website module, GET parameters are kept. -NEW: The backup tools has an "lowmemory" option for mysqldump on large database NEW: The 'reposition' class works on ajax constantonoff that make redirects -NEW: thumbnail field in product list NEW: total mark rate in list NEW: uncheck "send message" by default on a ticket when private messages has been checked NEW: VAT Report by month - Show detail by rate and also by code @@ -142,8 +145,8 @@ NEW: Added MMK currency (Myanmar Kyat) NEW: On a form to send an email, we show all emails of contacts of object Modules state -NEW: Module Partnership Management -NEW: Module Event Organization Management +NEW: Module Partnership Management - stable +NEW: Module Event Organization Management - stable For developers or integrators: diff --git a/htdocs/adherents/agenda.php b/htdocs/adherents/agenda.php index ef1daf0b6c8..e13211fb239 100644 --- a/htdocs/adherents/agenda.php +++ b/htdocs/adherents/agenda.php @@ -21,24 +21,26 @@ */ /** - * \file htdocs/adherents/agenda.php - * \ingroup member - * \brief Page of members events + * \file htdocs/adherents/agenda.php + * \ingroup member + * \brief Page of members events */ // Load Dolibarr environment require '../main.inc.php'; -require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php'; require_once DOL_DOCUMENT_ROOT.'/adherents/class/adherent.class.php'; +require_once DOL_DOCUMENT_ROOT.'/adherents/class/adherent_type.class.php'; +require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/member.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php'; -require_once DOL_DOCUMENT_ROOT.'/adherents/class/adherent_type.class.php'; // Load translation files required by the page -$langs->loadLangs(array("companies", "members")); +$langs->loadLangs(array('companies', 'members')); +// Get Parameters $id = GETPOST('id', 'int') ?GETPOST('id', 'int') : GETPOST('rowid', 'int'); +// Pagination $limit = GETPOST('limit', 'int') ?GETPOST('limit', 'int') : $conf->liste_limit; $sortfield = GETPOST('sortfield', 'aZ09comma'); $sortorder = GETPOST('sortorder', 'aZ09comma'); @@ -72,6 +74,7 @@ $objcanvas = null; // Security check $result = restrictedArea($user, 'adherent', $id); +// Initialize technical objects $object = new Adherent($db); $result = $object->fetch($id); if ($result > 0) { @@ -116,9 +119,7 @@ $contactstatic = new Contact($db); $form = new Form($db); -/* - * Customer and/or supplier category sheet - */ + if ($object->id > 0) { require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'; require_once DOL_DOCUMENT_ROOT.'/societe/class/societe.class.php'; diff --git a/htdocs/admin/company.php b/htdocs/admin/company.php index f08333549a8..d6760ef45e8 100644 --- a/htdocs/admin/company.php +++ b/htdocs/admin/company.php @@ -479,11 +479,15 @@ if (isModEnabled('barcode')) { print ''; } -// Logo -print ''; -print '
'; +// Tooltip for both Logo and LogSquarred +$tooltiplogo = $langs->trans('AvailableFormats').' : png, jpg, jpeg'; $maxfilesizearray = getMaxFileSizeArray(); $maxmin = $maxfilesizearray['maxmin']; +$tooltiplogo .= ($maxmin > 0) ? '
'.$langs->trans('MaxSize').' : '.$maxmin.' '.$langs->trans('Kb') : ''; + +// Logo +print ''; +print '
'; if ($maxmin > 0) { print ''; // MAX_FILE_SIZE must precede the field type=file } @@ -522,7 +526,7 @@ print '
'; print ''; // Logo (squarred) -print ''; +print ''; print '
'; $maxfilesizearray = getMaxFileSizeArray(); $maxmin = $maxfilesizearray['maxmin']; diff --git a/htdocs/conf/conf.php.example b/htdocs/conf/conf.php.example index 4090130bc36..05c29459ee2 100644 --- a/htdocs/conf/conf.php.example +++ b/htdocs/conf/conf.php.example @@ -2,9 +2,9 @@ // Dolibarr example for conf.php file // // Do not edit this file without changing its name. -// This file is an example of empty config file for Dolibarr than can be used to create "conf.php". +// This file is an example of empty config file for Dolibarr that can be used to create "conf.php". // -// Warning: Be sure to not add line feed or spaces after closing php tag. +// Warning: Be sure not to add line feed or spaces after closing php tag! //################### @@ -12,12 +12,14 @@ //################### // dolibarr_main_url_root +// ====================== // This parameter defines the root URL of your Dolibarr index.php page without ending "/". -// It must link to the directory htdocs. +// It must link to the directory htdocs // In most cases, this is autodetected but it's still required // * to show full url bookmarks for some services (ie: agenda rss export url, ...) // * or when using Apache dir aliases (autodetect fails) // * or when using nginx (autodetect fails) +// // Examples: // $dolibarr_main_url_root='http://localhost'; // $dolibarr_main_url_root='http://mydolibarrvirtualhost'; @@ -28,8 +30,9 @@ $dolibarr_main_url_root=''; // dolibarr_main_document_root -// This parameter contains absolute file system directory of Dolibarr -// htdocs directory +// =========================== +// This parameter contains absolute file system path of Dolibarr htdocs directory +// // Examples: // $dolibarr_main_document_root='/var/www/dolibarr/htdocs'; // $dolibarr_main_document_root='C:/My web sites/dolibarr/htdocs'; @@ -38,10 +41,12 @@ $dolibarr_main_document_root=''; // dolibarr_main_url_root_alt +// ========================== // This parameter defines the relative sub URLs to add to $dolibarr_main_url_root to // forge alternative root directories (used by modules developers). // You can put several values, separated by a coma, but number of entries must match // number of entries into $dolibarr_main_document_root_alt. +// // Examples: // $dolibarr_main_url_root_alt='/custom'; // $dolibarr_main_url_root_alt='/extensions1,/extensions2'; @@ -50,10 +55,11 @@ $dolibarr_main_document_root=''; // dolibarr_main_document_root_alt -// This parameter contains absolute alternative root file system directories (used by -// modules developers). +// =============================== +// This parameter contains absolute alternative root file system directories (used by modules developers). // You can put several values, separated by a coma, but number of entries must match // number of entries into $dolibarr_main_url_root_alt. +// // Examples: // $dolibarr_main_document_root_alt='/var/www/dolibarr/htdocs/custom'; // $dolibarr_main_document_root_alt='C:/My web sites/dolibarr/htdocs/extensions1,C:/My web sites/dolibarr/htdocs/extensions2'; @@ -62,8 +68,10 @@ $dolibarr_main_document_root=''; // dolibarr_main_data_root +// ======================= // This parameter contains absolute file system directory of Dolibarr // directory used to store uploaded and generated physical files. +// // Examples: // $dolibarr_main_data_root='/var/www/dolibarr/documents'; // $dolibarr_main_data_root='E:/My web sites/dolibarr/documents'; @@ -72,8 +80,9 @@ $dolibarr_main_data_root=''; // dolibarr_main_db_host -// This parameter contains host name or ip address of Dolibarr database -// server. +// ===================== +// This parameter contains host name or ip address of Dolibarr database server. +// // Examples: // $dolibarr_main_db_host='localhost'; // $dolibarr_main_db_host='127.0.0.1'; @@ -84,7 +93,9 @@ $dolibarr_main_db_host=''; // dolibarr_main_db_port +// ===================== // This parameter contains the port of the Dolibarr database. +// // Default value: none // Examples: // $dolibarr_main_db_host='3306'; @@ -93,7 +104,9 @@ $dolibarr_main_db_port=''; // dolibarr_main_db_name +// ===================== // This parameter contains name of Dolibarr database. +// // Examples: // $dolibarr_main_db_name='dolibarr'; // $dolibarr_main_db_name='mydatabase'; @@ -102,8 +115,9 @@ $dolibarr_main_db_name=''; // dolibarr_main_db_user -// This parameter contains user name used to read and write into -// Dolibarr database. +// ===================== +// This parameter contains user name used to read and write into Dolibarr database. +// // Examples: // $dolibarr_main_db_user='admin'; // $dolibarr_main_db_user='dolibarruser'; @@ -112,8 +126,9 @@ $dolibarr_main_db_user=''; // dolibarr_main_db_pass -// This parameter contains password used to read and write into -// Dolibarr database. +// ===================== +// This parameter contains password used to read and write into Dolibarr database. +// // Examples: // $dolibarr_main_db_pass='myadminpass'; // $dolibarr_main_db_pass='myuserpassword'; @@ -122,8 +137,9 @@ $dolibarr_main_db_pass=''; // dolibarr_main_db_type -// This parameter contains the name of the driver used to access your -// Dolibarr database. +// ===================== +// This parameter contains the name of the driver used to access your Dolibarr database. +// // Default value: none // Possible values: mysqli, pgsql // Examples: @@ -134,7 +150,9 @@ $dolibarr_main_db_type=''; // dolibarr_main_db_character_set +// ============================== // Database character set used to store data (forced during database creation. value of database is then used). +// // Default value: depends on database driver // Examples: // dolibarr_main_db_character_set='utf8'; @@ -143,7 +161,9 @@ $dolibarr_main_db_character_set='utf8'; // dolibarr_main_db_collation +// ========================== // Database character set used to sort data (forced during database creation. value of database is then used). +// // Default value: depends on database driver // Examples: // $dolibarr_main_db_collation='utf8_unicode_ci'; @@ -152,7 +172,8 @@ $dolibarr_main_db_collation='utf8_unicode_ci'; // dolibarr_main_db_readonly -// Set this to 1 to have the application working in readonly mode. All sql access INSERT/UPDATE/DELETE/CREATE/ALTER/TRUNCATE/DROP will be disabled. +// ========================= +// Set this to 1 to have the application working in readonly mode. All SQL commands INSERT/UPDATE/DELETE/CREATE/ALTER/TRUNCATE/DROP will be disabled. // Default value: 0 // Examples: // $dolibarr_main_db_readonly='0'; @@ -161,6 +182,7 @@ $dolibarr_main_db_readonly=0; // dolibarr_main_instance_unique_id +// ================================ // An secret ID that is unique for each installation. // This value is also visible and never propagated outside of Dolibarr, so it can be used as a salt / key for some encryption (For example to get // a unique hashed key, application will hash the value concatenated with a string. Example: md5('dolibarr'+dolibarr_main_instance_unique_id) @@ -178,6 +200,7 @@ $dolibarr_main_instance_unique_id='84b5bc91f83b56e458db71e0adac2b62'; //################## // dolibarr_main_authentication +// ============================ // This parameter contains the way authentication is done. // If value "ldap" is used, you must also set parameters dolibarr_main_auth_ldap_* // Default value: 'dolibarr' @@ -186,28 +209,29 @@ $dolibarr_main_instance_unique_id='84b5bc91f83b56e458db71e0adac2b62'; // values using a ",". In this case, Dolibarr will check login/pass for each value in // order defined into value. However, note that this can't work with all values. // Examples: -// $dolibarr_main_authentication='dolibarr'; // Use the password defined into application on user file (default). -// $dolibarr_main_authentication='http'; // Use the HTTP Basic authentication -// $dolibarr_main_authentication='ldap'; // Check the password into a LDAP server -// $dolibarr_main_authentication='ldap,dolibarr'; // You can set several mode using a comma as a separator. -// $dolibarr_main_authentication='forceuser'; // This need to add also $dolibarr_auto_user='loginforuser'; -// $dolibarr_main_authentication='twofactor'; // To use Google Authenticator. This need the non official external module "Two Factor" available on www.dolistore.com +// $dolibarr_main_authentication='dolibarr'; // Use the password defined into application on user file (default). +// $dolibarr_main_authentication='http'; // Use the HTTP Basic authentication +// $dolibarr_main_authentication='ldap'; // Check the password into a LDAP server +// $dolibarr_main_authentication='ldap,dolibarr'; // You can set several mode using a comma as a separator. +// $dolibarr_main_authentication='forceuser'; // This need to add also $dolibarr_auto_user='loginforuser'; +// $dolibarr_main_authentication='twofactor'; // To use Google Authenticator. This need the non official external module "Two Factor" available on www.dolistore.com // $dolibarr_main_authentication='dolibarr'; -// Parameters used to setup LDAP authentication. +// Parameters used to setup LDAP authentication +// -------------------------------------------- // Uncomment them if dolibarr_main_authentication = 'ldap' // // $dolibarr_main_auth_ldap_host='127.0.0.1'; // You can define several servers here separated with a comma. // $dolibarr_main_auth_ldap_port='389'; // Port -// $dolibarr_main_auth_ldap_version='3'; -// $dolibarr_main_auth_ldap_servertype='openldap'; // openldap, activedirectory or egroupware -// $dolibarr_main_auth_ldap_login_attribute='loginfield'; // Ex: uid or samaccountname for active directory +// $dolibarr_main_auth_ldap_version='3'; // Version of LDAP +// $dolibarr_main_auth_ldap_servertype='openldap'; // openldap, activedirectory or egroupware +// $dolibarr_main_auth_ldap_login_attribute='loginfield'; // Ex: uid or samaccountname for active directory // $dolibarr_main_auth_ldap_dn='ou=users,dc=my-domain,dc=com'; // Ex: ou=users,dc=my-domain,dc=com // $dolibarr_main_auth_ldap_filter = ''; // If defined, the two previous parameters (dolibarr_main_auth_ldap_login_attribute and dolibarr_main_auth_ldap_dn) are not used to find a user into LDAP. Instead we use this search string. Ex: (uid=%1%) or &(uid=%1%)(isMemberOf=cn=Sales,ou=Groups,dc=opencsi,dc=com). -// $dolibarr_main_auth_ldap_admin_login=''; // Required only if anonymous bind disabled. Ex: cn=admin,dc=example,dc=com -// $dolibarr_main_auth_ldap_admin_pass=''; // Required only if anonymous bind disabled. Ex: secret +// $dolibarr_main_auth_ldap_admin_login=''; // Required only if anonymous bind disabled. Ex: cn=admin,dc=example,dc=com +// $dolibarr_main_auth_ldap_admin_pass=''; // Required only if anonymous bind disabled. Ex: secret // $dolibarr_main_auth_ldap_debug='false'; @@ -224,6 +248,7 @@ $dolibarr_main_authentication='dolibarr'; //################## // dolibarr_main_force_https +// ========================= // This parameter allows to force the HTTPS mode. // 0 = No forced redirect // 1 = Force redirect to https, until SCRIPT_URI start with https into response @@ -241,6 +266,7 @@ $dolibarr_main_authentication='dolibarr'; $dolibarr_main_force_https='0'; // dolibarr_main_prod +// ================== // When this parameter is defined, all errors messages are not reported. // This feature exists for production usage to avoid to give any information to hackers. // Default value: 1 @@ -250,7 +276,8 @@ $dolibarr_main_force_https='0'; // $dolibarr_main_prod='1'; -// $dolibarr_main_restrict_os_commands +// dolibarr_main_restrict_os_commands +// ================================== // To restrict commands you can execute by the backup feature, enter allowed command here. // Note: If you can, defining permission on OS linux (using SELinux for example) may be a better choice. // Default value: 'mysqldump, mysql, pg_dump, pgrestore' @@ -259,7 +286,8 @@ $dolibarr_main_prod='1'; // $dolibarr_main_restrict_os_commands='mysqldump, mysql, pg_dump, pgrestore'; -// $dolibarr_main_restrict_ip +// dolibarr_main_restrict_ip +// ========================= // To restrict access to backoffice to some ip addresses only. Use a comma to separate values. // Note: Pages that does not need login (like public pages, web site) are not protected with this. // Default value: '' @@ -269,6 +297,7 @@ $dolibarr_main_restrict_os_commands='mysqldump, mysql, pg_dump, pgrestore'; $dolibarr_main_restrict_ip=''; // dolibarr_nocsrfcheck +// ==================== // This parameter can be used to disable CSRF protection. // This might be required if you access Dolibarr behind a proxy that make bad URL rewriting, to avoid false alarms. // In most cases, you should always keep this to 0. @@ -280,6 +309,7 @@ $dolibarr_main_restrict_ip=''; $dolibarr_nocsrfcheck='0'; // dolibarr_cron_allow_cli +// ======================= // If set to 1, you will be able to define some command line in the internale Job scheduler module. // Default value: '0' // Examples: '1' @@ -287,6 +317,7 @@ $dolibarr_nocsrfcheck='0'; $dolibarr_cron_allow_cli='0'; // dolibarr_mailing_limit_sendbyweb +// ================================ // Can set a limit for mailing send by web. This overwrite database value. Can be used to restrict on system level. // Default value: '25' // Examples: '-1' (sending by web is forbidden) @@ -294,6 +325,7 @@ $dolibarr_cron_allow_cli='0'; // $dolibarr_mailing_limit_sendbyweb='25'; // dolibarr_mailing_limit_sendbycli +// ================================ // Can set a limit for mailing send by cli. This overwrite database value. Can be used to restrict on system level. // Default value: '0' (no hard limit, use soft database value if exists) // Examples: '-1' (sending by cli is forbidden) @@ -301,18 +333,21 @@ $dolibarr_cron_allow_cli='0'; // $dolibarr_mailing_limit_sendbycli='0'; // MAIN_ANTIVIRUS_COMMAND (as a constant) +// ====================== // Force a value for the antivirus command line tool so setup for admin user interface has no effect. // Default value: '' // Example: '/usr/bin/clamdscan'; // define('MAIN_ANTIVIRUS_COMMAND', '/usr/bin/clamdscan'); // MAIN_ANTIVIRUS_PARAM (as a constant) +// ==================== // Force a value for the antivirus parameters on command line so setup for admin user interface has no effect. // Default value: '' // Example: '--fdpass'; // define('MAIN_ANTIVIRUS_PARAM', '--fdpass'); // php_session_save_handler +// ======================== // Try to use the Dolibarr internal session handler that uses a database instead of the PHP handler (experimental). // If you enable this feature to 'db', you may also want to enable the following constants: // $dolibarr_session_db_type, $dolibarr_session_db_host, $dolibarr_session_db_user, $dolibarr_session_db_pass @@ -323,6 +358,7 @@ $dolibarr_cron_allow_cli='0'; // $php_session_save_handler=''; // force_install_lockinstall +// ========================= // If this value is set to a value, it forces the creation of a file install.lock once an upgrade process into a new version end. // The value is the octal value of permission to set on created file. // The file install.lock prevents the use of the migration process another time. You will have to delete it manually for @@ -338,11 +374,14 @@ $dolibarr_cron_allow_cli='0'; //################## // dolibarr_main_db_prefix -// This parameter contains prefix of Dolibarr database. 'llx_' if not defined. +// ======================= +// This parameter contains prefix of Dolibarr database. +// Default value: 'llx_' if not defined // Examples: // $dolibarr_main_db_prefix='llx_'; // dolibarr_main_limit_users +// ========================= // Can set a limit on the number of users it will be possible to create // (the superadmin not included). Can be used for a restricted mode. // Default value: 0 (unlimited) @@ -350,12 +389,14 @@ $dolibarr_cron_allow_cli='0'; // $dolibarr_main_limit_users='0'; // dolibarr_strict_mode +// ==================== // Set this to 1 to enable the PHP strict mode. For dev environment only. // Default value: 0 (use database value if exist) // Examples: // $dolibarr_strict_mode=0; // dolibarr_allow_download_external_modules +// ======================================== // Provide a link to download the zip of an external modules installed into custom directory from the web admin. // Default value: 0 // Examples: @@ -376,17 +417,19 @@ $dolibarr_cron_allow_cli='0'; //$dolibarr_lib_NUSOAP_PATH='/usr/share/php/nusoap'; //$dolibarr_lib_ODTPHP_PATH=''; //$dolibarr_lib_ODTPHP_PATHTOPCLZIP="/usr/share/php/libphp-pclzip"; + // Value to overwrite path to use shared javascript instead of embedded one //$dolibarr_js_CKEDITOR='/javascript/ckeditor'; //$dolibarr_js_JQUERY='/javascript/jquery'; //$dolibarr_js_JQUERY_UI='/javascript/jquery-ui'; + // Value to overwrite some path to use font instead of embedded one //$dolibarr_font_DOL_DEFAULT_TTF="/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf"; //$dolibarr_font_DOL_DEFAULT_TTF_BOLD="/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf"; //############################## -// External module +// External modules //############################## diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index 80cd8bb79e2..a0067925334 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -179,7 +179,7 @@ class FormFile if (!empty($conf->global->MAIN_UPLOAD_DOC)) { if ($perm) { - $menudolibarrsetupmax = $langs->transnoentitiesnoconv("Home").'-'.$langs->transnoentitiesnoconv("Setup").'-'.$langs->transnoentitiesnoconv("Security"); + $menudolibarrsetupmax = $langs->transnoentitiesnoconv("Home").' - '.$langs->transnoentitiesnoconv("Setup").' - '.$langs->transnoentitiesnoconv("Security"); $langs->load('other'); $out .= ' '; $out .= info_admin($langs->trans("ThisLimitIsDefinedInSetupAt", $menudolibarrsetupmax, $max, $maxphptoshowparam, $maxphptoshow), 1); diff --git a/htdocs/install/doctemplates/websites/website_template-style02.zip b/htdocs/install/doctemplates/websites/website_template-style02.zip new file mode 100644 index 00000000000..4a5a0a7eacb Binary files /dev/null and b/htdocs/install/doctemplates/websites/website_template-style02.zip differ diff --git a/htdocs/install/doctemplates/websites/website_template-style03.zip b/htdocs/install/doctemplates/websites/website_template-style03.zip index f2a7684cc4e..18266bd18d9 100644 Binary files a/htdocs/install/doctemplates/websites/website_template-style03.zip and b/htdocs/install/doctemplates/websites/website_template-style03.zip differ