'.$langs->trans('OptionModeTrue').' ';
print ''.nl2br($langs->trans('OptionModeTrueDesc'));
// Write info on way to count VAT
-//if (! empty($conf->global->MAIN_MODULE_COMPTABILITE))
+//if (!empty($conf->global->MAIN_MODULE_COMPTABILITE))
//{
// // print " \n";
// // print nl2br($langs->trans('OptionModeTrueInfoModuleComptabilite'));
diff --git a/htdocs/admin/const.php b/htdocs/admin/const.php
index a5a68a0bb49..1354f418967 100644
--- a/htdocs/admin/const.php
+++ b/htdocs/admin/const.php
@@ -26,6 +26,7 @@
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
+require_once DOL_DOCUMENT_ROOT.'/core/lib/security.lib.php';
// Load translation files required by the page
$langs->load("admin");
@@ -185,12 +186,12 @@ print ' ';
print '';
print '
';
print '';
-print getTitleFieldOfList('Name', 0, $_SERVER['PHP_SELF'], 'name', '', $param, '', $sortfield, $sortorder, '')."\n";
+print getTitleFieldOfList('Name', 0, $_SERVER['PHP_SELF'], 'name', '', $param, '', $sortfield, $sortorder, '') . "\n";
print getTitleFieldOfList("Value", 0, $_SERVER["PHP_SELF"], '', '', $param, '', $sortfield, $sortorder);
print getTitleFieldOfList("Comment", 0, $_SERVER["PHP_SELF"], '', '', $param, '', $sortfield, $sortorder);
-print getTitleFieldOfList('DateModificationShort', 0, $_SERVER['PHP_SELF'], 'tms', '', $param, '', $sortfield, $sortorder, 'center ')."\n";
-if (!empty($conf->multicompany->enabled) && !$user->entity) {
- print getTitleFieldOfList('Entity', 0, $_SERVER['PHP_SELF'], 'tms', '', $param, '', $sortfield, $sortorder, 'center ')."\n";
+print getTitleFieldOfList('DateModificationShort', 0, $_SERVER['PHP_SELF'], 'tms', '', $param, '', $sortfield, $sortorder, 'center ') . "\n";
+if (isModEnabled('multicompany') && !$user->entity) {
+ print getTitleFieldOfList('Entity', 0, $_SERVER['PHP_SELF'], 'tms', '', $param, '', $sortfield, $sortorder, 'center ') . "\n";
}
print getTitleFieldOfList("", 0, $_SERVER["PHP_SELF"], '', '', $param, '', $sortfield, $sortorder, 'center ');
print " \n";
@@ -211,14 +212,14 @@ print '';
print '';
print ' ';
// Limit to superadmin
-if (!empty($conf->multicompany->enabled) && !$user->entity) {
+if (isModEnabled('multicompany') && !$user->entity) {
print '';
- print ' ';
+ print ' ';
print ' ';
print '';
} else {
print ' ';
- print ' ';
+ print ' ';
}
print ' ';
print " \n";
@@ -255,16 +256,18 @@ if ($result) {
while ($i < $num) {
$obj = $db->fetch_object($result);
+ $value = dolDecrypt($obj->value);
+
print "\n";
- print ''.$obj->name.' '."\n";
+ print ''.dol_escape_htmltag($obj->name).' '."\n";
// Value
print '';
print ' ';
print ' ';
print ' ';
- print ' ';
+ print ' ';
print ' ';
// Note
@@ -278,14 +281,14 @@ if ($result) {
print '';
// Entity limit to superadmin
- if (!empty($conf->multicompany->enabled) && !$user->entity) {
+ if (isModEnabled('multicompany') && !$user->entity) {
print '';
- print ' ';
+ print ' ';
print ' ';
print '';
} else {
print ' ';
- print ' ';
+ print ' ';
}
if ($conf->use_javascript_ajax) {
diff --git a/htdocs/admin/dav.php b/htdocs/admin/dav.php
index 698bb187d67..d9825ad6886 100644
--- a/htdocs/admin/dav.php
+++ b/htdocs/admin/dav.php
@@ -185,13 +185,13 @@ $message .= ajax_autoselect('webdavpublicurl');
$message .= ' ';
if (!empty($conf->global->DAV_ALLOW_PUBLIC_DIR)) {
- $urlEntity = (!empty($conf->multicompany->enabled) ? '?entity='.$conf->entity : '');
- $url = ''.$urlwithroot.'/dav/fileserver.php/public/'.$urlEntity.' ';
+ $urlEntity = (isModEnabled('multicompany') ? '?entity=' . $conf->entity : '');
+ $url = '' . $urlwithroot . '/dav/fileserver.php/public/' . $urlEntity . ' ';
- $message .= img_picto('', 'globe').' '.str_replace('{url}', $url, $langs->trans("WebDavServer", 'WebDAV public', ''));
- $message .= '';
- $message .= '
';
- $message .= ' '.img_picto('', 'globe');
+ $message .= img_picto('', 'globe') . ' ' . str_replace('{url}', $url, $langs->trans("WebDavServer", 'WebDAV public', ''));
+ $message .= '';
$message .= ajax_autoselect('webdavurl');
diff --git a/htdocs/admin/defaultvalues.php b/htdocs/admin/defaultvalues.php
index 088c84de3f0..f83b77e67a6 100644
--- a/htdocs/admin/defaultvalues.php
+++ b/htdocs/admin/defaultvalues.php
@@ -306,7 +306,7 @@ if ($mode != 'focus' && $mode != 'mandatory') {
print_liste_field_titre($textvalue, $_SERVER["PHP_SELF"], 'value', '', $param, '', $sortfield, $sortorder);
}
// Entity
-if (!empty($conf->multicompany->enabled) && !$user->entity) {
+if (isModEnabled('multicompany') && !$user->entity) {
print_liste_field_titre("Entity", $_SERVER["PHP_SELF"], 'entity,page', '', $param, '', $sortfield, $sortorder);
} else {
print_liste_field_titre("", $_SERVER["PHP_SELF"], '', '', $param, '', $sortfield, $sortorder);
@@ -335,13 +335,13 @@ if ($mode != 'focus' && $mode != 'mandatory') {
print ' ';
}
// Limit to superadmin
-if (!empty($conf->multicompany->enabled) && !$user->entity) {
+if (isModEnabled('multicompany') && !$user->entity) {
print '';
- print ' '; // We see environment, but to change it we must switch on other entity
+ print ' '; // We see environment, but to change it we must switch on other entity
print ' ';
} else {
print '';
- print ' ';
+ print ' ';
print ' ';
}
print '';
diff --git a/htdocs/admin/delais.php b/htdocs/admin/delais.php
index 2ae77b03d07..6935ec9d521 100644
--- a/htdocs/admin/delais.php
+++ b/htdocs/admin/delais.php
@@ -4,6 +4,7 @@
* Copyright (C) 2005 Simon Tosser
* Copyright (C) 2005-2012 Regis Houssin
* Copyright (C) 2016 Raphaël Doursenaud
+ * Copyright (C) 2022 Frédéric France
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -172,7 +173,7 @@ if (!isset($conf->global->MAIN_DELAY_ORDERS_TO_PROCESS)) {
if ($action == 'update') {
foreach ($modules as $module => $delays) {
- if (!empty($conf->$module->enabled)) {
+ if (isModEnabled($module)) {
foreach ($delays as $delay) {
if (GETPOST($delay['code']) != '') {
dolibarr_set_const($db, $delay['code'], GETPOST($delay['code']), 'chaine', 0, '', $conf->entity);
@@ -226,13 +227,13 @@ if ($action == 'edit') {
print ''.$langs->trans("LateWarningAfter").' ';
foreach ($modules as $module => $delays) {
- if (!empty($conf->$module->enabled)) {
+ if (isModEnabled($module)) {
foreach ($delays as $delay) {
- $value = (!empty($conf->global->{$delay['code']}) ? $conf->global->{$delay['code']}:0);
+ $value = (!empty($conf->global->{$delay['code']}) ? $conf->global->{$delay['code']} : 0);
print '';
- print ''.img_object('', $delay['img']).' ';
- print ''.$langs->trans('Delays_'.$delay['code']).' ';
- print ' '.$langs->trans("days").' ';
+ print '' . img_object('', $delay['img']) . ' ';
+ print '' . $langs->trans('Delays_' . $delay['code']) . ' ';
+ print ' ' . $langs->trans("days") . ' ';
}
}
}
@@ -260,13 +261,13 @@ if ($action == 'edit') {
print ''.$langs->trans("DelaysOfToleranceBeforeWarning").' '.$langs->trans("Value").' ';
foreach ($modules as $module => $delays) {
- if (!empty($conf->$module->enabled)) {
+ if (isModEnabled($module)) {
foreach ($delays as $delay) {
- $value = (!empty($conf->global->{$delay['code']}) ? $conf->global->{$delay['code']}:0);
+ $value = (!empty($conf->global->{$delay['code']}) ? $conf->global->{$delay['code']} : 0);
print '';
- print ''.img_object('', $delay['img']).' ';
- print ''.$langs->trans('Delays_'.$delay['code']).' ';
- print ''.$value.' '.$langs->trans("days").' ';
+ print '' . img_object('', $delay['img']) . ' ';
+ print '' . $langs->trans('Delays_' . $delay['code']) . ' ';
+ print '' . $value . ' ' . $langs->trans("days") . ' ';
}
}
}
@@ -317,18 +318,22 @@ if (empty($conf->global->MAIN_DISABLE_METEO) || $conf->global->MAIN_DISABLE_METE
$offset = 0;
$cursor = 10; // By default
- //if (! empty($conf->global->MAIN_METEO_OFFSET)) $offset=$conf->global->MAIN_METEO_OFFSET;
- //if (! empty($conf->global->MAIN_METEO_GAP)) $cursor=$conf->global->MAIN_METEO_GAP;
- $level0 = $offset; if (!empty($conf->global->MAIN_METEO_LEVEL0)) {
+ //if (!empty($conf->global->MAIN_METEO_OFFSET)) $offset=$conf->global->MAIN_METEO_OFFSET;
+ //if (!empty($conf->global->MAIN_METEO_GAP)) $cursor=$conf->global->MAIN_METEO_GAP;
+ $level0 = $offset;
+ if (!empty($conf->global->MAIN_METEO_LEVEL0)) {
$level0 = $conf->global->MAIN_METEO_LEVEL0;
}
- $level1 = $offset + 1 * $cursor; if (!empty($conf->global->MAIN_METEO_LEVEL1)) {
+ $level1 = $offset + 1 * $cursor;
+ if (!empty($conf->global->MAIN_METEO_LEVEL1)) {
$level1 = $conf->global->MAIN_METEO_LEVEL1;
}
- $level2 = $offset + 2 * $cursor; if (!empty($conf->global->MAIN_METEO_LEVEL2)) {
+ $level2 = $offset + 2 * $cursor;
+ if (!empty($conf->global->MAIN_METEO_LEVEL2)) {
$level2 = $conf->global->MAIN_METEO_LEVEL2;
}
- $level3 = $offset + 3 * $cursor; if (!empty($conf->global->MAIN_METEO_LEVEL3)) {
+ $level3 = $offset + 3 * $cursor;
+ if (!empty($conf->global->MAIN_METEO_LEVEL3)) {
$level3 = $conf->global->MAIN_METEO_LEVEL3;
}
$text = ''; $options = 'class="valignmiddle" height="60px"';
diff --git a/htdocs/admin/dict.php b/htdocs/admin/dict.php
index 3cba1a333ca..ff74273d744 100644
--- a/htdocs/admin/dict.php
+++ b/htdocs/admin/dict.php
@@ -11,7 +11,7 @@
* Copyright (C) 2011-2022 Alexandre Spangaro
* Copyright (C) 2015 Ferran Marcet
* Copyright (C) 2016 Raphaël Doursenaud
- * Copyright (C) 2019-2020 Frédéric France
+ * Copyright (C) 2019-2022 Frédéric France
* Copyright (C) 2020-2022 Open-Dsi
*
* This program is free software; you can redistribute it and/or modify
@@ -483,50 +483,50 @@ $tabrowid[44] = "rowid";
// Condition to show dictionary in setup page
$tabcond = array();
-$tabcond[1] = (!empty($conf->societe->enabled));
+$tabcond[1] = (isModEnabled("societe"));
$tabcond[2] = true;
$tabcond[3] = true;
$tabcond[4] = true;
-$tabcond[5] = (!empty($conf->societe->enabled) || !empty($conf->adherent->enabled));
+$tabcond[5] = (isModEnabled("societe") || isModEnabled('adherent'));
$tabcond[6] = isModEnabled('agenda');
-$tabcond[7] = !empty($conf->tax->enabled);
-$tabcond[8] = !empty($conf->societe->enabled);
+$tabcond[7] = isModEnabled('tax');
+$tabcond[8] = isModEnabled("societe");
$tabcond[9] = true;
$tabcond[10] = true;
-$tabcond[11] = (!empty($conf->societe->enabled));
-$tabcond[12] = (!empty($conf->commande->enabled) || !empty($conf->propal->enabled) || isModEnabled('facture') || (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_invoice->enabled) || !empty($conf->supplier_order->enabled));
-$tabcond[13] = (!empty($conf->commande->enabled) || !empty($conf->propal->enabled) || isModEnabled('facture') || (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_invoice->enabled) || !empty($conf->supplier_order->enabled));
-$tabcond[14] = (!empty($conf->product->enabled) && (!empty($conf->ecotax->enabled) || !empty($conf->global->MAIN_SHOW_ECOTAX_DICTIONNARY)));
+$tabcond[11] = (isModEnabled("societe"));
+$tabcond[12] = (isModEnabled('commande') || isModEnabled("propal") || isModEnabled('facture') || (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_invoice") || isModEnabled("supplier_order"));
+$tabcond[13] = (isModEnabled('commande') || isModEnabled("propal") || isModEnabled('facture') || (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_invoice") || isModEnabled("supplier_order"));
+$tabcond[14] = (isModEnabled("product") && (isModEnabled('ecotax') || !empty($conf->global->MAIN_SHOW_ECOTAX_DICTIONNARY)));
$tabcond[15] = true;
-$tabcond[16] = (!empty($conf->societe->enabled) && empty($conf->global->SOCIETE_DISABLE_PROSPECTS));
-$tabcond[17] = (!empty($conf->deplacement->enabled) || !empty($conf->expensereport->enabled));
-$tabcond[18] = !empty($conf->expedition->enabled) || !empty($conf->reception->enabled);
-$tabcond[19] = !empty($conf->societe->enabled);
-$tabcond[20] = (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled);
-$tabcond[21] = !empty($conf->propal->enabled);
-$tabcond[22] = (!empty($conf->commande->enabled) || !empty($conf->propal->enabled));
+$tabcond[16] = (isModEnabled("societe") && empty($conf->global->SOCIETE_DISABLE_PROSPECTS));
+$tabcond[17] = (isModEnabled('deplacement') || isModEnabled('expensereport'));
+$tabcond[18] = isModEnabled("expedition") || isModEnabled("reception");
+$tabcond[19] = isModEnabled("societe");
+$tabcond[20] = (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order");
+$tabcond[21] = isModEnabled("propal");
+$tabcond[22] = (isModEnabled('commande') || isModEnabled("propal"));
$tabcond[23] = true;
-$tabcond[24] = !empty($conf->resource->enabled);
-$tabcond[25] = !empty($conf->website->enabled);
-//$tabcond[26]= !empty($conf->product->enabled);
-$tabcond[27] = !empty($conf->societe->enabled);
-$tabcond[28] = !empty($conf->holiday->enabled);
-$tabcond[29] = !empty($conf->project->enabled);
-$tabcond[30] = !empty($conf->label->enabled);
+$tabcond[24] = isModEnabled('resource');
+$tabcond[25] = isModEnabled('website');
+//$tabcond[26]= isModEnabled("product");
+$tabcond[27] = isModEnabled("societe");
+$tabcond[28] = isModEnabled('holiday');
+$tabcond[29] = isModEnabled('project');
+$tabcond[30] = isModEnabled('label');
//$tabcond[31]= !empty($conf->accounting->enabled);
-$tabcond[32] = (!empty($conf->holiday->enabled) || !empty($conf->hrm->enabled));
-$tabcond[33] = !empty($conf->hrm->enabled);
-$tabcond[34] = !empty($conf->hrm->enabled);
-$tabcond[35] = !empty($conf->expensereport->enabled) && !empty($conf->global->MAIN_USE_EXPENSE_IK);
-$tabcond[36] = !empty($conf->expensereport->enabled) && !empty($conf->global->MAIN_USE_EXPENSE_IK);
-$tabcond[37] = !empty($conf->product->enabled);
-$tabcond[38] = !empty($conf->socialnetworks->enabled);
-$tabcond[39] = (!empty($conf->societe->enabled) && empty($conf->global->SOCIETE_DISABLE_PROSPECTS) && !empty($conf->global->THIRDPARTY_ENABLE_PROSPECTION_ON_ALTERNATIVE_ADRESSES));
-$tabcond[40] = (!empty($conf->societe->enabled) && !empty($conf->global->THIRDPARTY_ENABLE_PROSPECTION_ON_ALTERNATIVE_ADRESSES));
-$tabcond[41] = !empty($conf->intracommreport->enabled);
-$tabcond[42] = !empty($conf->product->enabled);
-$tabcond[43] = !empty($conf->product->enabled) && !empty($conf->productbatch->enabled) && $conf->global->MAIN_FEATURES_LEVEL >= 2;
-$tabcond[44] = !empty($conf->asset->enabled);
+$tabcond[32] = (isModEnabled('holiday') || isModEnabled('hrm'));
+$tabcond[33] = isModEnabled('hrm');
+$tabcond[34] = isModEnabled('hrm');
+$tabcond[35] = isModEnabled('expensereport') && !empty($conf->global->MAIN_USE_EXPENSE_IK);
+$tabcond[36] = isModEnabled('expensereport') && !empty($conf->global->MAIN_USE_EXPENSE_IK);
+$tabcond[37] = isModEnabled("product");
+$tabcond[38] = isModEnabled('socialnetworks');
+$tabcond[39] = (isModEnabled("societe") && empty($conf->global->SOCIETE_DISABLE_PROSPECTS) && !empty($conf->global->THIRDPARTY_ENABLE_PROSPECTION_ON_ALTERNATIVE_ADRESSES));
+$tabcond[40] = (isModEnabled("societe") && !empty($conf->global->THIRDPARTY_ENABLE_PROSPECTION_ON_ALTERNATIVE_ADRESSES));
+$tabcond[41] = isModEnabled('intracommreport');
+$tabcond[42] = isModEnabled("product");
+$tabcond[43] = isModEnabled("product") && isModEnabled('productbatch') && $conf->global->MAIN_FEATURES_LEVEL >= 2;
+$tabcond[44] = isModEnabled('asset');
// List of help for fields (no more used, help is defined into tabcomplete)
$tabhelp = array();
@@ -1028,10 +1028,13 @@ if (empty($reshook)) {
$rowidcol = "rowid";
}
+ $tablename = $tabname[$id];
+ $tablename = preg_replace('/^'.preg_quote(MAIN_DB_PREFIX, '/').'/', '', $tablename);
+
if ($rowid) {
- $sql = "UPDATE ".MAIN_DB_PREFIX.$tabname[$id]." SET active = 1 WHERE ".$rowidcol." = '".$db->escape($rowid)."'".($entity != '' ? " AND entity = ".(int) $entity : '');
+ $sql = "UPDATE ".MAIN_DB_PREFIX.$tablename." SET active = 1 WHERE ".$rowidcol." = '".$db->escape($rowid)."'".($entity != '' ? " AND entity = ".(int) $entity : '');
} elseif ($code) {
- $sql = "UPDATE ".MAIN_DB_PREFIX.$tabname[$id]." SET active = 1 WHERE code = '".$db->escape(dol_escape_htmltag($code))."'".($entity != '' ? " AND entity = ".(int) $entity : '');
+ $sql = "UPDATE ".MAIN_DB_PREFIX.$tablename." SET active = 1 WHERE code = '".$db->escape(dol_escape_htmltag($code))."'".($entity != '' ? " AND entity = ".(int) $entity : '');
}
$result = $db->query($sql);
@@ -1048,10 +1051,13 @@ if (empty($reshook)) {
$rowidcol = "rowid";
}
+ $tablename = $tabname[$id];
+ $tablename = preg_replace('/^'.preg_quote(MAIN_DB_PREFIX, '/').'/', '', $tablename);
+
if ($rowid) {
- $sql = "UPDATE ".MAIN_DB_PREFIX.$tabname[$id]." SET active = 0 WHERE ".$rowidcol." = '".$db->escape($rowid)."'".($entity != '' ? " AND entity = ".(int) $entity : '');
+ $sql = "UPDATE ".MAIN_DB_PREFIX.$tablename." SET active = 0 WHERE ".$rowidcol." = '".$db->escape($rowid)."'".($entity != '' ? " AND entity = ".(int) $entity : '');
} elseif ($code) {
- $sql = "UPDATE ".MAIN_DB_PREFIX.$tabname[$id]." SET active = 0 WHERE code = '".$db->escape(dol_escape_htmltag($code))."'".($entity != '' ? " AND entity = ".(int) $entity : '');
+ $sql = "UPDATE ".MAIN_DB_PREFIX.$tablename." SET active = 0 WHERE code = '".$db->escape(dol_escape_htmltag($code))."'".($entity != '' ? " AND entity = ".(int) $entity : '');
}
$result = $db->query($sql);
@@ -1068,10 +1074,13 @@ if (empty($reshook)) {
$rowidcol = "rowid";
}
+ $tablename = $tabname[$id];
+ $tablename = preg_replace('/^'.preg_quote(MAIN_DB_PREFIX, '/').'/', '', $tablename);
+
if ($rowid) {
- $sql = "UPDATE ".MAIN_DB_PREFIX.$tabname[$id]." SET favorite = 1 WHERE ".$rowidcol." = '".$db->escape($rowid)."'".($entity != '' ? " AND entity = ".(int) $entity : '');
+ $sql = "UPDATE ".MAIN_DB_PREFIX.$tablename." SET favorite = 1 WHERE ".$rowidcol." = '".$db->escape($rowid)."'".($entity != '' ? " AND entity = ".(int) $entity : '');
} elseif ($code) {
- $sql = "UPDATE ".MAIN_DB_PREFIX.$tabname[$id]." SET favorite = 1 WHERE code = '".$db->escape(dol_escape_htmltag($code))."'".($entity != '' ? " AND entity = ".(int) $entity : '');
+ $sql = "UPDATE ".MAIN_DB_PREFIX.$tablename." SET favorite = 1 WHERE code = '".$db->escape(dol_escape_htmltag($code))."'".($entity != '' ? " AND entity = ".(int) $entity : '');
}
$result = $db->query($sql);
@@ -1088,10 +1097,13 @@ if (empty($reshook)) {
$rowidcol = "rowid";
}
+ $tablename = $tabname[$id];
+ $tablename = preg_replace('/^'.preg_quote(MAIN_DB_PREFIX, '/').'/', '', $tablename);
+
if ($rowid) {
- $sql = "UPDATE ".MAIN_DB_PREFIX.$tabname[$id]." SET favorite = 0 WHERE ".$rowidcol." = '".$db->escape($rowid)."'".($entity != '' ? " AND entity = ".(int) $entity : '');
+ $sql = "UPDATE ".MAIN_DB_PREFIX.$tablename." SET favorite = 0 WHERE ".$rowidcol." = '".$db->escape($rowid)."'".($entity != '' ? " AND entity = ".(int) $entity : '');
} elseif ($code) {
- $sql = "UPDATE ".MAIN_DB_PREFIX.$tabname[$id]." SET favorite = 0 WHERE code = '".$db->escape(dol_escape_htmltag($code))."'".($entity != '' ? " AND entity = ".(int) $entity : '');
+ $sql = "UPDATE ".MAIN_DB_PREFIX.$tablename." SET favorite = 0 WHERE code = '".$db->escape(dol_escape_htmltag($code))."'".($entity != '' ? " AND entity = ".(int) $entity : '');
}
$result = $db->query($sql);
@@ -1108,10 +1120,13 @@ if (empty($reshook)) {
$rowidcol = "rowid";
}
+ $tablename = $tabname[$id];
+ $tablename = preg_replace('/^'.preg_quote(MAIN_DB_PREFIX, '/').'/', '', $tablename);
+
if ($rowid) {
- $sql = "UPDATE ".MAIN_DB_PREFIX.$tabname[$id]." SET eec = 1 WHERE ".$rowidcol." = '".$db->escape($rowid)."'".($entity != '' ? " AND entity = ".(int) $entity : '');
+ $sql = "UPDATE ".MAIN_DB_PREFIX.$tablename." SET eec = 1 WHERE ".$rowidcol." = '".$db->escape($rowid)."'".($entity != '' ? " AND entity = ".(int) $entity : '');
} elseif ($code) {
- $sql = "UPDATE ".MAIN_DB_PREFIX.$tabname[$id]." SET eec = 1 WHERE code = '".$db->escape(dol_escape_htmltag($code))."'".($entity != '' ? " AND entity = ".(int) $entity : '');
+ $sql = "UPDATE ".MAIN_DB_PREFIX.$tablename." SET eec = 1 WHERE code = '".$db->escape(dol_escape_htmltag($code))."'".($entity != '' ? " AND entity = ".(int) $entity : '');
}
$result = $db->query($sql);
@@ -1128,10 +1143,13 @@ if (empty($reshook)) {
$rowidcol = "rowid";
}
+ $tablename = $tabname[$id];
+ $tablename = preg_replace('/^'.preg_quote(MAIN_DB_PREFIX, '/').'/', '', $tablename);
+
if ($rowid) {
- $sql = "UPDATE ".MAIN_DB_PREFIX.$tabname[$id]." SET eec = 0 WHERE ".$rowidcol." = '".$db->escape($rowid)."'".($entity != '' ? " AND entity = ".(int) $entity : '');
+ $sql = "UPDATE ".MAIN_DB_PREFIX.$tablename." SET eec = 0 WHERE ".$rowidcol." = '".$db->escape($rowid)."'".($entity != '' ? " AND entity = ".(int) $entity : '');
} elseif ($code) {
- $sql = "UPDATE ".MAIN_DB_PREFIX.$tabname[$id]." SET eec = 0 WHERE code = '".$db->escape(dol_escape_htmltag($code))."'".($entity != '' ? " AND entity = ".(int) $entity : '');
+ $sql = "UPDATE ".MAIN_DB_PREFIX.$tablename." SET eec = 0 WHERE code = '".$db->escape(dol_escape_htmltag($code))."'".($entity != '' ? " AND entity = ".(int) $entity : '');
}
$result = $db->query($sql);
@@ -1140,6 +1158,8 @@ if (empty($reshook)) {
}
}
}
+
+
/*
* View
*/
diff --git a/htdocs/admin/dolistore/ajax/image.php b/htdocs/admin/dolistore/ajax/image.php
index e601da43e06..6beb96a9e66 100644
--- a/htdocs/admin/dolistore/ajax/image.php
+++ b/htdocs/admin/dolistore/ajax/image.php
@@ -27,14 +27,17 @@ if (!defined('NOTOKENRENEWAL')) {
* \ingroup admin
* \brief Page des informations dolistore
*/
+
require "../../../main.inc.php";
-
-// CORE
-
-global $lang, $user, $conf;
-
-
require_once DOL_DOCUMENT_ROOT.'/admin/dolistore/class/dolistore.class.php';
+
+
+/*
+ * View
+ */
+
+top_httphead('image');
+
$dolistore = new Dolistore();
$id_product = GETPOST('id_product', 'int');
@@ -51,7 +54,7 @@ try {
);
//echo $url;
$request = $api->executeRequest($url, array(CURLOPT_CUSTOMREQUEST => 'GET'));
- header('Content-type:image');
+
print $request['response'];
} catch (PrestaShopWebserviceException $e) {
// Here we are dealing with errors
diff --git a/htdocs/admin/ecm.php b/htdocs/admin/ecm.php
index 44df7f74189..3e0c2378742 100644
--- a/htdocs/admin/ecm.php
+++ b/htdocs/admin/ecm.php
@@ -22,6 +22,8 @@
* \brief Page to setup ECM (GED) module
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/ecm.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
@@ -37,6 +39,8 @@ if (!$user->admin) {
/*
* Action
*/
+
+// set
if (preg_match('/set_([a-z0-9_\-]+)/i', $action, $reg)) {
$code = $reg[1];
if (dolibarr_set_const($db, $code, 1, 'chaine', 0, '', $conf->entity) > 0) {
@@ -47,6 +51,7 @@ if (preg_match('/set_([a-z0-9_\-]+)/i', $action, $reg)) {
}
}
+// delete
if (preg_match('/del_([a-z0-9_\-]+)/i', $action, $reg)) {
$code = $reg[1];
if (dolibarr_del_const($db, $code, $conf->entity) > 0) {
diff --git a/htdocs/admin/emailcollector_card.php b/htdocs/admin/emailcollector_card.php
index e297ba02d61..81a1e9d45b5 100644
--- a/htdocs/admin/emailcollector_card.php
+++ b/htdocs/admin/emailcollector_card.php
@@ -34,10 +34,20 @@ include_once DOL_DOCUMENT_ROOT.'/emailcollector/class/emailcollectorfilter.class
include_once DOL_DOCUMENT_ROOT.'/emailcollector/class/emailcollectoraction.class.php';
include_once DOL_DOCUMENT_ROOT.'/emailcollector/lib/emailcollector.lib.php';
+// use Webklex\PHPIMAP;
+require DOL_DOCUMENT_ROOT.'/includes/webklex/php-imap/vendor/autoload.php';
+use Webklex\PHPIMAP\ClientManager;
+use Webklex\PHPIMAP\Exceptions\ConnectionFailedException;
+use Webklex\PHPIMAP\Exceptions\InvalidWhereQueryCriteriaException;
+
+
+use OAuth\Common\Storage\DoliStorage;
+use OAuth\Common\Consumer\Credentials;
+
if (!$user->admin) {
accessforbidden();
}
-if (empty($conf->emailcollector->enabled)) {
+if (!isModEnabled('emailcollector')) {
accessforbidden();
}
@@ -377,50 +387,142 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
$connectstringserver = $object->getConnectStringIMAP($usessl);
if ($action == 'scan') {
- try {
- if ($sourcedir) {
- //$connectstringsource = $connectstringserver.imap_utf7_encode($sourcedir);
- $connectstringsource = $connectstringserver.$object->getEncodedUtf7($sourcedir);
+ if (!empty($conf->global->MAIN_IMAP_USE_PHPIMAP)) {
+ if ($object->acces_type == 1) {
+ // Mode OAUth2 with PHP-IMAP
+ require_once DOL_DOCUMENT_ROOT.'/core/lib/oauth.lib.php'; // define $supportedoauth2array
+ $keyforsupportedoauth2array = $object->oauth_service;
+ if (preg_match('/^.*-/', $keyforsupportedoauth2array)) {
+ $keyforprovider = preg_replace('/^.*-/', '', $keyforsupportedoauth2array);
+ } else {
+ $keyforprovider = '';
+ }
+ $keyforsupportedoauth2array = preg_replace('/-.*$/', '', $keyforsupportedoauth2array);
+ $keyforsupportedoauth2array = 'OAUTH_'.$keyforsupportedoauth2array.'_NAME';
+
+ $OAUTH_SERVICENAME = (empty($supportedoauth2array[$keyforsupportedoauth2array]['name']) ? 'Unknown' : $supportedoauth2array[$keyforsupportedoauth2array]['name'].($keyforprovider ? '-'.$keyforprovider : ''));
+
+ require_once DOL_DOCUMENT_ROOT.'/includes/OAuth/bootstrap.php';
+ //$debugtext = "Host: ".$this->host." Port: ".$this->port." Login: ".$this->login." Password: ".$this->password." access type: ".$this->acces_type." oauth service: ".$this->oauth_service." Max email per collect: ".$this->maxemailpercollect;
+ //dol_syslog($debugtext);
+
+ $storage = new DoliStorage($db, $conf);
+
+ try {
+ $tokenobj = $storage->retrieveAccessToken($OAUTH_SERVICENAME);
+ $expire = true;
+ // Is token expired or will token expire in the next 30 seconds
+ // if (is_object($tokenobj)) {
+ // $expire = ($tokenobj->getEndOfLife() !== -9002 && $tokenobj->getEndOfLife() !== -9001 && time() > ($tokenobj->getEndOfLife() - 30));
+ // }
+ // Token expired so we refresh it
+ if (is_object($tokenobj) && $expire) {
+ $credentials = new Credentials(
+ getDolGlobalString('OAUTH_'.$object->oauth_service.'_ID'),
+ getDolGlobalString('OAUTH_'.$object->oauth_service.'_SECRET'),
+ getDolGlobalString('OAUTH_'.$object->oauth_service.'_URLAUTHORIZE')
+ );
+ $serviceFactory = new \OAuth\ServiceFactory();
+ $oauthname = explode('-', $OAUTH_SERVICENAME);
+ // ex service is Google-Emails we need only the first part Google
+ $apiService = $serviceFactory->createService($oauthname[0], $credentials, $storage, array());
+ // We have to save the token because Google give it only once
+ $refreshtoken = $tokenobj->getRefreshToken();
+ $tokenobj = $apiService->refreshAccessToken($tokenobj);
+ $tokenobj->setRefreshToken($refreshtoken);
+ $storage->storeAccessToken($OAUTH_SERVICENAME, $tokenobj);
+ }
+ $tokenobj = $storage->retrieveAccessToken($OAUTH_SERVICENAME);
+ if (is_object($tokenobj)) {
+ $token = $tokenobj->getAccessToken();
+ } else {
+ $object->error = "Token not found";
+ return -1;
+ }
+ } catch (Exception $e) {
+ print $e->getMessage();
+ }
+
+ $cm = new ClientManager();
+ $client = $cm->make([
+ 'host' => $object->host,
+ 'port' => $object->port,
+ 'encryption' => 'ssl',
+ 'validate_cert' => true,
+ 'protocol' => 'imap',
+ 'username' => $object->login,
+ 'password' => $token,
+ 'authentication' => "oauth",
+ ]);
+ } else {
+ // Mode login/pass with PHP-IMAP
+ $cm = new ClientManager();
+ $client = $cm->make([
+ 'host' => $object->host,
+ 'port' => $object->port,
+ 'encryption' => 'ssl',
+ 'validate_cert' => true,
+ 'protocol' => 'imap',
+ 'username' => $object->login,
+ 'password' => $object->password,
+ 'authentication' => "login",
+ ]);
}
- if ($targetdir) {
- //$connectstringtarget = $connectstringserver.imap_utf7_encode($targetdir);
- $connectstringtarget = $connectstringserver.$object->getEncodedUtf7($targetdir);
+ try {
+ $client->connect();
+ } catch (ConnectionFailedException $e) {
+ print $e->getMessage();
}
- $timeoutconnect = empty($conf->global->MAIN_USE_CONNECT_TIMEOUT) ? 5 : $conf->global->MAIN_USE_CONNECT_TIMEOUT;
- $timeoutread = empty($conf->global->MAIN_USE_RESPONSE_TIMEOUT) ? 20 : $conf->global->MAIN_USE_RESPONSE_TIMEOUT;
-
- dol_syslog("imap_open connectstring=".$connectstringsource." login=".$object->login." password=".$object->password." timeoutconnect=".$timeoutconnect." timeoutread=".$timeoutread);
-
- $result1 = imap_timeout(IMAP_OPENTIMEOUT, $timeoutconnect); // timeout seems ignored with ssl connect
- $result2 = imap_timeout(IMAP_READTIMEOUT, $timeoutread);
- $result3 = imap_timeout(IMAP_WRITETIMEOUT, 5);
- $result4 = imap_timeout(IMAP_CLOSETIMEOUT, 5);
-
- dol_syslog("result1=".$result1." result2=".$result2." result3=".$result3." result4=".$result4);
-
- $connection = imap_open($connectstringsource, $object->login, $object->password);
-
- //dol_syslog("end imap_open connection=".var_export($connection, true));
- } catch (Exception $e) {
- print $e->getMessage();
- }
-
- if (!$connection) {
- $morehtml .= 'Failed to open IMAP connection '.$connectstringsource;
- if (function_exists('imap_last_error')) {
- $morehtml .= ' '.imap_last_error();
- }
- dol_syslog("Error ".$morehtml, LOG_WARNING);
- //var_dump(imap_errors())
+ $f = $client->getFolders(false, $object->source_directory);
+ $nbemail = $f[0]->examine()["exists"];
+ $morehtml .= $nbemail;
} else {
- dol_syslog("Imap connected. Now we call imap_num_msg()");
- $morehtml .= imap_num_msg($connection);
- }
+ try {
+ if ($sourcedir) {
+ //$connectstringsource = $connectstringserver.imap_utf7_encode($sourcedir);
+ $connectstringsource = $connectstringserver.$object->getEncodedUtf7($sourcedir);
+ }
+ if ($targetdir) {
+ //$connectstringtarget = $connectstringserver.imap_utf7_encode($targetdir);
+ $connectstringtarget = $connectstringserver.$object->getEncodedUtf7($targetdir);
+ }
- if ($connection) {
- dol_syslog("Imap close");
- imap_close($connection);
+ $timeoutconnect = empty($conf->global->MAIN_USE_CONNECT_TIMEOUT) ? 5 : $conf->global->MAIN_USE_CONNECT_TIMEOUT;
+ $timeoutread = empty($conf->global->MAIN_USE_RESPONSE_TIMEOUT) ? 20 : $conf->global->MAIN_USE_RESPONSE_TIMEOUT;
+
+ dol_syslog("imap_open connectstring=".$connectstringsource." login=".$object->login." password=".$object->password." timeoutconnect=".$timeoutconnect." timeoutread=".$timeoutread);
+
+ $result1 = imap_timeout(IMAP_OPENTIMEOUT, $timeoutconnect); // timeout seems ignored with ssl connect
+ $result2 = imap_timeout(IMAP_READTIMEOUT, $timeoutread);
+ $result3 = imap_timeout(IMAP_WRITETIMEOUT, 5);
+ $result4 = imap_timeout(IMAP_CLOSETIMEOUT, 5);
+
+ dol_syslog("result1=".$result1." result2=".$result2." result3=".$result3." result4=".$result4);
+
+ $connection = imap_open($connectstringsource, $object->login, $object->password);
+
+ //dol_syslog("end imap_open connection=".var_export($connection, true));
+ } catch (Exception $e) {
+ print $e->getMessage();
+ }
+
+ if (!$connection) {
+ $morehtml .= 'Failed to open IMAP connection '.$connectstringsource;
+ if (function_exists('imap_last_error')) {
+ $morehtml .= ' '.imap_last_error();
+ }
+ dol_syslog("Error ".$morehtml, LOG_WARNING);
+ //var_dump(imap_errors())
+ } else {
+ dol_syslog("Imap connected. Now we call imap_num_msg()");
+ $morehtml .= imap_num_msg($connection);
+ }
+
+ if ($connection) {
+ dol_syslog("Imap close");
+ imap_close($connection);
+ }
}
} else {
$morehtml .= 'id.'&action=scan&token='.newToken().'">'.img_picto('', 'refresh', 'class="paddingrightonly"').$langs->trans("Refresh").' ';
@@ -547,20 +649,21 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
print '';
$arrayoftypes = array(
- 'loadthirdparty'=>$langs->trans('LoadThirdPartyFromName', $langs->transnoentities("ThirdPartyName")),
- 'loadandcreatethirdparty'=>$langs->trans('LoadThirdPartyFromNameOrCreate', $langs->transnoentities("ThirdPartyName")),
- 'recordjoinpiece'=>'AttachJoinedDocumentsToObject',
- 'recordevent'=>'RecordEvent');
+ 'loadthirdparty' => $langs->trans('LoadThirdPartyFromName', $langs->transnoentities("ThirdPartyName")),
+ 'loadandcreatethirdparty' => $langs->trans('LoadThirdPartyFromNameOrCreate', $langs->transnoentities("ThirdPartyName")),
+ 'recordjoinpiece' => 'AttachJoinedDocumentsToObject',
+ 'recordevent' => 'RecordEvent'
+ );
$arrayoftypesnocondition = $arrayoftypes;
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$arrayoftypes['project'] = 'CreateLeadAndThirdParty';
}
$arrayoftypesnocondition['project'] = 'CreateLeadAndThirdParty';
- if (!empty($conf->ticket->enabled)) {
+ if (isModEnabled('ticket')) {
$arrayoftypes['ticket'] = 'CreateTicketAndThirdParty';
}
$arrayoftypesnocondition['ticket'] = 'CreateTicketAndThirdParty';
- if (!empty($conf->recruitment->enabled)) {
+ if (isModEnabled('recruitment')) {
$arrayoftypes['candidature'] = 'CreateCandidature';
}
$arrayoftypesnocondition['candidature'] = 'CreateCandidature';
diff --git a/htdocs/admin/eventorganization.php b/htdocs/admin/eventorganization.php
index 66c6cc9a204..40c86d79e13 100644
--- a/htdocs/admin/eventorganization.php
+++ b/htdocs/admin/eventorganization.php
@@ -278,7 +278,7 @@ if ($action == 'edit') {
include_once DOL_DOCUMENT_ROOT.'/core/lib/security2.lib.php';
print dolJSToSetRandomPassword($constname, 'generate_token'.$constname);
} elseif ($val['type'] == 'product') {
- if (!empty($conf->product->enabled) || !empty($conf->service->enabled)) {
+ if (isModEnabled("product") || isModEnabled("service")) {
$selected = (empty($conf->global->$constname) ? '' : $conf->global->$constname);
$form->select_produits($selected, $constname, '', 0);
}
diff --git a/htdocs/admin/events.php b/htdocs/admin/events.php
index b98f3775aad..ceb3c286ac3 100644
--- a/htdocs/admin/events.php
+++ b/htdocs/admin/events.php
@@ -111,7 +111,7 @@ print ' ';
print '';
print "";
-print getTitleFieldOfList("LogEvents", 0, $_SERVER["PHP_SELF"], '', '', '', '', $sortfield, $sortorder, '')."\n";
+print getTitleFieldOfList("TrackableSecurityEvents", 0, $_SERVER["PHP_SELF"], '', '', '', '', $sortfield, $sortorder, '')."\n";
print getTitleFieldOfList($selectedfields, 0, $_SERVER["PHP_SELF"], '', '', '', '', $sortfield, $sortorder, 'center maxwidthsearch ')."\n";
print " \n";
// Loop on each event type
diff --git a/htdocs/admin/expensereport.php b/htdocs/admin/expensereport.php
index 64cf24ca6fa..2418ec3e26c 100644
--- a/htdocs/admin/expensereport.php
+++ b/htdocs/admin/expensereport.php
@@ -6,7 +6,7 @@
* Copyright (C) 2005-2014 Regis Houssin
* Copyright (C) 2008 Raphael Bertrand (Resultic)
* Copyright (C) 2011-2013 Juanjo Menent
- * Copyright (C) 2011-2018 Philippe Grand
+ * Copyright (C) 2011-2022 Philippe Grand
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -148,7 +148,7 @@ if ($action == 'updateMask') {
$res2 = dolibarr_set_const($db, "EXPENSEREPORT_DRAFT_WATERMARK", trim($draft), 'chaine', 0, '', $conf->entity);
$res3 = 0;
- if (!empty($conf->project->enabled) && GETPOSTISSET('EXPENSEREPORT_PROJECT_IS_REQUIRED')) { // Option may not be provided
+ if (isModEnabled('project') && GETPOSTISSET('EXPENSEREPORT_PROJECT_IS_REQUIRED')) { // Option may not be provided
$res3 = dolibarr_set_const($db, 'EXPENSEREPORT_PROJECT_IS_REQUIRED', GETPOST('EXPENSEREPORT_PROJECT_IS_REQUIRED', 'int'), 'chaine', 0, '', $conf->entity);
}
@@ -471,7 +471,7 @@ print $form->textwithpicto($langs->trans("WatermarkOnDraftExpenseReports"), $htm
print ' ';
print ''."\n";
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
print '';
print $langs->trans('ProjectIsRequiredOnExpenseReports');
print ' ';
diff --git a/htdocs/admin/facture_situation.php b/htdocs/admin/facture_situation.php
index 609a6605d1a..350055348f8 100644
--- a/htdocs/admin/facture_situation.php
+++ b/htdocs/admin/facture_situation.php
@@ -130,12 +130,9 @@ include DOL_DOCUMENT_ROOT.'/core/actions_setmoduleoptions.inc.php';
$dirmodels = array_merge(array('/'), (array) $conf->modules_parts['models']);
-llxHeader(
- "",
- $langs->trans("BillsSetup"),
- 'EN:Invoice_Configuration|FR:Configuration_module_facture|ES:ConfiguracionFactura'
-);
+$help_yrl = 'EN:Invoice_Configuration|FR:Configuration_module_facture|ES:ConfiguracionFactura';
+llxHeader("", $langs->trans("BillsSetup"), $help_url);
$linkback = ''.$langs->trans("BackToModuleList").' ';
diff --git a/htdocs/admin/fckeditor.php b/htdocs/admin/fckeditor.php
index 3ea92bb48ad..3c3cd731a7d 100644
--- a/htdocs/admin/fckeditor.php
+++ b/htdocs/admin/fckeditor.php
@@ -62,11 +62,11 @@ $conditions = array(
'NOTE_PUBLIC' => 1,
'NOTE_PRIVATE' => 1,
'SOCIETE' => 1,
- 'PRODUCTDESC' => (!empty($conf->product->enabled) || !empty($conf->service->enabled)),
- 'DETAILS' => (isModEnabled('facture') || !empty($conf->propal->enabled) || !empty($conf->commande->enabled) || !empty($conf->supplier_proposal->enabled) || (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)),
+ 'PRODUCTDESC' => (isModEnabled("product") || isModEnabled("service")),
+ 'DETAILS' => (isModEnabled('facture') || isModEnabled("propal") || isModEnabled('commande') || isModEnabled('supplier_proposal') || (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")),
'USERSIGN' => 1,
'MAILING' => !empty($conf->mailing->enabled),
- 'MAIL' => (isModEnabled('facture') || !empty($conf->propal->enabled) || !empty($conf->commande->enabled)),
+ 'MAIL' => (isModEnabled('facture') || isModEnabled("propal") || isModEnabled('commande')),
'TICKET' => !empty($conf->ticket->enabled),
);
// Picto
diff --git a/htdocs/admin/hrm.php b/htdocs/admin/hrm.php
index cfe40c006b7..c568e6de39c 100644
--- a/htdocs/admin/hrm.php
+++ b/htdocs/admin/hrm.php
@@ -492,14 +492,14 @@ if ($action == 'edit') {
print ' ';
if ($val['type'] == 'textarea') {
- print ' ';
}
diff --git a/htdocs/admin/ihm.php b/htdocs/admin/ihm.php
index baf35de9a35..0695408c16d 100644
--- a/htdocs/admin/ihm.php
+++ b/htdocs/admin/ihm.php
@@ -385,6 +385,20 @@ if ($mode == 'other') {
print ' ';
print '';
+ // Show Quick Add link
+ print '' . $langs->trans("ShowQuickAddLink") . ' ';
+ print ajax_constantonoff("MAIN_USE_TOP_MENU_QUICKADD_DROPDOWN", array(), $conf->entity, 0, 0, 1, 0, 0, 0, '', 'other');
+ print ' ';
+ print ' ';
+
+ // Hide wiki link on login page
+ $pictohelp = ' ';
+ print '' . str_replace('{picto}', $pictohelp, $langs->trans("DisableLinkToHelp", '{picto}')) . ' ';
+ print ajax_constantonoff("MAIN_HELP_DISABLELINK", array(), $conf->entity, 0, 0, 1, 0, 0, 0, '', 'other');
+ //print $form->selectyesno('MAIN_HELP_DISABLELINK', isset($conf->global->MAIN_HELP_DISABLELINK) ? $conf->global->MAIN_HELP_DISABLELINK : 0, 1);
+ print ' ';
+ print ' ';
+
// Max size of lists
print '' . $langs->trans("DefaultMaxSizeList") . ' ';
print ' ';
@@ -449,12 +463,6 @@ if ($mode == 'other') {
print '';
*/
- // Show Quick Add link
- print '' . $langs->trans("ShowQuickAddLink") . ' ';
- print ajax_constantonoff("MAIN_USE_TOP_MENU_QUICKADD_DROPDOWN", array(), $conf->entity, 0, 0, 1, 0, 0, 0, '', 'other');
- print ' ';
- print ' ';
-
// Show bugtrack link
print '';
print $form->textwithpicto($langs->trans("ShowBugTrackLink", $langs->transnoentitiesnoconv("FindBug")), $langs->trans("ShowBugTrackLinkDesc"));
@@ -463,14 +471,6 @@ if ($mode == 'other') {
print ' ';
print ' ';
- // Hide wiki link on login page
- $pictohelp = ' ';
- print '' . str_replace('{picto}', $pictohelp, $langs->trans("DisableLinkToHelp", '{picto}')) . ' ';
- print ajax_constantonoff("MAIN_HELP_DISABLELINK", array(), $conf->entity, 0, 0, 1, 0, 0, 0, '', 'other');
- //print $form->selectyesno('MAIN_HELP_DISABLELINK', isset($conf->global->MAIN_HELP_DISABLELINK) ? $conf->global->MAIN_HELP_DISABLELINK : 0, 1);
- print ' ';
- print ' ';
-
// Disable javascript and ajax
print '' . $form->textwithpicto($langs->trans("DisableJavascript"), $langs->trans("DisableJavascriptNote")) . ' ';
print ajax_constantonoff("MAIN_DISABLE_JAVASCRIPT", array(), $conf->entity, 0, 0, 1, 0, 0, 0, '', 'other');
diff --git a/htdocs/admin/knowledgemanagement.php b/htdocs/admin/knowledgemanagement.php
index 041216014b0..b1710a53839 100644
--- a/htdocs/admin/knowledgemanagement.php
+++ b/htdocs/admin/knowledgemanagement.php
@@ -208,12 +208,12 @@ if ($action == 'edit') {
print ' ';
if ($val['type'] == 'textarea') {
- print '' . "\n";
+ print '' . "\n";
print $conf->global->{$constname};
print " \n";
- } elseif ($val['type']== 'html') {
+ } elseif ($val['type'] == 'html') {
require_once DOL_DOCUMENT_ROOT . '/core/class/doleditor.class.php';
- $doleditor = new DolEditor($constname, $conf->global->{$constname}, '', 160, 'dolibarr_notes', '', false, false, $conf->fckeditor->enabled, ROWS_5, '90%');
+ $doleditor = new DolEditor($constname, $conf->global->{$constname}, '', 160, 'dolibarr_notes', '', false, false, isModEnabled('fckeditor'), ROWS_5, '90%');
$doleditor->Create();
} elseif ($val['type'] == 'yesno') {
print $form->selectyesno($constname, $conf->global->{$constname}, 1);
diff --git a/htdocs/admin/ldap.php b/htdocs/admin/ldap.php
index ef488943a4b..568664b92b7 100644
--- a/htdocs/admin/ldap.php
+++ b/htdocs/admin/ldap.php
@@ -158,24 +158,24 @@ if (!empty($conf->global->LDAP_SYNCHRO_ACTIVE) && empty($conf->global->LDAP_USER
print ' ';
// Synchro contact active
-if (!empty($conf->societe->enabled)) {
+if (isModEnabled('societe')) {
print ''.$langs->trans("LDAPDnContactActive").' ';
print $formldap->selectLdapDnSynchroActive(getDolGlobalInt('LDAP_CONTACT_ACTIVE'), 'activecontact', array(Ldap::SYNCHRO_LDAP_TO_DOLIBARR));
- print ' '.$langs->trans("LDAPDnContactActiveExample").' ';
+ print '' . $langs->trans("LDAPDnContactActiveExample") . ' ';
}
// Synchro member active
-if (!empty($conf->adherent->enabled)) {
- print ''.$langs->trans("LDAPDnMemberActive").' ';
+if (isModEnabled('adherent')) {
+ print ' ' . $langs->trans("LDAPDnMemberActive") . ' ';
print $formldap->selectLdapDnSynchroActive(getDolGlobalInt('LDAP_MEMBER_ACTIVE'), 'activemembers', array(), 2);
- print ' '.$langs->trans("LDAPDnMemberActiveExample").' ';
+ print '' . $langs->trans("LDAPDnMemberActiveExample") . ' ';
}
// Synchro member type active
-if (!empty($conf->adherent->enabled)) {
- print ''.$langs->trans("LDAPDnMemberTypeActive").' ';
+if (isModEnabled('adherent')) {
+ print ' ' . $langs->trans("LDAPDnMemberTypeActive") . ' ';
print $formldap->selectLdapDnSynchroActive(getDolGlobalInt('LDAP_MEMBER_TYPE_ACTIVE'), 'activememberstypes', array(), 2);
- print ' '.$langs->trans("LDAPDnMemberTypeActiveExample").' ';
+ print '' . $langs->trans("LDAPDnMemberTypeActiveExample") . ' ';
}
// Fields from hook
diff --git a/htdocs/admin/limits.php b/htdocs/admin/limits.php
index 1209f41c48e..d644f2bd2f6 100644
--- a/htdocs/admin/limits.php
+++ b/htdocs/admin/limits.php
@@ -36,7 +36,7 @@ if (!$user->admin) {
$action = GETPOST('action', 'aZ09');
$currencycode = GETPOST('currencycode', 'alpha');
-if (!empty($conf->multicurrency->enabled) && !empty($conf->global->MULTICURRENCY_USE_LIMIT_BY_CURRENCY)) {
+if (isModEnabled('multicompany') && !empty($conf->global->MULTICURRENCY_USE_LIMIT_BY_CURRENCY)) {
// When MULTICURRENCY_USE_LIMIT_BY_CURRENCY is on, we use always a defined currency code instead of '' even for default.
$currencycode = (!empty($currencycode) ? $currencycode : $conf->currency);
}
@@ -105,12 +105,12 @@ print load_fiche_titre($title, '', 'title_setup');
$aCurrencies = array($conf->currency); // Default currency always first position
-if (!empty($conf->multicurrency->enabled) && !empty($conf->global->MULTICURRENCY_USE_LIMIT_BY_CURRENCY)) {
- require_once DOL_DOCUMENT_ROOT.'/core/lib/multicurrency.lib.php';
+if (isModEnabled('multicompany') && !empty($conf->global->MULTICURRENCY_USE_LIMIT_BY_CURRENCY)) {
+ require_once DOL_DOCUMENT_ROOT . '/core/lib/multicurrency.lib.php';
- $sql = "SELECT rowid, code FROM ".MAIN_DB_PREFIX."multicurrency";
- $sql .= " WHERE entity = ".((int) $conf->entity);
- $sql .= " AND code <> '".$db->escape($conf->currency)."'"; // Default currency always first position
+ $sql = "SELECT rowid, code FROM " . MAIN_DB_PREFIX . "multicurrency";
+ $sql .= " WHERE entity = " . ((int) $conf->entity);
+ $sql .= " AND code <> '" . $db->escape($conf->currency) . "'"; // Default currency always first position
$resql = $db->query($sql);
if ($resql) {
while ($obj = $db->fetch_object($resql)) {
@@ -129,11 +129,11 @@ print ''.$langs->trans("LimitsDesc")." \n"
print " \n";
if ($action == 'edit') {
- print '';
- print ' ';
+ print ' ';
+ print ' ';
print ' ';
- if (!empty($conf->multicurrency->enabled) && !empty($conf->global->MULTICURRENCY_USE_LIMIT_BY_CURRENCY)) {
- print ' ';
+ if (isModEnabled('multicompany') && !empty($conf->global->MULTICURRENCY_USE_LIMIT_BY_CURRENCY)) {
+ print ' ';
}
clearstatcache();
@@ -194,7 +194,7 @@ if ($action == 'edit') {
print '';
}
-if (!empty($conf->multicurrency->enabled) && !empty($conf->global->MULTICURRENCY_USE_LIMIT_BY_CURRENCY)) {
+if (isModEnabled('multicompany') && !empty($conf->global->MULTICURRENCY_USE_LIMIT_BY_CURRENCY)) {
if (!empty($aCurrencies) && count($aCurrencies) > 1) {
print dol_get_fiche_end();
}
diff --git a/htdocs/admin/loan.php b/htdocs/admin/loan.php
index 72b2a15d678..3c777e1f187 100644
--- a/htdocs/admin/loan.php
+++ b/htdocs/admin/loan.php
@@ -26,7 +26,7 @@ require '../main.inc.php';
// Class
require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php';
}
@@ -76,7 +76,7 @@ if ($action == 'update') {
llxHeader();
$form = new Form($db);
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$formaccounting = new FormAccounting($db);
}
@@ -100,14 +100,14 @@ foreach ($list as $key) {
// Param
$label = $langs->trans($key);
- print ''.$label.' ';
+ print '' . $label . ' ';
// Value
print '';
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
print $formaccounting->select_account(getDolGlobalString($key), $key, 1, '', 1, 1);
} else {
- print ' ';
+ print ' ';
}
print ' ';
}
diff --git a/htdocs/admin/mailman.php b/htdocs/admin/mailman.php
index 8b003ce2d4e..eca17ea8e76 100644
--- a/htdocs/admin/mailman.php
+++ b/htdocs/admin/mailman.php
@@ -158,7 +158,7 @@ if (!empty($conf->global->ADHERENT_USE_MAILMAN)) {
$link .= '';
// Edition des varibales globales
$constantes = array(
- 'ADHERENT_MAILMAN_ADMINPW',
+ 'ADHERENT_MAILMAN_ADMIN_PASSWORD',
'ADHERENT_MAILMAN_URL',
'ADHERENT_MAILMAN_UNSUB_URL',
'ADHERENT_MAILMAN_LISTS'
diff --git a/htdocs/admin/mails.php b/htdocs/admin/mails.php
index 0504315075d..2f0f4cd3233 100644
--- a/htdocs/admin/mails.php
+++ b/htdocs/admin/mails.php
@@ -261,9 +261,9 @@ if ($action == 'edit') {
jQuery("#MAIN_MAIL_SMTP_SERVER").show();
jQuery("#MAIN_MAIL_SMTP_PORT").show();
jQuery("#smtp_server_mess").hide();
- jQuery("#smtp_port_mess").hide();
+ jQuery("#smtp_port_mess").hide();
jQuery(".smtp_method").show();
- jQuery(".dkim").hide();
+ jQuery(".dkim").hide();
jQuery(".smtp_auth_method").show();
}
if (jQuery("#MAIN_MAIL_SENDMODE").val()==\'swiftmailer\')
@@ -290,9 +290,9 @@ if ($action == 'edit') {
jQuery("#MAIN_MAIL_SMTP_PORT").show();
jQuery("#smtp_server_mess").hide();
jQuery("#smtp_port_mess").hide();
- jQuery(".smtp_method").show();
+ jQuery(".smtp_method").show();
jQuery(".dkim").show();
- jQuery(".smtp_auth_method").show();
+ jQuery(".smtp_auth_method").show();
}
}
function change_smtp_auth_method() {
@@ -404,7 +404,7 @@ if ($action == 'edit') {
}
print '';
// SuperAdministrator access only
- if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) {
+ if (!isModEnabled('multicompany') || ($user->admin && !$user->entity)) {
print ' ';
print ' ';
print ''.$langs->trans("SeeLocalSendMailSetup").' ';
@@ -435,7 +435,7 @@ if ($action == 'edit') {
}
print ' ';
// SuperAdministrator access only
- if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) {
+ if (!isModEnabled('multicompany') || ($user->admin && !$user->entity)) {
print ' ';
print ' ';
print ''.$langs->trans("SeeLocalSendMailSetup").' ';
@@ -453,7 +453,7 @@ if ($action == 'edit') {
$mainstmpid = (!empty($conf->global->MAIN_MAIL_SMTPS_ID) ? $conf->global->MAIN_MAIL_SMTPS_ID : '');
print ' '.$langs->trans("MAIN_MAIL_SMTPS_ID").' ';
// SuperAdministrator access only
- if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) {
+ if (!isModEnabled('multicompany') || ($user->admin && !$user->entity)) {
print ' ';
} else {
$htmltext = $langs->trans("ContactSuperAdminForChange");
@@ -467,7 +467,7 @@ if ($action == 'edit') {
// OAUTH
if (!empty($conf->use_javascript_ajax) || (isset($conf->global->MAIN_MAIL_SENDMODE) && in_array($conf->global->MAIN_MAIL_SENDMODE, array('smtps', 'swiftmailer')))) {
print ' '.$langs->trans("MAIN_MAIL_SMTPS_AUTH_TYPE").' ';
- if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) {
+ if (!isModEnabled('multicompany') || ($user->admin && !$user->entity)) {
print ' ';
print ''.$langs->trans("UsePassword").' ';
print ' ';
@@ -489,7 +489,7 @@ if ($action == 'edit') {
print $form->textwithpicto($langs->trans("MAIN_MAIL_SMTPS_PW"), $langs->trans("WithGMailYouCanCreateADedicatedPassword"));
print ' ';
// SuperAdministrator access only
- if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) {
+ if (!isModEnabled('multicompany') || ($user->admin && !$user->entity)) {
print ' ';
} else {
$htmltext = $langs->trans("ContactSuperAdminForChange");
@@ -911,7 +911,7 @@ if ($action == 'edit') {
print ''.$langs->trans("DoTestSend").' ';
- if (!empty($conf->fckeditor->enabled)) {
+ if (isModEnabled('fckeditor')) {
print ''.$langs->trans("DoTestSendHTML").' ';
}
}
diff --git a/htdocs/admin/mails_emailing.php b/htdocs/admin/mails_emailing.php
index 79ddda792e0..dbdf66f8282 100644
--- a/htdocs/admin/mails_emailing.php
+++ b/htdocs/admin/mails_emailing.php
@@ -71,7 +71,15 @@ if ($action == 'update' && !$cancel) {
dolibarr_set_const($db, "MAIN_MAIL_SMTP_PORT_EMAILING", GETPOST("MAIN_MAIL_SMTP_PORT_EMAILING"), 'chaine', 0, '', $conf->entity);
dolibarr_set_const($db, "MAIN_MAIL_SMTP_SERVER_EMAILING", GETPOST("MAIN_MAIL_SMTP_SERVER_EMAILING"), 'chaine', 0, '', $conf->entity);
dolibarr_set_const($db, "MAIN_MAIL_SMTPS_ID_EMAILING", GETPOST("MAIN_MAIL_SMTPS_ID_EMAILING"), 'chaine', 0, '', $conf->entity);
- dolibarr_set_const($db, "MAIN_MAIL_SMTPS_PW_EMAILING", GETPOST("MAIN_MAIL_SMTPS_PW_EMAILING"), 'chaine', 0, '', $conf->entity);
+ if (GETPOSTISSET("MAIN_MAIL_SMTPS_PW_EMAILING")) {
+ dolibarr_set_const($db, "MAIN_MAIL_SMTPS_PW_EMAILING", GETPOST("MAIN_MAIL_SMTPS_PW_EMAILING", 'none'), 'chaine', 0, '', $conf->entity);
+ }
+ if (GETPOSTISSET("MAIN_MAIL_SMTPS_AUTH_TYPE_EMAILING")) {
+ dolibarr_set_const($db, "MAIN_MAIL_SMTPS_AUTH_TYPE_EMAILING", GETPOST("MAIN_MAIL_SMTPS_AUTH_TYPE_EMAILING", 'chaine'), 'chaine', 0, '', $conf->entity);
+ }
+ if (GETPOSTISSET("MAIN_MAIL_SMTPS_OAUTH_SERVICE_EMAILING")) {
+ dolibarr_set_const($db, "MAIN_MAIL_SMTPS_OAUTH_SERVICE_EMAILING", GETPOST("MAIN_MAIL_SMTPS_OAUTH_SERVICE_EMAILING", 'chaine'), 'chaine', 0, '', $conf->entity);
+ }
dolibarr_set_const($db, "MAIN_MAIL_EMAIL_TLS_EMAILING", GETPOST("MAIN_MAIL_EMAIL_TLS_EMAILING"), 'chaine', 0, '', $conf->entity);
dolibarr_set_const($db, "MAIN_MAIL_EMAIL_STARTTLS_EMAILING", GETPOST("MAIN_MAIL_EMAIL_STARTTLS_EMAILING"), 'chaine', 0, '', $conf->entity);
dolibarr_set_const($db, "MAIN_MAIL_EMAIL_SMTP_ALLOW_SELF_SIGNED_EMAILING", GETPOST("MAIN_MAIL_EMAIL_SMTP_ALLOW_SELF_SIGNED_EMAILING"), 'chaine', 0, '', $conf->entity);
@@ -145,6 +153,24 @@ if (version_compare(phpversion(), '7.0', '>=')) {
$listofmethods['swiftmailer'] = 'Swift Mailer socket library';
}
+// List of oauth services
+$oauthservices = array();
+
+foreach ($conf->global as $key => $val) {
+ if (!empty($val) && preg_match('/^OAUTH_.*_ID$/', $key)) {
+ $key = preg_replace('/^OAUTH_/', '', $key);
+ $key = preg_replace('/_ID$/', '', $key);
+ if (preg_match('/^.*-/', $key)) {
+ $name = preg_replace('/^.*-/', '', $key);
+ } else {
+ $name = $langs->trans("NoName");
+ }
+ $provider = preg_replace('/-.*$/', '', $key);
+ $provider = ucfirst(strtolower($provider));
+
+ $oauthservices[$key] = $name." (".$provider.")";
+ }
+}
if ($action == 'edit') {
if ($conf->use_javascript_ajax) {
@@ -170,6 +196,8 @@ if ($action == 'edit') {
jQuery("#MAIN_MAIL_EMAIL_STARTTLS_EMAILING").prop("disabled", true);
jQuery("#MAIN_MAIL_EMAIL_SMTP_ALLOW_SELF_SIGNED_EMAILING").val(0);
jQuery("#MAIN_MAIL_EMAIL_SMTP_ALLOW_SELF_SIGNED_EMAILING").prop("disabled", true);
+ jQuery(".smtp_method").hide();
+ jQuery(".smtp_auth_method").hide();
';
if ($linuxlike) {
print '
@@ -201,9 +229,11 @@ if ($action == 'edit') {
jQuery("#MAIN_MAIL_SMTP_PORT_EMAILING").removeAttr("disabled");
jQuery("#MAIN_MAIL_SMTP_SERVER_EMAILING").show();
jQuery("#MAIN_MAIL_SMTP_PORT_EMAILING").show();
+ jQuery("#smtp_port_mess").hide();
jQuery("#smtp_server_mess").hide();
- jQuery("#smtp_port_mess").hide();
- }
+ jQuery(".smtp_method").show();
+ jQuery(".smtp_auth_method").show();
+ }
if (jQuery("#MAIN_MAIL_SENDMODE_EMAILING").val()==\'swiftmailer\')
{
jQuery(".drag").show();
@@ -219,12 +249,35 @@ if ($action == 'edit') {
jQuery("#MAIN_MAIL_SMTP_PORT_EMAILING").show();
jQuery("#smtp_server_mess").hide();
jQuery("#smtp_port_mess").hide();
+ jQuery(".smtp_method").show();
+ jQuery(".smtp_auth_method").show();
}
}
+ function change_smtp_auth_method() {
+ console.log(jQuery("#radio_pw").prop("checked"));
+ if (jQuery("#MAIN_MAIL_SENDMODE_EMAILING").val()==\'smtps\' && jQuery("#radio_oauth").prop("checked")) {
+ jQuery(".smtp_oauth_service").show();
+ jQuery(".smtp_pw").hide();
+ } else if (jQuery("#MAIN_MAIL_SENDMODE_EMAILING").val()==\'swiftmailer\' && jQuery("#radio_oauth").prop("checked")) {
+ jQuery(".smtp_oauth_service").show();
+ jQuery(".smtp_pw").hide();
+ } else if(jQuery("#MAIN_MAIL_SENDMODE_EMAILING").val()==\'mail\' || jQuery("#MAIN_MAIL_SENDMODE_EMAILING").val()==\'default\'){
+ jQuery(".smtp_oauth_service").hide();
+ jQuery(".smtp_pw").hide();
+ } else {
+ jQuery(".smtp_oauth_service").hide();
+ jQuery(".smtp_pw").show();
+ }
+ }
initfields();
- jQuery("#MAIN_MAIL_SENDMODE_EMAILING").change(function() {
+ change_smtp_auth_method();
+ jQuery("#MAIN_MAIL_SENDMODE_EMAILING").change(function() {
initfields();
- });
+ change_smtp_auth_method();
+ });
+ jQuery("#radio_pw, #radio_oauth").change(function() {
+ change_smtp_auth_method();
+ });
jQuery("#MAIN_MAIL_EMAIL_TLS_EMAILING").change(function() {
if (jQuery("#MAIN_MAIL_EMAIL_TLS_EMAILING").val() == 1)
jQuery("#MAIN_MAIL_EMAIL_STARTTLS_EMAILING").val(0);
@@ -237,7 +290,7 @@ if ($action == 'edit') {
else
jQuery("#MAIN_MAIL_EMAIL_SMTP_ALLOW_SELF_SIGNED_EMAILING").val(0);
});
- })';
+ })';
print ''."\n";
}
@@ -294,16 +347,16 @@ if ($action == 'edit') {
}
print ' ';
// SuperAdministrator access only
- if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) {
- print ' ';
- print ' ';
- print ''.$langs->trans("SeeLocalSendMailSetup").' ';
- print ' '.$langs->trans("SeeLinkToOnlineDocumentation").' ';
+ if (!isModEnabled('multicompany') || ($user->admin && !$user->entity)) {
+ print ' ';
+ print ' ';
+ print '' . $langs->trans("SeeLocalSendMailSetup") . ' ';
+ print ' ' . $langs->trans("SeeLinkToOnlineDocumentation") . ' ';
} else {
$text = !empty($mainserver) ? $mainserver : $smtpserver;
$htmltext = $langs->trans("ContactSuperAdminForChange");
print $form->textwithpicto($text, $htmltext, 1, 'superadmin');
- print ' ';
+ print ' ';
}
print ' ';
}
@@ -326,15 +379,15 @@ if ($action == 'edit') {
}
print '';
// SuperAdministrator access only
- if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) {
- print ' ';
- print ' ';
- print ''.$langs->trans("SeeLocalSendMailSetup").' ';
+ if (!isModEnabled('multicompany') || ($user->admin && !$user->entity)) {
+ print ' ';
+ print ' ';
+ print '' . $langs->trans("SeeLocalSendMailSetup") . ' ';
} else {
$text = (!empty($mainport) ? $mainport : $smtpport);
$htmltext = $langs->trans("ContactSuperAdminForChange");
print $form->textwithpicto($text, $htmltext, 1, 'superadmin');
- print ' ';
+ print ' ';
}
}
print ' ';
@@ -342,14 +395,32 @@ if ($action == 'edit') {
// ID
if (!empty($conf->use_javascript_ajax) || (isset($conf->global->MAIN_MAIL_SENDMODE_EMAILING) && in_array($conf->global->MAIN_MAIL_SENDMODE_EMAILING, array('smtps', 'swiftmailer')))) {
$mainstmpid = (!empty($conf->global->MAIN_MAIL_SMTPS_ID_EMAILING) ? $conf->global->MAIN_MAIL_SMTPS_ID_EMAILING : '');
- print ''.$langs->trans("MAIN_MAIL_SMTPS_ID").' ';
+ print ' ' . $langs->trans("MAIN_MAIL_SMTPS_ID") . ' ';
// SuperAdministrator access only
- if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) {
- print ' ';
+ if (!isModEnabled('multicompany') || ($user->admin && !$user->entity)) {
+ print ' ';
} else {
$htmltext = $langs->trans("ContactSuperAdminForChange");
print $form->textwithpicto($conf->global->MAIN_MAIL_SMTPS_ID_EMAILING, $htmltext, 1, 'superadmin');
- print ' ';
+ print ' ';
+ }
+ print ' ';
+ }
+
+ // OAUTH
+ if (!empty($conf->use_javascript_ajax) || (isset($conf->global->MAIN_MAIL_SENDMODE_EMAILING) && in_array($conf->global->MAIN_MAIL_SENDMODE_EMAILING, array('smtps', 'swiftmailer')))) {
+ print ''.$langs->trans("MAIN_MAIL_SMTPS_AUTH_TYPE").' ';
+ if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) {
+ print ' ';
+ print ''.$langs->trans("UsePassword").' ';
+ print ' ';
+ print ' ';
+ print ''.$form->textwithpicto($langs->trans("UseOauth"), $langs->trans("OauthNotAvailableForAllAndHadToBeCreatedBefore")).' ';
+ } else {
+ $value = getDolGlobalString('MAIN_MAIL_SMTPS_AUTH_TYPE_EMAILING', 'LOGIN');
+ $htmltext = $langs->trans("ContactSuperAdminForChange");
+ print $form->textwithpicto($langs->trans("MAIN_MAIL_SMTPS_AUTH_TYPE"), $htmltext, 1, 'superadmin');
+ print ' ';
}
print ' ';
}
@@ -357,18 +428,38 @@ if ($action == 'edit') {
// PW
if (!empty($conf->use_javascript_ajax) || (isset($conf->global->MAIN_MAIL_SENDMODE_EMAILING) && in_array($conf->global->MAIN_MAIL_SENDMODE_EMAILING, array('smtps', 'swiftmailer')))) {
$mainsmtppw = (!empty($conf->global->MAIN_MAIL_SMTPS_PW_EMAILING) ? $conf->global->MAIN_MAIL_SMTPS_PW_EMAILING : '');
- print ''.$langs->trans("MAIN_MAIL_SMTPS_PW").' ';
+ print ' ' . $langs->trans("MAIN_MAIL_SMTPS_PW") . ' ';
// SuperAdministrator access only
- if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) {
- print ' ';
+ if (!isModEnabled('multicompany') || ($user->admin && !$user->entity)) {
+ print ' ';
} else {
$htmltext = $langs->trans("ContactSuperAdminForChange");
print $form->textwithpicto($conf->global->MAIN_MAIL_SMTPS_PW_EMAILING, $htmltext, 1, 'superadmin');
- print ' ';
+ print ' ';
}
print ' ';
}
+ // OAUTH service provider
+ if (!empty($conf->use_javascript_ajax) || (isset($conf->global->MAIN_MAIL_SENDMODE_EMAILING) && in_array($conf->global->MAIN_MAIL_SENDMODE_EMAILING, array('smtps', 'swiftmailer')))) {
+ print ''.$langs->trans("MAIN_MAIL_SMTPS_OAUTH_SERVICE").' ';
+
+ // SuperAdministrator access only
+ if ((empty($conf->global->MAIN_MODULE_MULTICOMPANY)) || ($user->admin && !$user->entity)) {
+ print $form->selectarray('MAIN_MAIL_SMTPS_OAUTH_SERVICE_EMAILING', $oauthservices, $conf->global->MAIN_MAIL_SMTPS_OAUTH_SERVICE_EMAILING);
+ } else {
+ $text = $oauthservices[$conf->global->MAIN_MAIL_SMTPS_OAUTH_SERVICE_EMAILING];
+ if (empty($text)) {
+ $text = $langs->trans("Undefined");
+ }
+ $htmltext = $langs->trans("ContactSuperAdminForChange");
+ print $form->textwithpicto($text, $htmltext, 1, 'superadmin');
+ print ' ';
+ }
+ print ' ';
+ }
+
+
// TLS
print ''.$langs->trans("MAIN_MAIL_EMAIL_TLS").' ';
if (!empty($conf->use_javascript_ajax) || (isset($conf->global->MAIN_MAIL_SENDMODE_EMAILING) && in_array($conf->global->MAIN_MAIL_SENDMODE_EMAILING, array('smtps', 'swiftmailer')))) {
@@ -458,11 +549,28 @@ if ($action == 'edit') {
print ' '.$langs->trans("MAIN_MAIL_SMTPS_ID").' '.getDolGlobalString('MAIN_MAIL_SMTPS_ID_EMAILING').' ';
}
+ // AUTH method
+ if (in_array(getDolGlobalString('MAIN_MAIL_SENDMODE_EMAILING'), array('smtps', 'swiftmailer'))) {
+ $authtype = getDolGlobalString('MAIN_MAIL_SMTPS_AUTH_TYPE_EMAILING', 'LOGIN');
+ $text = ($authtype === "LOGIN") ? $langs->trans("UsePassword") : ($authtype === "XOAUTH2" ? $langs->trans("UseOauth") : '') ;
+ print ''.$langs->trans("MAIN_MAIL_SMTPS_AUTH_TYPE").' '.$text.' ';
+ }
+
// SMTPS PW
- if (isset($conf->global->MAIN_MAIL_SENDMODE_EMAILING) && in_array($conf->global->MAIN_MAIL_SENDMODE_EMAILING, array('smtps', 'swiftmailer'))) {
+ if (isset($conf->global->MAIN_MAIL_SENDMODE_EMAILING) && in_array($conf->global->MAIN_MAIL_SENDMODE_EMAILING, array('smtps', 'swiftmailer')) && getDolGlobalString('MAIN_MAIL_SMTPS_AUTH_TYPE_EMAILING') != "XOAUTH2") {
print ''.$langs->trans("MAIN_MAIL_SMTPS_PW").' '.preg_replace('/./', '*', getDolGlobalString('MAIN_MAIL_SMTPS_PW_EMAILING')).' ';
}
+ // SMTPS oauth service
+ if (in_array(getDolGlobalString('MAIN_MAIL_SENDMODE_EMAILING'), array('smtps', 'swiftmailer')) && getDolGlobalString('MAIN_MAIL_SMTPS_AUTH_TYPE_EMAILING') === "XOAUTH2") {
+ $text = $oauthservices[$conf->global->MAIN_MAIL_SMTPS_OAUTH_SERVICE_EMAILING];
+ if (empty($text)) {
+ $text = $langs->trans("Undefined").img_warning();
+ }
+ print ''.$langs->trans("MAIN_MAIL_SMTPS_OAUTH_SERVICE_EMAILING").' '.$text.' ';
+ }
+
+
// TLS
print ''.$langs->trans("MAIN_MAIL_EMAIL_TLS").' ';
if (isset($conf->global->MAIN_MAIL_SENDMODE_EMAILING) && in_array($conf->global->MAIN_MAIL_SENDMODE_EMAILING, array('smtps', 'swiftmailer'))) {
@@ -533,16 +641,16 @@ if ($action == 'edit') {
if (!empty($conf->global->MAIN_MAIL_SENDMODE_EMAILING) && $conf->global->MAIN_MAIL_SENDMODE_EMAILING != 'default') {
if ($conf->global->MAIN_MAIL_SENDMODE_EMAILING != 'mail' || !$linuxlike) {
if (function_exists('fsockopen') && $port && $server) {
- print ''.$langs->trans("DoTestServerAvailability").' ';
+ print '' . $langs->trans("DoTestServerAvailability") . ' ';
}
} else {
- print ''.$langs->trans("DoTestServerAvailability").' ';
+ print '' . $langs->trans("DoTestServerAvailability") . ' ';
}
- print ''.$langs->trans("DoTestSend").' ';
+ print '' . $langs->trans("DoTestSend") . ' ';
- if (!empty($conf->fckeditor->enabled)) {
- print ''.$langs->trans("DoTestSendHTML").' ';
+ if (isModEnabled('fckeditor')) {
+ print '' . $langs->trans("DoTestSendHTML") . ' ';
}
}
diff --git a/htdocs/admin/mails_senderprofile_list.php b/htdocs/admin/mails_senderprofile_list.php
index db92c33a7fb..3f72fc77c6c 100644
--- a/htdocs/admin/mails_senderprofile_list.php
+++ b/htdocs/admin/mails_senderprofile_list.php
@@ -285,7 +285,7 @@ foreach($object->fields as $key => $val)
$sql .= "t.".$key.", ";
}
// Add fields from extrafields
-if (! empty($extrafields->attributes[$object->table_element]['label'])) {
+if (!empty($extrafields->attributes[$object->table_element]['label'])) {
foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) $sql.=($extrafields->attributes[$object->table_element]['type'][$key] != 'separate' ? "ef.".$key.', ' : '');
}
// Add where from hooks
diff --git a/htdocs/admin/mails_templates.php b/htdocs/admin/mails_templates.php
index 0c12ba1a3a0..d65bcefb11f 100644
--- a/htdocs/admin/mails_templates.php
+++ b/htdocs/admin/mails_templates.php
@@ -45,10 +45,10 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php';
// Load translation files required by the page
$langsArray=array("errors", "admin", "mails", "languages");
-if (!empty($conf->adherent->enabled)) {
+if (isModEnabled('adherent')) {
$langsArray[]='members';
}
-if (!empty($conf->eventorganization->enabled)) {
+if (isModEnabled('eventorganization')) {
$langsArray[]='eventorganization';
}
@@ -179,58 +179,58 @@ $elementList = array();
$elementList['all'] = '-- '.dol_escape_htmltag($langs->trans("All")).' --';
$elementList['none'] = '-- '.dol_escape_htmltag($langs->trans("None")).' --';
$elementList['user'] = img_picto('', 'user', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToUser'));
-if (!empty($conf->adherent->enabled) && !empty($user->rights->adherent->lire)) {
+if (isModEnabled('adherent') && !empty($user->rights->adherent->lire)) {
$elementList['member'] = img_picto('', 'object_member', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToMember'));
}
-if (!empty($conf->recruitment->enabled) && !empty($user->rights->recruitment->recruitmentjobposition->read)) {
+if (isModEnabled('recruitment') && !empty($user->rights->recruitment->recruitmentjobposition->read)) {
$elementList['recruitmentcandidature_send'] = img_picto('', 'recruitmentcandidature', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('RecruitmentCandidatures'));
}
-if (!empty($conf->societe->enabled) && !empty($user->rights->societe->lire)) {
+if (isModEnabled("societe") && !empty($user->rights->societe->lire)) {
$elementList['thirdparty'] = img_picto('', 'company', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToThirdparty'));
}
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$elementList['project'] = img_picto('', 'project', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToProject'));
}
-if (!empty($conf->propal->enabled) && !empty($user->rights->propal->lire)) {
+if (isModEnabled("propal") && !empty($user->rights->propal->lire)) {
$elementList['propal_send'] = img_picto('', 'propal', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToSendProposal'));
}
-if (!empty($conf->commande->enabled) && !empty($user->rights->commande->lire)) {
+if (isModEnabled('commande') && !empty($user->rights->commande->lire)) {
$elementList['order_send'] = img_picto('', 'order', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToSendOrder'));
}
if (isModEnabled('facture') && !empty($user->rights->facture->lire)) {
$elementList['facture_send'] = img_picto('', 'bill', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToSendInvoice'));
}
-if (!empty($conf->expedition->enabled)) {
+if (isModEnabled("expedition")) {
$elementList['shipping_send'] = img_picto('', 'dolly', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToSendShipment'));
}
-if (!empty($conf->reception->enabled)) {
+if (isModEnabled("reception")) {
$elementList['reception_send'] = img_picto('', 'dollyrevert', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToSendReception'));
}
if (!empty($conf->ficheinter->enabled)) {
$elementList['fichinter_send'] = img_picto('', 'intervention', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToSendIntervention'));
}
-if (!empty($conf->supplier_proposal->enabled)) {
+if (isModEnabled('supplier_proposal')) {
$elementList['supplier_proposal_send'] = img_picto('', 'propal', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToSendSupplierRequestForQuotation'));
}
-if ((!empty($conf->fournisseur->enabled) && !empty($user->rights->fournisseur->commande->lire) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || (!empty($conf->supplier_order->enabled) && !empty($user->rights->supplier_order->lire))) {
+if ((isModEnabled("fournisseur") && !empty($user->rights->fournisseur->commande->lire) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || (isModEnabled("supplier_order") && !empty($user->rights->supplier_order->lire))) {
$elementList['order_supplier_send'] = img_picto('', 'order', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToSendSupplierOrder'));
}
-if ((!empty($conf->fournisseur->enabled) && !empty($user->rights->fournisseur->facture->lire) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || (!empty($conf->supplier_invoice->enabled) && !empty($user->rights->supplier_invoice->lire))) {
+if ((isModEnabled("fournisseur") && !empty($user->rights->fournisseur->facture->lire) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || (isModEnabled("supplier_invoice") && !empty($user->rights->supplier_invoice->lire))) {
$elementList['invoice_supplier_send'] = img_picto('', 'bill', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToSendSupplierInvoice'));
}
-if (!empty($conf->contrat->enabled) && !empty($user->rights->contrat->lire)) {
+if (isModEnabled('contrat') && !empty($user->rights->contrat->lire)) {
$elementList['contract'] = img_picto('', 'contract', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToSendContract'));
}
if (!empty($conf->ticket->enabled) && !empty($user->rights->ticket->read)) {
$elementList['ticket_send'] = img_picto('', 'ticket', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToTicket'));
}
-if (!empty($conf->expensereport->enabled) && !empty($user->rights->expensereport->lire)) {
+if (isModEnabled('expensereport') && !empty($user->rights->expensereport->lire)) {
$elementList['expensereport_send'] = img_picto('', 'trip', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToExpenseReport'));
}
if (isModEnabled('agenda')) {
$elementList['actioncomm_send'] = img_picto('', 'action', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToSendEventPush'));
}
-if (!empty($conf->eventorganization->enabled) && !empty($user->rights->eventorganization->read)) {
+if (isModEnabled('eventorganization') && !empty($user->rights->eventorganization->read)) {
$elementList['conferenceorbooth'] = img_picto('', 'action', 'class="pictofixedwidth"').dol_escape_htmltag($langs->trans('MailToSendEventOrganization'));
}
if (!empty($conf->partnership->enabled) && !empty($user->rights->partnership->read)) {
@@ -823,7 +823,7 @@ if ($action == 'add') {
} elseif ($tmpfieldlist == 'joinfiles') {
print ' ';
} else {
- // print ''.(! empty($obj->{$fieldlist[$field]})?$obj->{$fieldlist[$field]}:'').' ';
+ // print ''.(!empty($obj->{$fieldlist[$field]})?$obj->{$fieldlist[$field]}:'').' ';
$okforextended = true;
if (empty($conf->global->FCKEDITOR_ENABLE_MAIL)) {
$okforextended = false;
@@ -1074,7 +1074,7 @@ if ($num) {
$okforextended = true;
if (empty($conf->global->FCKEDITOR_ENABLE_MAIL))
$okforextended = false;
- $doleditor = new DolEditor($tmpfieldlist.'-'.$rowid, (! empty($obj->{$tmpfieldlist}) ? $obj->{$tmpfieldlist} : ''), '', 140, 'dolibarr_mailings', 'In', 0, false, $okforextended, ROWS_6, '90%');
+ $doleditor = new DolEditor($tmpfieldlist.'-'.$rowid, (!empty($obj->{$tmpfieldlist}) ? $obj->{$tmpfieldlist} : ''), '', 140, 'dolibarr_mailings', 'In', 0, false, $okforextended, ROWS_6, '90%');
print $doleditor->Create(1);
}
print ' ';
diff --git a/htdocs/admin/mails_ticket.php b/htdocs/admin/mails_ticket.php
index a439bdabcf0..8b0d78132a0 100644
--- a/htdocs/admin/mails_ticket.php
+++ b/htdocs/admin/mails_ticket.php
@@ -66,8 +66,15 @@ if ($action == 'update' && !$cancel) {
dolibarr_set_const($db, "MAIN_MAIL_SMTP_PORT_TICKET", GETPOST("MAIN_MAIL_SMTP_PORT_TICKET"), 'chaine', 0, '', $conf->entity);
dolibarr_set_const($db, "MAIN_MAIL_SMTP_SERVER_TICKET", GETPOST("MAIN_MAIL_SMTP_SERVER_TICKET"), 'chaine', 0, '', $conf->entity);
dolibarr_set_const($db, "MAIN_MAIL_SMTPS_ID_TICKET", GETPOST("MAIN_MAIL_SMTPS_ID_TICKET"), 'chaine', 0, '', $conf->entity);
- dolibarr_set_const($db, "MAIN_MAIL_SMTPS_PW_TICKET", GETPOST("MAIN_MAIL_SMTPS_PW_TICKET"), 'chaine', 0, '', $conf->entity);
- dolibarr_set_const($db, "MAIN_MAIL_EMAIL_TLS_TICKET", GETPOST("MAIN_MAIL_EMAIL_TLS_TICKET"), 'chaine', 0, '', $conf->entity);
+ if (GETPOSTISSET("MAIN_MAIL_SMTPS_PW_TICKET")) {
+ dolibarr_set_const($db, "MAIN_MAIL_SMTPS_PW_TICKET", GETPOST("MAIN_MAIL_SMTPS_PW_TICKET", 'none'), 'chaine', 0, '', $conf->entity);
+ }
+ if (GETPOSTISSET("MAIN_MAIL_SMTPS_AUTH_TYPE_TICKET")) {
+ dolibarr_set_const($db, "MAIN_MAIL_SMTPS_AUTH_TYPE_TICKET", GETPOST("MAIN_MAIL_SMTPS_AUTH_TYPE_TICKET", 'chaine'), 'chaine', 0, '', $conf->entity);
+ }
+ if (GETPOSTISSET("MAIN_MAIL_SMTPS_OAUTH_SERVICE_TICKET")) {
+ dolibarr_set_const($db, "MAIN_MAIL_SMTPS_OAUTH_SERVICE_TICKET", GETPOST("MAIN_MAIL_SMTPS_OAUTH_SERVICE_TICKET", 'chaine'), 'chaine', 0, '', $conf->entity);
+ }dolibarr_set_const($db, "MAIN_MAIL_EMAIL_TLS_TICKET", GETPOST("MAIN_MAIL_EMAIL_TLS_TICKET"), 'chaine', 0, '', $conf->entity);
dolibarr_set_const($db, "MAIN_MAIL_EMAIL_STARTTLS_TICKET", GETPOST("MAIN_MAIL_EMAIL_STARTTLS_TICKET"), 'chaine', 0, '', $conf->entity);
header("Location: ".$_SERVER["PHP_SELF"]."?mainmenu=home&leftmenu=setup");
@@ -139,6 +146,25 @@ if (version_compare(phpversion(), '7.0', '>=')) {
$listofmethods['swiftmailer'] = 'Swift Mailer socket library';
}
+// List of oauth services
+$oauthservices = array();
+
+foreach ($conf->global as $key => $val) {
+ if (!empty($val) && preg_match('/^OAUTH_.*_ID$/', $key)) {
+ $key = preg_replace('/^OAUTH_/', '', $key);
+ $key = preg_replace('/_ID$/', '', $key);
+ if (preg_match('/^.*-/', $key)) {
+ $name = preg_replace('/^.*-/', '', $key);
+ } else {
+ $name = $langs->trans("NoName");
+ }
+ $provider = preg_replace('/-.*$/', '', $key);
+ $provider = ucfirst(strtolower($provider));
+
+ $oauthservices[$key] = $name." (".$provider.")";
+ }
+}
+
if ($action == 'edit') {
if ($conf->use_javascript_ajax) {
@@ -162,6 +188,8 @@ if ($action == 'edit') {
jQuery("#MAIN_MAIL_EMAIL_TLS_TICKET").prop("disabled", true);
jQuery("#MAIN_MAIL_EMAIL_STARTTLS_TICKET").val(0);
jQuery("#MAIN_MAIL_EMAIL_STARTTLS_TICKET").prop("disabled", true);
+ jQuery(".smtp_method").hide();
+ jQuery(".smtp_auth_method").hide();
';
if ($linuxlike) {
print '
@@ -192,7 +220,9 @@ if ($action == 'edit') {
jQuery("#MAIN_MAIL_SMTP_SERVER_TICKET").show();
jQuery("#MAIN_MAIL_SMTP_PORT_TICKET").show();
jQuery("#smtp_server_mess").hide();
- jQuery("#smtp_port_mess").hide();
+ jQuery("#smtp_port_mess").hide();
+ jQuery(".smtp_method").show();
+ jQuery(".smtp_auth_method").show();
}
if (jQuery("#MAIN_MAIL_SENDMODE_TICKET").val()==\'swiftmailer\')
{
@@ -207,12 +237,37 @@ if ($action == 'edit') {
jQuery("#MAIN_MAIL_SMTP_PORT_TICKET").show();
jQuery("#smtp_server_mess").hide();
jQuery("#smtp_port_mess").hide();
+ jQuery(".smtp_method").show();
+ jQuery(".smtp_auth_method").show();
}
}
+ function change_smtp_auth_method() {
+ console.log(jQuery("#radio_pw").prop("checked"));
+ if (jQuery("#MAIN_MAIL_SENDMODE_TICKET").val()==\'smtps\' && jQuery("#radio_oauth").prop("checked")) {
+ jQuery(".smtp_oauth_service").show();
+ jQuery(".smtp_pw").hide();
+ } else if (jQuery("#MAIN_MAIL_SENDMODE_TICKET").val()==\'swiftmailer\' && jQuery("#radio_oauth").prop("checked")) {
+ jQuery(".smtp_oauth_service").show();
+ jQuery(".smtp_pw").hide();
+ } else if(jQuery("#MAIN_MAIL_SENDMODE_TICKET").val()==\'mail\' || jQuery("#MAIN_MAIL_SENDMODE_TICKET").val()==\'default\'){
+ jQuery(".smtp_oauth_service").hide();
+ jQuery(".smtp_pw").hide();
+ } else {
+ jQuery(".smtp_oauth_service").hide();
+ jQuery(".smtp_pw").show();
+ }
+ }
initfields();
+ change_smtp_auth_method();
+
jQuery("#MAIN_MAIL_SENDMODE_TICKET").change(function() {
initfields();
+ change_smtp_auth_method();
+
});
+ jQuery("#radio_pw, #radio_oauth").change(function() {
+ change_smtp_auth_method();
+ });
jQuery("#MAIN_MAIL_EMAIL_TLS").change(function() {
if (jQuery("#MAIN_MAIL_EMAIL_STARTTLS_TICKET").val() == 1)
jQuery("#MAIN_MAIL_EMAIL_STARTTLS_TICKET").val(0);
@@ -275,7 +330,7 @@ if ($action == 'edit') {
}
print '';
// SuperAdministrator access only
- if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) {
+ if (!isModEnabled('multicompany') || ($user->admin && !$user->entity)) {
print ' ';
print ' ';
print ''.$langs->trans("SeeLocalSendMailSetup").' ';
@@ -305,7 +360,7 @@ if ($action == 'edit') {
}
print ' ';
// SuperAdministrator access only
- if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) {
+ if (!isModEnabled('multicompany') || ($user->admin && !$user->entity)) {
print ' ';
print ' ';
print ''.$langs->trans("SeeLocalSendMailSetup").' ';
@@ -323,7 +378,7 @@ if ($action == 'edit') {
$mainstmpid = (!empty($conf->global->MAIN_MAIL_SMTPS_ID_TICKET) ? $conf->global->MAIN_MAIL_SMTPS_ID_TICKET : '');
print ' '.$langs->trans("MAIN_MAIL_SMTPS_ID").' ';
// SuperAdministrator access only
- if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) {
+ if (!isModEnabled('multicompany') || ($user->admin && !$user->entity)) {
print ' ';
} else {
$htmltext = $langs->trans("ContactSuperAdminForChange");
@@ -333,12 +388,31 @@ if ($action == 'edit') {
print ' ';
}
+ // OAUTH
+ if (!empty($conf->use_javascript_ajax) || (isset($conf->global->MAIN_MAIL_SENDMODE_TICKET) && in_array($conf->global->MAIN_MAIL_SENDMODE_TICKET, array('smtps', 'swiftmailer')))) {
+ print ''.$langs->trans("MAIN_MAIL_SMTPS_AUTH_TYPE").' ';
+ if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) {
+ print ' ';
+ print ''.$langs->trans("UsePassword").' ';
+ print ' ';
+ print ' ';
+ print ''.$form->textwithpicto($langs->trans("UseOauth"), $langs->trans("OauthNotAvailableForAllAndHadToBeCreatedBefore")).' ';
+ } else {
+ $value = getDolGlobalString('MAIN_MAIL_SMTPS_AUTH_TYPE_TICKET', 'LOGIN');
+ $htmltext = $langs->trans("ContactSuperAdminForChange");
+ print $form->textwithpicto($langs->trans("MAIN_MAIL_SMTPS_AUTH_TYPE"), $htmltext, 1, 'superadmin');
+ print ' ';
+ }
+ print ' ';
+ }
+
+
// PW
if (!empty($conf->use_javascript_ajax) || (isset($conf->global->MAIN_MAIL_SENDMODE_TICKET) && in_array($conf->global->MAIN_MAIL_SENDMODE_TICKET, array('smtps', 'swiftmailer')))) {
$mainsmtppw = (!empty($conf->global->MAIN_MAIL_SMTPS_PW_TICKET) ? $conf->global->MAIN_MAIL_SMTPS_PW_TICKET : '');
- print ''.$langs->trans("MAIN_MAIL_SMTPS_PW").' ';
+ print ' '.$langs->trans("MAIN_MAIL_SMTPS_PW").' ';
// SuperAdministrator access only
- if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) {
+ if (!isModEnabled('multicompany') || ($user->admin && !$user->entity)) {
print ' ';
} else {
$htmltext = $langs->trans("ContactSuperAdminForChange");
@@ -348,6 +422,24 @@ if ($action == 'edit') {
print ' ';
}
+ // OAUTH service provider
+ if (!empty($conf->use_javascript_ajax) || (isset($conf->global->MAIN_MAIL_SENDMODE_TICKET) && in_array($conf->global->MAIN_MAIL_SENDMODE_TICKET, array('smtps', 'swiftmailer')))) {
+ print ''.$langs->trans("MAIN_MAIL_SMTPS_OAUTH_SERVICE").' ';
+ // SuperAdministrator access only
+ if ((empty($conf->global->MAIN_MODULE_MULTICOMPANY)) || ($user->admin && !$user->entity)) {
+ print $form->selectarray('MAIN_MAIL_SMTPS_OAUTH_SERVICE_TICKET', $oauthservices, $conf->global->MAIN_MAIL_SMTPS_OAUTH_SERVICE_TICKET);
+ } else {
+ $text = $oauthservices[$conf->global->MAIN_MAIL_SMTPS_OAUTH_SERVICE_TICKET];
+ if (empty($text)) {
+ $text = $langs->trans("Undefined");
+ }
+ $htmltext = $langs->trans("ContactSuperAdminForChange");
+ print $form->textwithpicto($text, $htmltext, 1, 'superadmin');
+ print ' ';
+ }
+ print ' ';
+ }
+
// TLS
print ''.$langs->trans("MAIN_MAIL_EMAIL_TLS").' ';
@@ -425,11 +517,27 @@ if ($action == 'edit') {
print ' '.$langs->trans("MAIN_MAIL_SMTPS_ID").' '.$conf->global->MAIN_MAIL_SMTPS_ID_TICKET.' ';
}
+ // AUTH method
+ if (in_array(getDolGlobalString('MAIN_MAIL_SENDMODE_TICKET'), array('smtps', 'swiftmailer'))) {
+ $authtype = getDolGlobalString('MAIN_MAIL_SMTPS_AUTH_TYPE_TICKET', 'LOGIN');
+ $text = ($authtype === "LOGIN") ? $langs->trans("UsePassword") : ($authtype === "XOAUTH2" ? $langs->trans("UseOauth") : '') ;
+ print ''.$langs->trans("MAIN_MAIL_SMTPS_AUTH_TYPE").' '.$text.' ';
+ }
+
// SMTPS PW
- if (isset($conf->global->MAIN_MAIL_SENDMODE_TICKET) && in_array($conf->global->MAIN_MAIL_SENDMODE_TICKET, array('smtps', 'swiftmailer'))) {
+ if (isset($conf->global->MAIN_MAIL_SENDMODE_TICKET) && in_array($conf->global->MAIN_MAIL_SENDMODE_TICKET, array('smtps', 'swiftmailer')) && getDolGlobalString('MAIN_MAIL_SMTPS_AUTH_TYPE_TICKET') != "XOAUTH2") {
print ''.$langs->trans("MAIN_MAIL_SMTPS_PW").' '.preg_replace('/./', '*', $conf->global->MAIN_MAIL_SMTPS_PW_TICKET).' ';
}
+ // SMTPS oauth service
+ if (in_array(getDolGlobalString('MAIN_MAIL_SENDMODE_TICKET'), array('smtps', 'swiftmailer')) && getDolGlobalString('MAIN_MAIL_SMTPS_AUTH_TYPE_TICKET') === "XOAUTH2") {
+ $text = $oauthservices[$conf->global->MAIN_MAIL_SMTPS_OAUTH_SERVICE_TICKET];
+ if (empty($text)) {
+ $text = $langs->trans("Undefined").img_warning();
+ }
+ print ''.$langs->trans("MAIN_MAIL_SMTPS_OAUTH_SERVICE_TICKET").' '.$text.' ';
+ }
+
// TLS
print ''.$langs->trans("MAIN_MAIL_EMAIL_TLS").' ';
if (isset($conf->global->MAIN_MAIL_SENDMODE_TICKET) && in_array($conf->global->MAIN_MAIL_SENDMODE_TICKET, array('smtps', 'swiftmailer'))) {
@@ -496,7 +604,7 @@ if ($action == 'edit') {
print ''.$langs->trans("DoTestSend").' ';
- if (!empty($conf->fckeditor->enabled)) {
+ if (isModEnabled('fckeditor')) {
print ''.$langs->trans("DoTestSendHTML").' ';
}
}
diff --git a/htdocs/admin/menus/edit.php b/htdocs/admin/menus/edit.php
index 9378fc28bbe..d619cd28e91 100644
--- a/htdocs/admin/menus/edit.php
+++ b/htdocs/admin/menus/edit.php
@@ -219,29 +219,6 @@ if ($action == 'add') {
}
}
-// delete
-if ($action == 'confirm_delete' && $confirm == 'yes') {
- $db->begin();
-
- $sql = "DELETE FROM ".MAIN_DB_PREFIX."menu WHERE rowid = ".GETPOST('menuId', 'int');
- $result = $db->query($sql);
-
- if ($result == 0) {
- $db->commit();
-
- llxHeader();
- setEventMessages($langs->trans("MenuDeleted"), null, 'mesgs');
- llxFooter();
- exit;
- } else {
- $db->rollback();
-
- $reload = 0;
- $_GET["action"] = '';
- $action = '';
- }
-}
-
/*
@@ -318,15 +295,17 @@ if ($action == 'create') {
// User
print ' '.$langs->trans('MenuForUsers').' ';
- print '';
+ print ' ';
+ print ' ';
+ print ajax_combobox('menuuser');
+ print ' ';
print ''.$langs->trans('DetailUser').' ';
// Type
- print ''.$langs->trans('Type').' ';
+ print ' '.$langs->trans('Position').' ';
if ($parent_rowid) {
print $langs->trans('Left');
print ' ';
@@ -336,6 +315,7 @@ if ($action == 'create') {
print ''.$langs->trans('Top').' ';
print ''.$langs->trans('Left').' ';
print '';
+ print ajax_combobox('topleft');
}
print ' '.$langs->trans('DetailType').' ';
@@ -373,12 +353,6 @@ if ($action == 'create') {
print ''.$langs->trans('Position').' ';
print ''.$langs->trans('DetailPosition').' ';
- // Target
- print ''.$langs->trans('Target').' ';
- print 'target) && $menu->target == "" ? ' selected' : '').'> ';
- print 'target) && $menu->target == "_blank" ? ' selected' : '').'>'.$langs->trans('_blank').' ';
- print ' '.$langs->trans('DetailTarget').' ';
-
// Enabled
print ''.$langs->trans('Enabled').' ';
print ''.$langs->trans('DetailEnabled').' ';
@@ -387,6 +361,14 @@ if ($action == 'create') {
print ''.$langs->trans('Rights').' ';
print ''.$langs->trans('DetailRight').' ';
+ // Target
+ print ''.$langs->trans('Target').' ';
+ print 'target) && $menu->target == "" ? ' selected' : '').'> ';
+ print 'target) && $menu->target == "_blank" ? ' selected' : '').'>'.$langs->trans('_blank').' ';
+ print ' ';
+ print ajax_combobox("target");
+ print ''.$langs->trans('DetailTarget').' ';
+
print '
';
print dol_get_fiche_end();
@@ -415,7 +397,7 @@ if ($action == 'create') {
print ''.$langs->trans('Id').' '.$menu->id.' '.$langs->trans('DetailId').' ';
// Module
- print ''.$langs->trans('MenuModule').' '.$menu->module.' '.$langs->trans('DetailMenuModule').' ';
+ print ''.$langs->trans('MenuModule').' '.(empty($menu->module) ? 'Core' : $menu->module).' '.$langs->trans('DetailMenuModule').' ';
// Handler
if ($menu->menu_handler == 'all') {
@@ -426,14 +408,17 @@ if ($action == 'create') {
print ''.$langs->trans('MenuHandler').' '.$handler.' '.$langs->trans('DetailMenuHandler').' ';
// User
- print ''.$langs->trans('MenuForUsers').' ';
+ print ''.$langs->trans('MenuForUsers').' ';
+ print ' '.$langs->trans('DetailUser').' ';
+ print ' ';
+ print ajax_combobox('menuuser');
+ print ''.$langs->trans('DetailUser').' ';
// Type
- print ''.$langs->trans('Type').' ';
+ print ''.$langs->trans('Position').' ';
print ''.$langs->trans(ucfirst($menu->type)).' '.$langs->trans('DetailType').' ';
// Mainmenu code
@@ -486,12 +471,6 @@ if ($action == 'create') {
print ''.$langs->trans('Position').' ';
print ''.$langs->trans('DetailPosition').' ';
- // Target
- print ''.$langs->trans('Target').' ';
- print 'target == "" ? ' selected' : '').'> ';
- print 'target == "_blank" ? ' selected' : '').'>'.$langs->trans('_blank').' ';
- print ' '.$langs->trans('DetailTarget').' ';
-
// Enabled
print ''.$langs->trans('Enabled').' ';
print ''.$langs->trans('DetailEnabled');
@@ -508,6 +487,14 @@ if ($action == 'create') {
}
print ' ';
+ // Target
+ print ''.$langs->trans('Target').' ';
+ print 'target == "" ? ' selected' : '').'> ';
+ print 'target == "_blank" ? ' selected' : '').'>'.$langs->trans('_blank').' ';
+ print ' ';
+ print ajax_combobox("target");
+ print ''.$langs->trans('DetailTarget').' ';
+
print '
';
print dol_get_fiche_end();
diff --git a/htdocs/admin/modulehelp.php b/htdocs/admin/modulehelp.php
index 16500c62d59..dbcc9cfdade 100644
--- a/htdocs/admin/modulehelp.php
+++ b/htdocs/admin/modulehelp.php
@@ -137,7 +137,7 @@ foreach ($modulesdir as $dir) {
}
// We discard modules according to property disabled
- //if (! empty($objMod->hidden)) $modulequalified=0;
+ //if (!empty($objMod->hidden)) $modulequalified=0;
if ($modulequalified > 0) {
$publisher = dol_escape_htmltag($objMod->getPublisher());
diff --git a/htdocs/admin/modules.php b/htdocs/admin/modules.php
index d04039aefdf..05f7ed441f7 100644
--- a/htdocs/admin/modules.php
+++ b/htdocs/admin/modules.php
@@ -786,14 +786,14 @@ if ($mode == 'common' || $mode == 'commonkanban') {
if (!empty($objMod->disabled)) {
$codeenabledisable .= $langs->trans("Disabled");
- } elseif (!empty($objMod->always_enabled) || ((!empty($conf->multicompany->enabled) && $objMod->core_enabled) && ($user->entity || $conf->entity != 1))) {
+ } elseif (!empty($objMod->always_enabled) || ((isModEnabled('multicompany') && $objMod->core_enabled) && ($user->entity || $conf->entity != 1))) {
if (method_exists($objMod, 'alreadyUsed') && $objMod->alreadyUsed()) {
$codeenabledisable .= $langs->trans("Used");
} else {
$codeenabledisable .= img_picto($langs->trans("Required"), 'switch_on', '', false, 0, 0, '', 'opacitymedium valignmiddle');
//print $langs->trans("Required");
}
- if (!empty($conf->multicompany->enabled) && $user->entity) {
+ if (isModEnabled('multicompany') && $user->entity) {
$disableSetup++;
}
} else {
@@ -1279,7 +1279,7 @@ if ($mode == 'develop') {
print '
';
print ''.$langs->trans("TryToUseTheModuleBuilder", $langs->transnoentitiesnoconv("ModuleBuilder")).' ';
print '';
- if (!empty($conf->modulebuilder->enabled)) {
+ if (isModEnabled('modulebuilder')) {
print $langs->trans("SeeTopRightMenu");
} else {
print ''.$langs->trans("ModuleMustBeEnabledFirst", $langs->transnoentitiesnoconv("ModuleBuilder")).' ';
diff --git a/htdocs/admin/notification.php b/htdocs/admin/notification.php
index 760df948d34..44b5c104813 100644
--- a/htdocs/admin/notification.php
+++ b/htdocs/admin/notification.php
@@ -177,7 +177,7 @@ print load_fiche_titre($langs->trans("NotificationSetup"), $linkback, 'title_set
print '';
print $langs->trans("NotificationsDesc").' ';
print $langs->trans("NotificationsDescUser").' ';
-if (!empty($conf->societe->enabled)) {
+if (isModEnabled("societe")) {
print $langs->trans("NotificationsDescContact").' ';
}
print $langs->trans("NotificationsDescGlobal").' ';
@@ -361,7 +361,7 @@ print $form->buttonsSaveCancel("Save", '');
print '';
print '* '.$langs->trans("GoOntoUserCardToAddMore").' ';
- if (!empty($conf->societe->enabled)) {
+ if (isModEnabled("societe")) {
print '** '.$langs->trans("GoOntoContactCardToAddMore").' ';
}
print '
';
@@ -384,7 +384,7 @@ print load_fiche_titre($langs->trans("ListOfFixedNotifications"), '', 'email');
print '';
print $langs->trans("Note").': ';
print '* '.$langs->trans("GoOntoUserCardToAddMore").' ';
-if (!empty($conf->societe->enabled)) {
+if (isModEnabled("societe")) {
print '** '.$langs->trans("GoOntoContactCardToAddMore").' ';
}
print '
';
diff --git a/htdocs/admin/paymentbybanktransfer.php b/htdocs/admin/paymentbybanktransfer.php
index 997c71bb335..eb918086720 100644
--- a/htdocs/admin/paymentbybanktransfer.php
+++ b/htdocs/admin/paymentbybanktransfer.php
@@ -378,7 +378,7 @@ print ' ';
*/
/* Disable this, there is no trigger with elementtype 'withdraw'
-if (! empty($conf->global->MAIN_MODULE_NOTIFICATION))
+if (!empty($conf->global->MAIN_MODULE_NOTIFICATION))
{
$langs->load("mails");
print load_fiche_titre($langs->trans("Notifications"));
diff --git a/htdocs/admin/pdf.php b/htdocs/admin/pdf.php
index 41215f98402..3468c997a58 100644
--- a/htdocs/admin/pdf.php
+++ b/htdocs/admin/pdf.php
@@ -108,7 +108,7 @@ if ($action == 'update') {
dolibarr_set_const($db, "MAIN_TVAINTRA_NOT_IN_ADDRESS", GETPOST("MAIN_TVAINTRA_NOT_IN_ADDRESS"), 'chaine', 0, '', $conf->entity);
}
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
if (GETPOST('PDF_SHOW_PROJECT_REF_OR_LABEL') == 'no') {
dolibarr_del_const($db, "PDF_SHOW_PROJECT", $conf->entity);
dolibarr_del_const($db, "PDF_SHOW_PROJECT_TITLE", $conf->entity);
@@ -471,7 +471,7 @@ print ''.$langs->trans("Parameter").' '.$langs->trans("PDF_USE_ALSO_LANGUAGE_CODE").' ';
-//if (! empty($conf->global->MAIN_MULTILANGS))
+//if (!empty($conf->global->MAIN_MULTILANGS))
//{
$selected = GETPOSTISSET('PDF_USE_ALSO_LANGUAGE_CODE') ? GETPOST('PDF_USE_ALSO_LANGUAGE_CODE') : (!empty($conf->global->PDF_USE_ALSO_LANGUAGE_CODE) ? $conf->global->PDF_USE_ALSO_LANGUAGE_CODE : 0);
print $formadmin->select_language($selected, 'PDF_USE_ALSO_LANGUAGE_CODE', 0, null, 1);
@@ -486,7 +486,7 @@ print ' ';
// Show project
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
print ''.$langs->trans("PDF_SHOW_PROJECT").' ';
$tmparray = array('no' => 'No', 'showprojectref' => 'RefProject', 'showprojectlabel' => 'ShowProjectLabel');
$showprojectref = empty($conf->global->PDF_SHOW_PROJECT) ? (empty($conf->global->PDF_SHOW_PROJECT_TITLE) ? 'no' : 'showprojectlabel') : 'showprojectref';
diff --git a/htdocs/admin/prelevement.php b/htdocs/admin/prelevement.php
index 88a02e90457..c76cccdcc5c 100644
--- a/htdocs/admin/prelevement.php
+++ b/htdocs/admin/prelevement.php
@@ -392,7 +392,7 @@ print ' ';
*/
/* Disable this, there is no trigger with elementtype 'withdraw'
-if (! empty($conf->global->MAIN_MODULE_NOTIFICATION))
+if (!empty($conf->global->MAIN_MODULE_NOTIFICATION))
{
$langs->load("mails");
print load_fiche_titre($langs->trans("Notifications"));
diff --git a/htdocs/admin/propal.php b/htdocs/admin/propal.php
index c324f33ba92..408c42cc3a8 100644
--- a/htdocs/admin/propal.php
+++ b/htdocs/admin/propal.php
@@ -515,7 +515,7 @@ print ' ';
print ' ';
print $langs->trans("PaymentMode").' ';
print '';
-if (empty($conf->facture->enabled)) {
+if (!isModEnabled('facture')) {
print ' ';
}
print ' ';
@@ -524,8 +524,8 @@ print " \n";
print '';
print "".$langs->trans("SuggestPaymentByRIBOnAccount")." ";
print "";
-if (empty($conf->facture->enabled)) {
- if (!empty($conf->banque->enabled)) {
+if (!isModEnabled('facture')) {
+ if (isModEnabled("banque")) {
$sql = "SELECT rowid, label";
$sql .= " FROM ".MAIN_DB_PREFIX."bank_account";
$sql .= " WHERE clos = 0";
@@ -563,7 +563,7 @@ print " ";
print '';
print "".$langs->trans("SuggestPaymentByChequeToAddress")." ";
print "";
-if (empty($conf->facture->enabled)) {
+if (!isModEnabled('facture')) {
print '';
print ''.$langs->trans("DoNotSuggestPaymentMode").' ';
print 'global->FACTURE_CHQ_NUMBER ? ' selected' : '').'>'.$langs->trans("MenuCompanySetup").' ('.($mysoc->name ? $mysoc->name : $langs->trans("NotDefined")).') ';
@@ -700,12 +700,12 @@ print " \n";
print '';
/* Seems to be not so used. So kept hidden for the moment to avoid dangerous options inflation.
-if ($conf->banque->enabled)
+if (isModEnabled('facture'))
{
print '';
print $langs->trans("BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL").' ';
- if (! empty($conf->use_javascript_ajax))
+ if (!empty($conf->use_javascript_ajax))
{
print ajax_constantonoff('BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL');
}
diff --git a/htdocs/admin/security.php b/htdocs/admin/security.php
index 795a0557f16..516197b7a70 100644
--- a/htdocs/admin/security.php
+++ b/htdocs/admin/security.php
@@ -1,5 +1,5 @@
+/* Copyright (C) 2004-2022 Laurent Destailleur
* Copyright (C) 2005-2007 Regis Houssin
* Copyright (C) 2013-2015 Juanjo Menent
*
@@ -47,9 +47,6 @@ $allow_disable_encryption = true;
if ($action == 'setgeneraterule') {
if (!dolibarr_set_const($db, 'USER_PASSWORD_GENERATED', $_GET["value"], 'chaine', 0, '', $conf->entity)) {
dol_print_error($db);
- } else {
- header("Location: ".$_SERVER["PHP_SELF"]);
- exit;
}
}
@@ -94,8 +91,6 @@ if ($action == 'activate_encrypt') {
//exit;
if (!$error) {
$db->commit();
- header("Location: security.php");
- exit;
} else {
$db->rollback();
dol_print_error($db, '');
@@ -106,8 +101,6 @@ if ($action == 'activate_encrypt') {
if ($allow_disable_encryption) {
dolibarr_del_const($db, "DATABASE_PWD_ENCRYPTED", $conf->entity);
}
- header("Location: security.php");
- exit;
}
if ($action == 'activate_encryptdbpassconf') {
@@ -138,12 +131,8 @@ if ($action == 'activate_encryptdbpassconf') {
if ($action == 'activate_MAIN_SECURITY_DISABLEFORGETPASSLINK') {
dolibarr_set_const($db, "MAIN_SECURITY_DISABLEFORGETPASSLINK", '1', 'chaine', 0, '', $conf->entity);
- header("Location: security.php");
- exit;
} elseif ($action == 'disable_MAIN_SECURITY_DISABLEFORGETPASSLINK') {
dolibarr_del_const($db, "MAIN_SECURITY_DISABLEFORGETPASSLINK", $conf->entity);
- header("Location: security.php");
- exit;
}
if ($action == 'updatepattern') {
@@ -387,9 +376,9 @@ if ($conf->global->USER_PASSWORD_GENERATED == "Perso") {
// Cryptage mot de passe
print ' ';
-print "";
+print ' ';
print ' ';
-print " ";
+print ' ';
print '';
print '';
@@ -408,7 +397,7 @@ if (getDolGlobalString('DATABASE_PWD_ENCRYPTED')) {
print '';
if (!getDolGlobalString('DATABASE_PWD_ENCRYPTED')) {
print '';
- print ''.$langs->trans("Activate").' ';
+ print ''.$langs->trans("Activate").' ';
print " ";
}
@@ -418,7 +407,7 @@ if (getDolGlobalString('DATABASE_PWD_ENCRYPTED')) {
if ($allow_disable_encryption) {
//On n'autorise pas l'annulation de l'encryption car les mots de passe ne peuvent pas etre decodes
//Do not allow "disable encryption" as passwords cannot be decrypted
- print ''.$langs->trans("Disable").' ';
+ print ''.$langs->trans("Disable").' ';
} else {
print '-';
}
@@ -444,10 +433,10 @@ if (empty($dolibarr_main_db_pass) && empty($dolibarr_main_db_encrypted_pass)) {
print img_warning($langs->trans("WarningPassIsEmpty"));
} else {
if (empty($dolibarr_main_db_encrypted_pass)) {
- print ''.$langs->trans("Activate").' ';
+ print ''.$langs->trans("Activate").' ';
}
if (!empty($dolibarr_main_db_encrypted_pass)) {
- print ''.$langs->trans("Disable").' ';
+ print ''.$langs->trans("Disable").' ';
}
}
print "";
@@ -467,12 +456,12 @@ if (getDolGlobalString('MAIN_SECURITY_DISABLEFORGETPASSLINK')) {
print '';
if (!getDolGlobalString('MAIN_SECURITY_DISABLEFORGETPASSLINK')) {
print '';
- print ''.$langs->trans("Activate").' ';
+ print ''.$langs->trans("Activate").' ';
print " ";
}
if (getDolGlobalString('MAIN_SECURITY_DISABLEFORGETPASSLINK')) {
print '';
- print ''.$langs->trans("Disable").' ';
+ print ''.$langs->trans("Disable").' ';
print " ";
}
print "";
diff --git a/htdocs/admin/security_other.php b/htdocs/admin/security_other.php
index 090e2254541..9e103422b97 100644
--- a/htdocs/admin/security_other.php
+++ b/htdocs/admin/security_other.php
@@ -200,10 +200,10 @@ print ' ';
print '
';
-print dol_get_fiche_end();
-
print $form->buttonsSaveCancel("Modify", '');
+print dol_get_fiche_end();
+
print ' ';
// End of page
diff --git a/htdocs/admin/stock.php b/htdocs/admin/stock.php
index 2b25d7deb5a..fcca4cf2f18 100644
--- a/htdocs/admin/stock.php
+++ b/htdocs/admin/stock.php
@@ -180,13 +180,13 @@ $formproduct = new FormProduct($db);
$disabled = '';
-if (!empty($conf->productbatch->enabled)) {
+if (isModEnabled('productbatch')) {
$langs->load("productbatch");
$disabled = ' disabled';
print info_admin($langs->trans("WhenProductBatchModuleOnOptionAreForced"));
}
-//if (! empty($conf->global->STOCK_CALCULATE_ON_VALIDATE_ORDER) || ! empty($conf->global->STOCK_CALCULATE_ON_SHIPMENT))
+//if (!empty($conf->global->STOCK_CALCULATE_ON_VALIDATE_ORDER) || !empty($conf->global->STOCK_CALCULATE_ON_SHIPMENT))
//{
print info_admin($langs->trans("IfYouUsePointOfSaleCheckModule"));
print ' ';
@@ -226,7 +226,7 @@ $found++;
print '';
print ''.$langs->trans("DeStockOnValidateOrder").' ';
print '';
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
if ($conf->use_javascript_ajax) {
print ajax_constantonoff('STOCK_CALCULATE_ON_VALIDATE_ORDER', array(), null, 0, 0, 0, 2, 1);
} else {
@@ -239,13 +239,13 @@ if (!empty($conf->commande->enabled)) {
print " \n \n";
$found++;
-//if (! empty($conf->expedition->enabled))
+//if (!empty($conf->expedition->enabled))
//{
print '';
print ''.$langs->trans("DeStockOnShipment").' ';
print '';
-if (!empty($conf->expedition->enabled)) {
+if (isModEnabled("expedition")) {
if ($conf->use_javascript_ajax) {
print ajax_constantonoff('STOCK_CALCULATE_ON_SHIPMENT', array(), null, 0, 0, 0, 2, 1);
} else {
@@ -262,7 +262,7 @@ $found++;
print ' ';
print ''.$langs->trans("DeStockOnShipmentOnClosing").' ';
print '';
-if (!empty($conf->expedition->enabled)) {
+if (isModEnabled("expedition")) {
if ($conf->use_javascript_ajax) {
print ajax_constantonoff('STOCK_CALCULATE_ON_SHIPMENT_CLOSE', array(), null, 0, 0, 0, 2, 1);
} else {
@@ -293,7 +293,7 @@ $found = 0;
print ' ';
print ''.$langs->trans("ReStockOnBill").' ';
print '';
-if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
if ($conf->use_javascript_ajax) {
print ajax_constantonoff('STOCK_CALCULATE_ON_SUPPLIER_BILL', array(), null, 0, 0, 0, 2, 1);
} else {
@@ -311,7 +311,7 @@ $found++;
print ' ';
print ''.$langs->trans("ReStockOnValidateOrder").' ';
print '';
-if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
if ($conf->use_javascript_ajax) {
print ajax_constantonoff('STOCK_CALCULATE_ON_SUPPLIER_VALIDATE_ORDER', array(), null, 0, 0, 0, 2, 1);
} else {
@@ -324,7 +324,7 @@ if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SU
print " \n \n";
$found++;
-if (!empty($conf->reception->enabled)) {
+if (isModEnabled("reception")) {
print '';
print ''.$langs->trans("StockOnReception").' ';
print '';
@@ -356,7 +356,7 @@ if (!empty($conf->reception->enabled)) {
print ' ';
print ''.$langs->trans("ReStockOnDispatchOrder").' ';
print '';
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) {
if ($conf->use_javascript_ajax) {
print ajax_constantonoff('STOCK_CALCULATE_ON_SUPPLIER_DISPATCH_ORDER', array(), null, 0, 0, 0, 2, 1);
} else {
@@ -394,7 +394,7 @@ print " \n";
print " \n";
// Option to force stock to be enough before adding a line into document
-if (!empty($conf->invoice->enabled)) {
+if (isModEnabled('facture')) {
print '';
print ''.$langs->trans("StockMustBeEnoughForInvoice").' ';
print '';
@@ -408,7 +408,7 @@ if (!empty($conf->invoice->enabled)) {
print " \n";
}
-if (!empty($conf->order->enabled)) {
+if (isModEnabled('commande')) {
print '';
print ''.$langs->trans("StockMustBeEnoughForOrder").' ';
print '';
@@ -422,7 +422,7 @@ if (!empty($conf->order->enabled)) {
print " \n";
}
-if (!empty($conf->expedition->enabled)) {
+if (isModEnabled("expedition")) {
print '';
print ''.$langs->trans("StockMustBeEnoughForShipment").' ';
print '';
@@ -763,7 +763,7 @@ print " \n";
print " \n";
/* Disabled. Would be better to be managed with a user cookie
-if (!empty($conf->productbatch->enabled)) {
+if (isModEnabled('productbatch')) {
print '';
print '' . $langs->trans("ShowAllBatchByDefault") . ' ';
print '';
diff --git a/htdocs/admin/supplier_order.php b/htdocs/admin/supplier_order.php
index 9482a06be41..0204f184de7 100644
--- a/htdocs/admin/supplier_order.php
+++ b/htdocs/admin/supplier_order.php
@@ -468,7 +468,7 @@ if (isModEnabled('banque')) {
print ' ';
print $langs->trans("BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER").' ';
- if (! empty($conf->use_javascript_ajax))
+ if (!empty($conf->use_javascript_ajax))
{
print ajax_constantonoff('BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER');
}
diff --git a/htdocs/admin/system/constall.php b/htdocs/admin/system/constall.php
index 9a27feb3d7a..fee82d89958 100644
--- a/htdocs/admin/system/constall.php
+++ b/htdocs/admin/system/constall.php
@@ -205,7 +205,7 @@ print '';
print '';
print ''.$langs->trans("Parameter").' ';
print ''.$langs->trans("Value").' ';
-if (empty($conf->multicompany->enabled) || !$user->entity) {
+if (!isModEnabled('multicompany') || !$user->entity) {
print ''.$langs->trans("Entity").' '; // If superadmin or multicompany disabled
}
print " \n";
@@ -218,7 +218,7 @@ $sql .= ", type";
$sql .= ", note";
$sql .= ", entity";
$sql .= " FROM ".MAIN_DB_PREFIX."const";
-if (empty($conf->multicompany->enabled)) {
+if (!isModEnabled('multicompany')) {
// If no multicompany mode, admins can see global and their constantes
$sql .= " WHERE entity IN (0,".$conf->entity.")";
} else {
@@ -239,7 +239,7 @@ if ($resql) {
print '';
print ''.$obj->name.' '."\n";
print ''.$obj->value.' '."\n";
- if (empty($conf->multicompany->enabled) || !$user->entity) {
+ if (!isModEnabled('multicompany') || !$user->entity) {
print ''.$obj->entity.' '."\n"; // If superadmin or multicompany disabled
}
print " \n";
diff --git a/htdocs/admin/system/dolibarr.php b/htdocs/admin/system/dolibarr.php
index 8a982f6e0bd..31fa647f403 100644
--- a/htdocs/admin/system/dolibarr.php
+++ b/htdocs/admin/system/dolibarr.php
@@ -382,7 +382,7 @@ foreach ($configfileparameters as $key => $value) {
$newkey = preg_replace('/^\?/', '', $key);
if (preg_match('/^\?/', $key) && empty(${$newkey})) {
- if ($newkey != 'multicompany_transverse_mode' || empty($conf->multicompany->enabled)) {
+ if ($newkey != 'multicompany_transverse_mode' || !isModEnabled('multicompany')) {
continue; // We discard parameters starting with ?
}
}
@@ -483,7 +483,7 @@ print '';
print '';
print ''.$langs->trans("Parameters").' '.$langs->trans("Database").' ';
print ''.$langs->trans("Value").' ';
-if (empty($conf->multicompany->enabled) || !$user->entity) {
+if (!isModEnabled('multicompany') || !$user->entity) {
print ''.$langs->trans("Entity").' '; // If superadmin or multicompany disabled
}
print " \n";
@@ -496,7 +496,7 @@ $sql .= ", type";
$sql .= ", note";
$sql .= ", entity";
$sql .= " FROM ".MAIN_DB_PREFIX."const";
-if (empty($conf->multicompany->enabled)) {
+if (!isModEnabled('multicompany')) {
// If no multicompany mode, admins can see global and their constantes
$sql .= " WHERE entity IN (0,".$conf->entity.")";
} else {
@@ -526,7 +526,7 @@ if ($resql) {
print dol_escape_htmltag($obj->value);
}
print ''."\n";
- if (empty($conf->multicompany->enabled) || !$user->entity) {
+ if (!isModEnabled('multicompany') || !$user->entity) {
print ''.$obj->entity.' '."\n"; // If superadmin or multicompany disabled
}
print "\n";
diff --git a/htdocs/admin/taxes.php b/htdocs/admin/taxes.php
index 646f4a7be74..fb4b2ec6d72 100644
--- a/htdocs/admin/taxes.php
+++ b/htdocs/admin/taxes.php
@@ -27,7 +27,7 @@
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php';
}
@@ -137,7 +137,7 @@ if ($action == 'update') {
llxHeader('', $langs->trans("TaxSetup"));
$form = new Form($db);
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$formaccounting = new FormAccounting($db);
}
@@ -282,7 +282,7 @@ echo '
';
echo '';
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$langs->load("accountancy");
print ''.$langs->trans("AccountingAccountForSalesTaxAreDefinedInto", $langs->transnoentitiesnoconv("MenuAccountancy"), $langs->transnoentitiesnoconv("Setup")).' ';
}
diff --git a/htdocs/admin/ticket_public.php b/htdocs/admin/ticket_public.php
index fdb3117423b..3e4c088620d 100644
--- a/htdocs/admin/ticket_public.php
+++ b/htdocs/admin/ticket_public.php
@@ -101,7 +101,7 @@ if ($action == 'setTICKET_ENABLE_PUBLIC_INTERFACE') {
}
$text_home = GETPOST('TICKET_PUBLIC_TEXT_HOME', 'restricthtml');
- if (!empty($text_home)) {
+ if (GETPOSTISSET('TICKET_PUBLIC_TEXT_HOME')) {
$res = dolibarr_set_const($db, 'TICKET_PUBLIC_TEXT_HOME', $text_home, 'chaine', 0, '', $conf->entity);
} else {
$res = dolibarr_set_const($db, 'TICKET_PUBLIC_TEXT_HOME', $langs->trans('TicketPublicInterfaceTextHome'), 'chaine', 0, '', $conf->entity);
@@ -235,12 +235,10 @@ $head = ticketAdminPrepareHead();
print dol_get_fiche_head($head, 'public', $langs->trans("Module56000Name"), -1, "ticket");
-print ''.$langs->trans("TicketPublicAccess").' : '.dol_buildpath('/public/ticket/index.php?entity='.$conf->entity, 2).' ';
-
-print dol_get_fiche_end();
-
$param = '';
+print ' ';
+
$enabledisablehtml = $langs->trans("TicketsActivatePublicInterface").' ';
if (empty($conf->global->TICKET_ENABLE_PUBLIC_INTERFACE)) {
// Button off, click to enable
@@ -256,9 +254,30 @@ if (empty($conf->global->TICKET_ENABLE_PUBLIC_INTERFACE)) {
print $enabledisablehtml;
print ' ';
-print ' ';
+print dol_get_fiche_end();
+
+
if (!empty($conf->global->TICKET_ENABLE_PUBLIC_INTERFACE)) {
+ print ' ';
+
+
+ // Define $urlwithroot
+ $urlwithouturlroot = preg_replace('/'.preg_quote(DOL_URL_ROOT, '/').'$/i', '', trim($dolibarr_main_url_root));
+ $urlwithroot = $urlwithouturlroot.DOL_URL_ROOT; // This is to use external domain name found into config file
+ //$urlwithroot=DOL_MAIN_URL_ROOT; // This is to use same domain name than current
+
+ print ''.$langs->trans("TicketPublicAccess").' : ';
+ print '';
+ print ajax_autoselect('publicurlmember');
+
+
+ print ' ';
+
+
print '';
print ' ';
print ' ';
@@ -371,8 +390,8 @@ if (!empty($conf->global->TICKET_ENABLE_PUBLIC_INTERFACE)) {
print $form->textwithpicto('', $langs->trans("TicketPublicInterfaceTopicHelp"), 1, 'help');
print '';
- // Texte d'accueil homepage
- $public_text_home = $conf->global->TICKET_PUBLIC_TEXT_HOME ? $conf->global->TICKET_PUBLIC_TEXT_HOME : $langs->trans('TicketPublicInterfaceTextHome');
+ // Text on home page
+ $public_text_home = getDolGlobalString('TICKET_PUBLIC_TEXT_HOME', ''.$langs->trans("TicketPublicDesc").' ');
print ''.$langs->trans("TicketPublicInterfaceTextHomeLabelAdmin").'';
print ' ';
require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
@@ -383,7 +402,7 @@ if (!empty($conf->global->TICKET_ENABLE_PUBLIC_INTERFACE)) {
print $form->textwithpicto('', $langs->trans("TicketPublicInterfaceTextHomeHelpAdmin"), 1, 'help');
print ' ';
- // Texte d'aide à la saisie du message
+ // Text to help to enter a ticket
$public_text_help_message = $conf->global->TICKET_PUBLIC_TEXT_HELP_MESSAGE ? $conf->global->TICKET_PUBLIC_TEXT_HELP_MESSAGE : $langs->trans('TicketPublicPleaseBeAccuratelyDescribe');
print ''.$langs->trans("TicketPublicInterfaceTextHelpMessageLabelAdmin").'';
print ' ';
diff --git a/htdocs/admin/tools/export.php b/htdocs/admin/tools/export.php
index d21622d1f68..3f3316f6996 100644
--- a/htdocs/admin/tools/export.php
+++ b/htdocs/admin/tools/export.php
@@ -56,21 +56,23 @@ if (!$user->admin) {
accessforbidden();
}
-if ($file && !$what) {
- //print DOL_URL_ROOT.'/dolibarr_export.php';
- header("Location: ".DOL_URL_ROOT.'/admin/tools/dolibarr_export.php?msg='.urlencode($langs->trans("ErrorFieldRequired", $langs->transnoentities("ExportMethod"))).(GETPOST('page_y', 'int') ? '&page_y='.GETPOST('page_y', 'int') : ''));
- exit;
-}
-
$errormsg = '';
+$utils = new Utils($db);
+
/*
* Actions
*/
+if ($file && !$what) {
+ //print DOL_URL_ROOT.'/dolibarr_export.php';
+ header("Location: ".DOL_URL_ROOT.'/admin/tools/dolibarr_export.php?msg='.urlencode($langs->trans("ErrorFieldRequired", $langs->transnoentities("ExportMethod"))).(GETPOST('page_y', 'int') ? '&page_y='.GETPOST('page_y', 'int') : ''));
+ exit;
+}
+
if ($action == 'delete') {
- $file = $conf->admin->dir_output.'/'.GETPOST('urlfile');
+ $file = $conf->admin->dir_output.'/'.dol_sanitizeFileName(GETPOST('urlfile'));
$ret = dol_delete_file($file, 1);
if ($ret) {
setEventMessages($langs->trans("FileWasRemoved", GETPOST('urlfile')), null, 'mesgs');
@@ -80,11 +82,6 @@ if ($action == 'delete') {
$action = '';
}
-
-/*
- * View
- */
-
$_SESSION["commandbackuplastdone"] = '';
$_SESSION["commandbackuptorun"] = '';
$_SESSION["commandbackupresult"] = '';
@@ -103,13 +100,6 @@ if (!empty($MemoryLimit)) {
@ini_set('memory_limit', $MemoryLimit);
}
-
-//$help_url='EN:Backups|FR:Sauvegardes|ES:Copias_de_seguridad';
-//llxHeader('','',$help_url);
-
-//print load_fiche_titre($langs->trans("Backup"),'','title_setup');
-
-
// Start with empty buffer
$dump_buffer = '';
$dump_buffer_len = 0;
@@ -122,9 +112,6 @@ $outputdir = $conf->admin->dir_output.'/backup';
$result = dol_mkdir($outputdir);
-$utils = new Utils($db);
-
-
// MYSQL
if ($what == 'mysql') {
$cmddump = GETPOST("mysqldump", 'none'); // Do not sanitize here with 'alpha', will be sanitize later by dol_sanitizePathName and escapeshellarg
@@ -166,7 +153,7 @@ if ($what == 'postgresql') {
$cmddump = dol_sanitizePathName($cmddump);
/* Not required, the command is output on screen but not ran for pgsql
- if (! empty($dolibarr_main_restrict_os_commands))
+ if (!empty($dolibarr_main_restrict_os_commands))
{
$arrayofallowedcommand=explode(',', $dolibarr_main_restrict_os_commands);
dol_syslog("Command are restricted to ".$dolibarr_main_restrict_os_commands.". We check that one of this command is inside ".$cmddump);
@@ -216,7 +203,16 @@ if ($errormsg) {
}*/
}
+
+
+/*
+ * View
+ */
+
+top_httphead();
+
$db->close();
// Redirect to backup page
header("Location: dolibarr_export.php".(GETPOST('page_y', 'int') ? '?page_y='.GETPOST('page_y', 'int') : ''));
+exit();
diff --git a/htdocs/admin/tools/export_files.php b/htdocs/admin/tools/export_files.php
index bc627cc14f0..84bbd197a64 100644
--- a/htdocs/admin/tools/export_files.php
+++ b/htdocs/admin/tools/export_files.php
@@ -127,7 +127,7 @@ $result = dol_mkdir($outputdir);
$utils = new Utils($db);
-if ($export_type == 'externalmodule' && ! empty($what)) {
+if ($export_type == 'externalmodule' && !empty($what)) {
$fulldirtocompress = DOL_DOCUMENT_ROOT.'/custom/'.dol_sanitizeFileName($what);
} else {
$fulldirtocompress = DOL_DATA_ROOT;
@@ -205,7 +205,12 @@ if ($compression == 'zip') {
print $errormsg;
}
+
+// Output export
+
if ($export_type != 'externalmodule' || empty($what)) {
+ top_httphead();
+
if ($errormsg) {
setEventMessages($langs->trans("Error")." : ".$errormsg, null, 'errors');
} else {
@@ -218,12 +223,15 @@ if ($export_type != 'externalmodule' || empty($what)) {
$returnto = 'dolibarr_export.php';
header("Location: ".$returnto);
+
exit();
} else {
+ top_httphead('application/zip');
+
$zipname = $outputdir."/".$file;
// Then download the zipped file.
- header('Content-Type: application/zip');
+
header('Content-disposition: attachment; filename='.basename($zipname));
header('Content-Length: '.filesize($zipname));
readfile($zipname);
diff --git a/htdocs/admin/tools/listevents.php b/htdocs/admin/tools/listevents.php
index 6d6a8edb10f..da7ae901766 100644
--- a/htdocs/admin/tools/listevents.php
+++ b/htdocs/admin/tools/listevents.php
@@ -418,7 +418,7 @@ if ($result) {
$userstatic->status = $obj->status;
print $userstatic->getLoginUrl(1);
- if (!empty($conf->multicompany->enabled) && $userstatic->admin && !$userstatic->entity) {
+ if (isModEnabled('multicompany') && $userstatic->admin && !$userstatic->entity) {
print img_picto($langs->trans("SuperAdministrator"), 'redstar', 'class="valignmiddle paddingleft"');
} elseif ($userstatic->admin) {
print img_picto($langs->trans("Administrator"), 'star', 'class="valignmiddle paddingleft"');
diff --git a/htdocs/admin/translation.php b/htdocs/admin/translation.php
index 1e667e7abb4..154ac3f5665 100644
--- a/htdocs/admin/translation.php
+++ b/htdocs/admin/translation.php
@@ -346,7 +346,7 @@ if ($mode == 'overwrite') {
print_liste_field_titre("Language_en_US_es_MX_etc", $_SERVER["PHP_SELF"], 'lang,transkey', '', $param, '', $sortfield, $sortorder);
print_liste_field_titre("Key", $_SERVER["PHP_SELF"], 'transkey', '', $param, '', $sortfield, $sortorder);
print_liste_field_titre("NewTranslationStringToShow", $_SERVER["PHP_SELF"], 'transvalue', '', $param, '', $sortfield, $sortorder);
- //if (! empty($conf->multicompany->enabled) && !$user->entity) print_liste_field_titre("Entity", $_SERVER["PHP_SELF"], 'entity,transkey', '', $param, '', $sortfield, $sortorder);
+ //if (isModEnabled('multicompany') && !$user->entity) print_liste_field_titre("Entity", $_SERVER["PHP_SELF"], 'entity,transkey', '', $param, '', $sortfield, $sortorder);
print ' ';
print " \n";
@@ -504,7 +504,7 @@ if ($mode == 'searchkey') {
print '';
print ' ';
// Limit to superadmin
- /*if (! empty($conf->multicompany->enabled) && !$user->entity)
+ /*if (isModEnabled('multicompany') && !$user->entity)
{
print ' ';
print ' ';
@@ -525,7 +525,7 @@ if ($mode == 'searchkey') {
print_liste_field_titre("Language_en_US_es_MX_etc", $_SERVER["PHP_SELF"], 'lang,transkey', '', $param, '', $sortfield, $sortorder);
print_liste_field_titre("Key", $_SERVER["PHP_SELF"], 'transkey', '', $param, '', $sortfield, $sortorder);
print_liste_field_titre("CurrentTranslationString", $_SERVER["PHP_SELF"], 'transvalue', '', $param, '', $sortfield, $sortorder);
- //if (! empty($conf->multicompany->enabled) && !$user->entity) print_liste_field_titre("Entity", $_SERVER["PHP_SELF"], 'entity,transkey', '', $param, '', $sortfield, $sortorder);
+ //if (isModEnabled('multicompany') && !$user->entity) print_liste_field_titre("Entity", $_SERVER["PHP_SELF"], 'entity,transkey', '', $param, '', $sortfield, $sortorder);
print ' ';
print "\n";
@@ -609,7 +609,7 @@ if ($mode == 'searchkey') {
$htmltext = $langs->trans("TransKeyWithoutOriginalValue", $key);
print $form->textwithpicto('', $htmltext, 1, 'warning');
}
- /*if (! empty($conf->multicompany->enabled) && !$user->entity)
+ /*if (isModEnabled('multicompany') && !$user->entity)
{
print ''.$val.' ';
}*/
diff --git a/htdocs/admin/webhook.php b/htdocs/admin/webhook.php
index 9dec7a8eeec..b589eac4079 100644
--- a/htdocs/admin/webhook.php
+++ b/htdocs/admin/webhook.php
@@ -343,7 +343,7 @@ if ($action == 'edit') {
include_once DOL_DOCUMENT_ROOT.'/core/lib/security2.lib.php';
print dolJSToSetRandomPassword($constname, 'generate_token'.$constname);
} elseif ($val['type'] == 'product') {
- if (!empty($conf->product->enabled) || !empty($conf->service->enabled)) {
+ if (isModEnabled("product") || isModEnabled("service")) {
$selected = (empty($conf->global->$constname) ? '' : $conf->global->$constname);
$form->select_produits($selected, $constname, '', 0);
}
diff --git a/htdocs/admin/workflow.php b/htdocs/admin/workflow.php
index 47e6e87a244..e29a351a705 100644
--- a/htdocs/admin/workflow.php
+++ b/htdocs/admin/workflow.php
@@ -62,13 +62,13 @@ $workflowcodes = array(
'WORKFLOW_PROPAL_AUTOCREATE_ORDER'=>array(
'family'=>'create',
'position'=>10,
- 'enabled'=>(!empty($conf->propal->enabled) && !empty($conf->commande->enabled)),
+ 'enabled'=>(isModEnabled("propal") && isModEnabled('commande')),
'picto'=>'order'
),
'WORKFLOW_ORDER_AUTOCREATE_INVOICE'=>array(
'family'=>'create',
'position'=>20,
- 'enabled'=>(!empty($conf->commande->enabled) && isModEnabled('facture')),
+ 'enabled'=>(isModEnabled('commande') && isModEnabled('facture')),
'picto'=>'bill'
),
'WORKFLOW_TICKET_CREATE_INTERVENTION' => array (
@@ -84,14 +84,14 @@ $workflowcodes = array(
'WORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL'=>array(
'family'=>'classify_proposal',
'position'=>30,
- 'enabled'=>(!empty($conf->propal->enabled) && !empty($conf->commande->enabled)),
+ 'enabled'=>(isModEnabled("propal") && isModEnabled('commande')),
'picto'=>'propal',
'warning'=>''
),
'WORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL'=>array(
'family'=>'classify_proposal',
'position'=>31,
- 'enabled'=>(!empty($conf->propal->enabled) && isModEnabled('facture')),
+ 'enabled'=>(isModEnabled("propal") && isModEnabled('facture')),
'picto'=>'propal',
'warning'=>''
),
@@ -100,19 +100,19 @@ $workflowcodes = array(
'WORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING'=>array( // when shipping validated
'family'=>'classify_order',
'position'=>40,
- 'enabled'=>(!empty($conf->expedition->enabled) && !empty($conf->commande->enabled)),
+ 'enabled'=>(isModEnabled("expedition") && isModEnabled('commande')),
'picto'=>'order'
),
'WORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING_CLOSED'=>array( // when shipping closed
'family'=>'classify_order',
'position'=>41,
- 'enabled'=>(!empty($conf->expedition->enabled) && !empty($conf->commande->enabled)),
+ 'enabled'=>(isModEnabled("expedition") && isModEnabled('commande')),
'picto'=>'order'
),
'WORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER'=>array(
'family'=>'classify_order',
'position'=>42,
- 'enabled'=>(isModEnabled('facture') && !empty($conf->commande->enabled)),
+ 'enabled'=>(isModEnabled('facture') && isModEnabled('commande')),
'picto'=>'order',
'warning'=>''
), // For this option, if module invoice is disabled, it does not exists, so "Classify billed" for order must be done manually from order card.
@@ -123,7 +123,7 @@ $workflowcodes = array(
'WORKFLOW_ORDER_CLASSIFY_BILLED_SUPPLIER_PROPOSAL'=>array(
'family'=>'classify_supplier_proposal',
'position'=>60,
- 'enabled'=>(!empty($conf->supplier_proposal->enabled) && ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled))),
+ 'enabled'=>(isModEnabled('supplier_proposal') && ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice"))),
'picto'=>'supplier_proposal',
'warning'=>''
),
@@ -132,7 +132,7 @@ $workflowcodes = array(
'WORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION'=>array(
'family'=>'classify_supplier_order',
'position'=>63,
- 'enabled'=>(!empty($conf->global->MAIN_FEATURES_LEVEL) && (!empty($conf->reception->enabled)) && ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || empty($conf->supplier_order->enabled))),
+ 'enabled'=>(!empty($conf->global->MAIN_FEATURES_LEVEL) && (isModEnabled("reception")) && ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || empty($conf->supplier_order->enabled))),
'picto'=>'supplier_order',
'warning'=>''
),
@@ -140,7 +140,7 @@ $workflowcodes = array(
'WORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED'=>array(
'family'=>'classify_supplier_order',
'position'=>64,
- 'enabled'=>(!empty($conf->global->MAIN_FEATURES_LEVEL) && (!empty($conf->reception->enabled)) && ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || empty($conf->supplier_order->enabled))),
+ 'enabled'=>(!empty($conf->global->MAIN_FEATURES_LEVEL) && (isModEnabled("reception")) && ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || empty($conf->supplier_order->enabled))),
'picto'=>'supplier_order',
'warning'=>''
),
@@ -148,7 +148,7 @@ $workflowcodes = array(
'WORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER'=>array(
'family'=>'classify_supplier_order',
'position'=>65,
- 'enabled'=>((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)),
+ 'enabled'=>((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")),
'picto'=>'supplier_order',
'warning'=>''
),
@@ -157,7 +157,7 @@ $workflowcodes = array(
'WORKFLOW_BILL_ON_RECEPTION'=>array(
'family'=>'classify_reception',
'position'=>80,
- 'enabled'=>(!empty($conf->reception->enabled) && ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled))),
+ 'enabled'=>(isModEnabled("reception") && ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice"))),
'picto'=>'reception'
),
@@ -165,7 +165,7 @@ $workflowcodes = array(
'WORKFLOW_SHIPPING_CLASSIFY_CLOSED_INVOICE' => array(
'family' => 'classify_shipping',
'position' => 90,
- 'enabled' => !empty($conf->expedition->enabled) && !empty($conf->facture->enabled),
+ 'enabled' => isModEnabled("expedition") && isModEnabled("facture"),
'picto' => 'shipment'
),
diff --git a/htdocs/api/class/api.class.php b/htdocs/api/class/api.class.php
index 32d691400d6..0ef143d36ad 100644
--- a/htdocs/api/class/api.class.php
+++ b/htdocs/api/class/api.class.php
@@ -115,6 +115,8 @@ class DolibarrApi
// Remove linkedObjects. We should already have linkedObjectsIds that avoid huge responses
unset($object->linkedObjects);
+ unset($object->linkedObjectsFullLoaded);
+ //unset($object->lines[$i]->linked_objects); // This is the array to create linked object during create
unset($object->fields);
unset($object->oldline);
@@ -139,6 +141,7 @@ class DolibarrApi
unset($object->projet); // Should be fk_project
unset($object->project); // Should be fk_project
+ unset($object->fk_projet); // Should be fk_project
unset($object->author); // Should be fk_user_author
unset($object->timespent_old_duration);
unset($object->timespent_id);
@@ -160,8 +163,8 @@ class DolibarrApi
unset($object->statuts_short);
unset($object->statuts_logo);
unset($object->statuts_long);
- unset($object->labelStatus);
- unset($object->labelStatusShort);
+ //unset($object->labelStatus);
+ //unset($object->labelStatusShort);
unset($object->stats_propale);
unset($object->stats_commande);
diff --git a/htdocs/api/class/api_login.class.php b/htdocs/api/class/api_login.class.php
index 5282a43dacc..d5362f4ac56 100644
--- a/htdocs/api/class/api_login.class.php
+++ b/htdocs/api/class/api_login.class.php
@@ -88,7 +88,7 @@ class Login
global $conf, $dolibarr_main_authentication, $dolibarr_auto_user;
// Is the login API disabled ? The token must be generated from backoffice only.
- if (! empty($conf->global->API_DISABLE_LOGIN_API)) {
+ if (!empty($conf->global->API_DISABLE_LOGIN_API)) {
dol_syslog("Warning: A try to use the login API has been done while the login API is disabled. You must generate or get the token from the backoffice.", LOG_WARNING);
throw new RestException(403, "Error, the login API has been disabled for security purpose. You must generate or get the token from the backoffice.");
}
diff --git a/htdocs/asset/accountancy_codes.php b/htdocs/asset/accountancy_codes.php
index 431b4ba7c68..824f1a75bbb 100644
--- a/htdocs/asset/accountancy_codes.php
+++ b/htdocs/asset/accountancy_codes.php
@@ -58,7 +58,7 @@ $permissiontoadd = $user->rights->asset->write; // Used by the include of action
if ($user->socid > 0) accessforbidden();
$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
restrictedArea($user, $object->element, $object->id, $object->table_element, '', 'fk_soc', 'rowid', $isdraft);
-if (empty($conf->asset->enabled)) accessforbidden();
+if (!isModEnabled('asset')) accessforbidden();
$result = $assetaccountancycodes->fetchAccountancyCodes($object->id);
if ($result < 0) {
diff --git a/htdocs/asset/admin/setup.php b/htdocs/asset/admin/setup.php
index 448473003b3..4f8f06ca160 100644
--- a/htdocs/asset/admin/setup.php
+++ b/htdocs/asset/admin/setup.php
@@ -524,7 +524,7 @@ if ($action == 'edit') {
include_once DOL_DOCUMENT_ROOT.'/core/lib/security2.lib.php';
print dolJSToSetRandomPassword($constname, 'generate_token'.$constname);
} elseif ($val['type'] == 'product') {
- if (!empty($conf->product->enabled) || !empty($conf->service->enabled)) {
+ if (isModEnabled("product") || isModEnabled("service")) {
$selected = (empty($conf->global->$constname) ? '' : $conf->global->$constname);
$form->select_produits($selected, $constname, '', 0);
}
diff --git a/htdocs/asset/agenda.php b/htdocs/asset/agenda.php
index 3d40cf62328..8d325954a76 100644
--- a/htdocs/asset/agenda.php
+++ b/htdocs/asset/agenda.php
@@ -86,7 +86,7 @@ $permissiontoadd = $user->rights->asset->write; // Used by the include of action
if ($user->socid > 0) accessforbidden();
$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
restrictedArea($user, $object->element, $object->id, $object->table_element, '', 'fk_soc', 'rowid', $isdraft);
-if (empty($conf->asset->enabled)) accessforbidden();
+if (!isModEnabled('asset')) accessforbidden();
/*
@@ -123,7 +123,7 @@ $form = new Form($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
- //if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
+ //if (!empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
$help_url = 'EN:Module_Agenda_En';
llxHeader('', $title, $help_url);
diff --git a/htdocs/asset/card.php b/htdocs/asset/card.php
index d94ba613d91..c2d768b5405 100644
--- a/htdocs/asset/card.php
+++ b/htdocs/asset/card.php
@@ -80,7 +80,7 @@ if ($user->socid > 0) accessforbidden();
if ($user->socid > 0) $socid = $user->socid;
$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
restrictedArea($user, $object->element, $object->id, $object->table_element, '', 'fk_soc', 'rowid', $isdraft);
-if (empty($conf->asset->enabled)) accessforbidden();
+if (!isModEnabled('asset')) accessforbidden();
if (!$permissiontoread) accessforbidden();
diff --git a/htdocs/asset/class/asset.class.php b/htdocs/asset/class/asset.class.php
index d144d95819b..55d2bc07593 100644
--- a/htdocs/asset/class/asset.class.php
+++ b/htdocs/asset/class/asset.class.php
@@ -195,7 +195,7 @@ class Asset extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -1171,10 +1171,10 @@ class Asset extends CommonObject
global $hidedetails, $hidedesc, $hideref;
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $this->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -1234,10 +1234,10 @@ class Asset extends CommonObject
global $hidedetails, $hidedesc, $hideref;
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $this->thirdparty->default_lang;
}
if (!empty($newlang)) {
diff --git a/htdocs/asset/class/assetmodel.class.php b/htdocs/asset/class/assetmodel.class.php
index 6b75702278d..fb574e6ea18 100644
--- a/htdocs/asset/class/assetmodel.class.php
+++ b/htdocs/asset/class/assetmodel.class.php
@@ -160,7 +160,7 @@ class AssetModel extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
diff --git a/htdocs/asset/depreciation.php b/htdocs/asset/depreciation.php
index 8f3547d81fb..679d750c668 100644
--- a/htdocs/asset/depreciation.php
+++ b/htdocs/asset/depreciation.php
@@ -56,7 +56,7 @@ if ($id > 0 || !empty($ref)) {
if ($user->socid > 0) accessforbidden();
$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
restrictedArea($user, $object->element, $object->id, $object->table_element, '', 'fk_soc', 'rowid', $isdraft);
-if (empty($conf->asset->enabled)) accessforbidden();
+if (!isModEnabled('asset')) accessforbidden();
if (!empty($object->not_depreciated)) accessforbidden();
$object->asset_depreciation_options = &$assetdepreciationoptions;
diff --git a/htdocs/asset/depreciation_options.php b/htdocs/asset/depreciation_options.php
index ba5719705dc..23c66d8961b 100644
--- a/htdocs/asset/depreciation_options.php
+++ b/htdocs/asset/depreciation_options.php
@@ -58,7 +58,7 @@ $permissiontoadd = $user->rights->asset->write; // Used by the include of action
if ($user->socid > 0) accessforbidden();
$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
restrictedArea($user, $object->element, $object->id, $object->table_element, '', 'fk_soc', 'rowid', $isdraft);
-if (empty($conf->asset->enabled)) accessforbidden();
+if (!isModEnabled('asset')) accessforbidden();
if (!empty($object->not_depreciated)) accessforbidden();
$object->asset_depreciation_options = &$assetdepreciationoptions;
diff --git a/htdocs/asset/disposal.php b/htdocs/asset/disposal.php
index 7fddb92b05f..e06e86c78ac 100644
--- a/htdocs/asset/disposal.php
+++ b/htdocs/asset/disposal.php
@@ -57,7 +57,7 @@ $permissiontoadd = $user->rights->asset->write; // Used by the include of action
if ($user->socid > 0) accessforbidden();
$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
restrictedArea($user, $object->element, $object->id, $object->table_element, '', 'fk_soc', 'rowid', $isdraft);
-if (empty($conf->asset->enabled)) accessforbidden();
+if (!isModEnabled('asset')) accessforbidden();
if (!isset($object->disposal_date) || $object->disposal_date === "") accessforbidden();
diff --git a/htdocs/asset/document.php b/htdocs/asset/document.php
index 96b222b26c1..9f4439f94d6 100644
--- a/htdocs/asset/document.php
+++ b/htdocs/asset/document.php
@@ -78,7 +78,7 @@ $permissiontoadd = $user->rights->asset->asset->write; // Used by the include of
if ($user->socid > 0) accessforbidden();
$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
restrictedArea($user, $object->element, $object->id, $object->table_element, '', 'fk_soc', 'rowid', $isdraft);
-if (empty($conf->asset->enabled)) accessforbidden();
+if (!isModEnabled('asset')) accessforbidden();
/*
diff --git a/htdocs/asset/list.php b/htdocs/asset/list.php
index c475e22fc83..45f90101adc 100644
--- a/htdocs/asset/list.php
+++ b/htdocs/asset/list.php
@@ -125,7 +125,7 @@ $permissiontoadd = $user->rights->asset->write;
$permissiontodelete = $user->rights->asset->delete;
// Security check
-if (empty($conf->asset->enabled)) {
+if (!isModEnabled('asset')) {
accessforbidden('Module not enabled');
}
@@ -134,7 +134,7 @@ if ($user->socid > 0) accessforbidden();
$socid = 0; if ($user->socid > 0) $socid = $user->socid;
$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
restrictedArea($user, $object->element, $object->id, $object->table_element, '', 'fk_soc', 'rowid', $isdraft);
-if (empty($conf->asset->enabled)) accessforbidden();
+if (!isModEnabled('asset')) accessforbidden();
if (!$permissiontoread) accessforbidden();
diff --git a/htdocs/asset/model/accountancy_codes.php b/htdocs/asset/model/accountancy_codes.php
index 7582b61177e..6eb6d70abaf 100644
--- a/htdocs/asset/model/accountancy_codes.php
+++ b/htdocs/asset/model/accountancy_codes.php
@@ -59,7 +59,7 @@ $permissiontoadd = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->rig
if ($user->socid > 0) accessforbidden();
$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
restrictedArea($user, 'asset', $object->id, $object->table_element, '', 'fk_soc', 'rowid', $isdraft);
-if (empty($conf->asset->enabled)) accessforbidden();
+if (!isModEnabled('asset')) accessforbidden();
if (!$permissiontoread) accessforbidden();
$result = $assetaccountancycodes->fetchAccountancyCodes(0, $object->id);
diff --git a/htdocs/asset/model/agenda.php b/htdocs/asset/model/agenda.php
index f1db3030dc2..fb2ff12aa88 100644
--- a/htdocs/asset/model/agenda.php
+++ b/htdocs/asset/model/agenda.php
@@ -88,7 +88,7 @@ if ($user->socid > 0) accessforbidden();
if ($user->socid > 0) $socid = $user->socid;
$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
restrictedArea($user, 'asset', $object->id, $object->table_element, '', 'fk_soc', 'rowid', $isdraft);
-if (empty($conf->asset->enabled)) accessforbidden();
+if (!isModEnabled('asset')) accessforbidden();
if (!$permissiontoread) accessforbidden();
@@ -125,7 +125,7 @@ $form = new Form($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
- //if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
+ //if (!empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
$help_url = 'EN:Module_Agenda_En';
llxHeader('', $title, $help_url);
diff --git a/htdocs/asset/model/card.php b/htdocs/asset/model/card.php
index 3d3ec2f67d2..756ac32e31f 100644
--- a/htdocs/asset/model/card.php
+++ b/htdocs/asset/model/card.php
@@ -80,7 +80,7 @@ if ($user->socid > 0) accessforbidden();
if ($user->socid > 0) $socid = $user->socid;
$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
restrictedArea($user, 'asset', $object->id, $object->table_element, '', 'fk_soc', 'rowid', $isdraft);
-if (empty($conf->asset->enabled)) accessforbidden();
+if (!isModEnabled('asset')) accessforbidden();
if (!$permissiontoread) accessforbidden();
diff --git a/htdocs/asset/model/depreciation_options.php b/htdocs/asset/model/depreciation_options.php
index c34bd38dc46..f3f585f5397 100644
--- a/htdocs/asset/model/depreciation_options.php
+++ b/htdocs/asset/model/depreciation_options.php
@@ -59,7 +59,7 @@ $permissiontoadd = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->rig
if ($user->socid > 0) accessforbidden();
$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
restrictedArea($user, 'asset', $object->id, $object->table_element, '', 'fk_soc', 'rowid', $isdraft);
-if (empty($conf->asset->enabled)) accessforbidden();
+if (!isModEnabled('asset')) accessforbidden();
if (!$permissiontoread) accessforbidden();
$object->asset_depreciation_options = &$assetdepreciationoptions;
diff --git a/htdocs/asset/model/list.php b/htdocs/asset/model/list.php
index a55d5f49f9a..1d85a982e5d 100644
--- a/htdocs/asset/model/list.php
+++ b/htdocs/asset/model/list.php
@@ -126,7 +126,7 @@ $permissiontoadd = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->rig
$permissiontodelete = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->rights->asset->delete) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->asset->model_advance->delete)));
// Security check
-if (empty($conf->asset->enabled)) {
+if (!isModEnabled('asset')) {
accessforbidden('Module not enabled');
}
@@ -140,7 +140,7 @@ if ($user->socid > 0) {
}
$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
restrictedArea($user, 'asset', $object->id, $object->table_element, '', 'fk_soc', 'rowid', $isdraft);
-if (empty($conf->asset->enabled)) accessforbidden();
+if (!isModEnabled('asset')) accessforbidden();
if (!$permissiontoread) accessforbidden();
/*
diff --git a/htdocs/asset/note.php b/htdocs/asset/note.php
index 8de86d49bb7..810ab7f4462 100644
--- a/htdocs/asset/note.php
+++ b/htdocs/asset/note.php
@@ -57,7 +57,7 @@ $permissiontoadd = $user->rights->asset->write; // Used by the include of action
if ($user->socid > 0) accessforbidden();
$isdraft = (($object->status == $object::STATUS_DRAFT) ? 1 : 0);
restrictedArea($user, $object->element, $object->id, $object->table_element, '', 'fk_soc', 'rowid', $isdraft);
-if (empty($conf->asset->enabled)) accessforbidden();
+if (!isModEnabled('asset')) accessforbidden();
/*
diff --git a/htdocs/blockedlog/admin/blockedlog.php b/htdocs/blockedlog/admin/blockedlog.php
index 8880e6c1e86..0f9034e374a 100644
--- a/htdocs/blockedlog/admin/blockedlog.php
+++ b/htdocs/blockedlog/admin/blockedlog.php
@@ -22,22 +22,25 @@
* \brief Page setup for blockedlog module
*/
+
+// Load Dolibarr environment
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/blockedlog/lib/blockedlog.lib.php';
require_once DOL_DOCUMENT_ROOT.'/blockedlog/class/blockedlog.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
// Load translation files required by the page
-$langs->loadLangs(array("admin", "other", "blockedlog"));
+$langs->loadLangs(array('admin', 'blockedlog', 'other'));
+// Access Control
if (!$user->admin || empty($conf->blockedlog->enabled)) {
accessforbidden();
}
-$action = GETPOST('action', 'aZ09');
+// Get Parameters
+$action = GETPOST('action', 'aZ09');
$backtopage = GETPOST('backtopage', 'alpha');
-
-$withtab = GETPOST('withtab', 'int');
+$withtab = GETPOST('withtab', 'int');
/*
diff --git a/htdocs/blockedlog/admin/blockedlog_list.php b/htdocs/blockedlog/admin/blockedlog_list.php
index 4490b3897df..9bb4456e840 100644
--- a/htdocs/blockedlog/admin/blockedlog_list.php
+++ b/htdocs/blockedlog/admin/blockedlog_list.php
@@ -18,11 +18,13 @@
*/
/**
- * \file htdocs/blockedlog/admin/blockedlog_list.php
- * \ingroup blockedlog
- * \brief Page setup for blockedlog module
+ * \file htdocs/blockedlog/admin/blockedlog_list.php
+ * \ingroup blockedlog
+ * \brief Page setup for blockedlog module
*/
+
+// Load Dolibarr environment
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/blockedlog/lib/blockedlog.lib.php';
require_once DOL_DOCUMENT_ROOT.'/blockedlog/class/blockedlog.class.php';
@@ -31,16 +33,18 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
// Load translation files required by the page
-$langs->loadLangs(array("admin", "other", "blockedlog", "bills"));
+$langs->loadLangs(array('admin', 'bills', 'blockedlog', 'other'));
+// Access Control
if ((!$user->admin && empty($user->rights->blockedlog->read)) || empty($conf->blockedlog->enabled)) {
accessforbidden();
}
-$action = GETPOST('action', 'aZ09');
+// Get Parameters
+$action = GETPOST('action', 'aZ09');
$contextpage = GETPOST('contextpage', 'aZ') ?GETPOST('contextpage', 'aZ') : 'blockedloglist'; // To manage different context of search
-$backtopage = GETPOST('backtopage', 'alpha'); // Go back to a dedicated page
-$optioncss = GETPOST('optioncss', 'aZ'); // Option for the css output (always '' except when 'print')
+$backtopage = GETPOST('backtopage', 'alpha'); // Go back to a dedicated page
+$optioncss = GETPOST('optioncss', 'aZ'); // Option for the css output (always '' except when 'print')
$search_showonlyerrors = GETPOST('search_showonlyerrors', 'int');
if ($search_showonlyerrors < 0) {
@@ -95,7 +99,7 @@ $block_static->loadTrackedEvents();
$result = restrictedArea($user, 'blockedlog', 0, '');
-
+// Execution Time
$max_execution_time_for_importexport = (empty($conf->global->EXPORT_MAX_EXECUTION_TIME) ? 300 : $conf->global->EXPORT_MAX_EXECUTION_TIME); // 5mn if not defined
$max_time = @ini_get("max_execution_time");
if ($max_time && $max_time < $max_execution_time_for_importexport) {
@@ -523,7 +527,7 @@ if (is_array($blocks)) {
print '';
// ID
- print ''.$block->id.' ';
+ print ''.dol_escape_htmltag($block->id).' ';
// Date
print ''.dol_print_date($block->date_creation, 'dayhour').' ';
@@ -531,11 +535,11 @@ if (is_array($blocks)) {
// User
print '';
//print $block->getUser()
- print $block->user_fullname;
+ print dol_escape_htmltag($block->user_fullname);
print ' ';
// Action
- print ''.$langs->trans('log'.$block->action).' ';
+ print ''.$langs->trans('log'.$block->action).' ';
// Ref
print '';
diff --git a/htdocs/blockedlog/ajax/authority.php b/htdocs/blockedlog/ajax/authority.php
index 78f944f692a..2da0544e0a7 100644
--- a/htdocs/blockedlog/ajax/authority.php
+++ b/htdocs/blockedlog/ajax/authority.php
@@ -44,6 +44,13 @@ require_once DOL_DOCUMENT_ROOT.'/blockedlog/class/authority.class.php';
$user = new User($db);
$user->fetch(1); //TODO conf user authority
+
+/*
+ * View
+ */
+
+top_httphead();
+
$auth = new BlockedLogAuthority($db);
$signature = GETPOST('s');
diff --git a/htdocs/blockedlog/ajax/block-add.php b/htdocs/blockedlog/ajax/block-add.php
index 53093f02d18..e2009a01da1 100644
--- a/htdocs/blockedlog/ajax/block-add.php
+++ b/htdocs/blockedlog/ajax/block-add.php
@@ -42,6 +42,13 @@ $id = GETPOST('id', 'int');
$element = GETPOST('element', 'alpha');
$action = GETPOST('action', 'aZ09');
+
+/*
+ * View
+ */
+
+top_httphead();
+
if ($element === 'facture') {
require_once DOL_DOCUMENT_ROOT.'/blockedlog/class/blockedlog.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php';
diff --git a/htdocs/blockedlog/ajax/block-info.php b/htdocs/blockedlog/ajax/block-info.php
index e6f9ea0de15..da27b8fc50e 100644
--- a/htdocs/blockedlog/ajax/block-info.php
+++ b/htdocs/blockedlog/ajax/block-info.php
@@ -54,6 +54,8 @@ $langs->loadLangs(array("admin"));
* View
*/
+top_httphead();
+
print ''.$langs->trans('Field').' '.$langs->trans('Value').' ';
print '';
diff --git a/htdocs/blockedlog/ajax/check_signature.php b/htdocs/blockedlog/ajax/check_signature.php
index 4d59b56a981..60a763635c0 100644
--- a/htdocs/blockedlog/ajax/check_signature.php
+++ b/htdocs/blockedlog/ajax/check_signature.php
@@ -48,6 +48,12 @@ if (empty($conf->global->BLOCKEDLOG_AUTHORITY_URL)) {
}
+/*
+ * View
+ */
+
+top_httphead();
+
$auth = new BlockedLogAuthority($db);
$auth->syncSignatureWithAuthority();
diff --git a/htdocs/blockedlog/class/blockedlog.class.php b/htdocs/blockedlog/class/blockedlog.class.php
index 37db04868cb..d6e1517344a 100644
--- a/htdocs/blockedlog/class/blockedlog.class.php
+++ b/htdocs/blockedlog/class/blockedlog.class.php
@@ -140,6 +140,7 @@ class BlockedLog
$this->trackedevents = array();
+ // Customer Invoice/Facture / Payment
if (isModEnabled('facture')) {
$this->trackedevents['BILL_VALIDATE'] = 'logBILL_VALIDATE';
$this->trackedevents['BILL_DELETE'] = 'logBILL_DELETE';
@@ -151,18 +152,19 @@ class BlockedLog
}
/* Supplier
- if (!empty($conf->fournisseur->enabled)) {
- $this->trackedevents['BILL_SUPPLIER_VALIDATE']='BlockedLogSupplierBillValidate';
+ // Supplier Invoice / Payment
+ if (isModEnabled("fournisseur")) {
+ $this->trackedevents['BILL_SUPPLIER_VALIDATE']='BlockedLogSupplierBillValidate';
$this->trackedevents['BILL_SUPPLIER_DELETE']='BlockedLogSupplierBillDelete';
$this->trackedevents['BILL_SUPPLIER_SENTBYMAIL']='BlockedLogSupplierBillSentByEmail'; // Trigger key does not exists, we want just into array to list it as done
- $this->trackedevents['SUPPLIER_DOC_DOWNLOAD']='BlockedLogSupplierBillDownload'; // Trigger key does not exists, we want just into array to list it as done
- $this->trackedevents['SUPPLIER_DOC_PREVIEW']='BlockedLogSupplierBillPreview'; // Trigger key does not exists, we want just into array to list it as done
-
- $this->trackedevents['PAYMENT_SUPPLIER_CREATE']='BlockedLogSupplierBillPaymentCreate';
- $this->trackedevents['PAYMENT_SUPPLIER_DELETE']='BlockedLogsupplierBillPaymentCreate';
+ $this->trackedevents['SUPPLIER_DOC_DOWNLOAD']='BlockedLogSupplierBillDownload'; // Trigger key does not exists, we want just into array to list it as done
+ $this->trackedevents['SUPPLIER_DOC_PREVIEW']='BlockedLogSupplierBillPreview'; // Trigger key does not exists, we want just into array to list it as done
+ $this->trackedevents['PAYMENT_SUPPLIER_CREATE']='BlockedLogSupplierBillPaymentCreate';
+ $this->trackedevents['PAYMENT_SUPPLIER_DELETE']='BlockedLogsupplierBillPaymentCreate';
}
*/
+ // Donation
if (!empty($conf->don->enabled)) {
$this->trackedevents['DON_VALIDATE'] = 'logDON_VALIDATE';
$this->trackedevents['DON_DELETE'] = 'logDON_DELETE';
@@ -172,23 +174,29 @@ class BlockedLog
}
/*
+ // Salary
if (!empty($conf->salary->enabled)) {
- $this->trackedevents['PAYMENT_SALARY_CREATE']='BlockedLogSalaryPaymentCreate';
- $this->trackedevents['PAYMENT_SALARY_MODIFY']='BlockedLogSalaryPaymentCreate';
- $this->trackedevents['PAYMENT_SALARY_DELETE']='BlockedLogSalaryPaymentCreate';
+ $this->trackedevents['PAYMENT_SALARY_CREATE']='BlockedLogSalaryPaymentCreate';
+ $this->trackedevents['PAYMENT_SALARY_MODIFY']='BlockedLogSalaryPaymentCreate';
+ $this->trackedevents['PAYMENT_SALARY_DELETE']='BlockedLogSalaryPaymentCreate';
}
*/
- if (!empty($conf->adherent->enabled)) {
+ // Members
+ if (isModEnabled('adherent')) {
$this->trackedevents['MEMBER_SUBSCRIPTION_CREATE'] = 'logMEMBER_SUBSCRIPTION_CREATE';
$this->trackedevents['MEMBER_SUBSCRIPTION_MODIFY'] = 'logMEMBER_SUBSCRIPTION_MODIFY';
$this->trackedevents['MEMBER_SUBSCRIPTION_DELETE'] = 'logMEMBER_SUBSCRIPTION_DELETE';
}
- if (!empty($conf->banque->enabled)) {
+
+ // Bank
+ if (isModEnabled("banque")) {
$this->trackedevents['PAYMENT_VARIOUS_CREATE'] = 'logPAYMENT_VARIOUS_CREATE';
$this->trackedevents['PAYMENT_VARIOUS_MODIFY'] = 'logPAYMENT_VARIOUS_MODIFY';
$this->trackedevents['PAYMENT_VARIOUS_DELETE'] = 'logPAYMENT_VARIOUS_DELETE';
}
+
+ // Cashdesk
// $conf->global->BANK_ENABLE_POS_CASHCONTROL must be set to 1 by all external POS modules
$moduleposenabled = (!empty($conf->cashdesk->enabled) || !empty($conf->takepos->enabled) || !empty($conf->global->BANK_ENABLE_POS_CASHCONTROL));
if ($moduleposenabled) {
diff --git a/htdocs/blockedlog/lib/blockedlog.lib.php b/htdocs/blockedlog/lib/blockedlog.lib.php
index 44f7074d582..23a7ec1f62d 100644
--- a/htdocs/blockedlog/lib/blockedlog.lib.php
+++ b/htdocs/blockedlog/lib/blockedlog.lib.php
@@ -16,9 +16,9 @@
*/
/**
- * \file htdocs/blockedlog/lib/blockedlog.lib.php
- * \ingroup system
- * \brief Library for common blockedlog functions
+ * \file htdocs/blockedlog/lib/blockedlog.lib.php
+ * \ingroup system
+ * \brief Library for common blockedlog functions
*/
/**
diff --git a/htdocs/bom/bom_agenda.php b/htdocs/bom/bom_agenda.php
index d2c64eea0b6..ac3f672ad33 100644
--- a/htdocs/bom/bom_agenda.php
+++ b/htdocs/bom/bom_agenda.php
@@ -17,9 +17,9 @@
*/
/**
- * \file htdocs/modulebuilder/template/myobject_agenda.php
- * \ingroup bom
- * \brief Page of MyObject events
+ * \file htdocs/bom/bom_agenda.php
+ * \ingroup bom
+ * \brief Page of BOM events
*/
// Load Dolibarr environment
@@ -126,7 +126,7 @@ $form = new Form($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
- //if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
+ //if (!empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
$help_url = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:Módulo_Agenda|DE:Modul_Agenda';
llxHeader('', $title, $help_url);
@@ -150,7 +150,7 @@ if ($object->id > 0) {
// Thirdparty
$morehtmlref.=' '.$langs->trans('ThirdParty') . ' : ' . $object->thirdparty->getNomUrl(1);
// Project
- if (! empty($conf->project->enabled))
+ if (isModEnabled('project'))
{
$langs->load("projects");
$morehtmlref.=' '.$langs->trans('Project') . ' ';
@@ -171,7 +171,7 @@ if ($object->id > 0) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref.='';
diff --git a/htdocs/bom/bom_card.php b/htdocs/bom/bom_card.php
index a80792705ee..2dfceb96d0a 100644
--- a/htdocs/bom/bom_card.php
+++ b/htdocs/bom/bom_card.php
@@ -465,7 +465,7 @@ if (empty($reshook)) {
// Thirdparty
$morehtmlref.=' '.$langs->trans('ThirdParty') . ' : ' . $soc->getNomUrl(1);
// Project
- if (! empty($conf->project->enabled))
+ if (isModEnabled('project'))
{
$langs->load("projects");
$morehtmlref.=' '.$langs->trans('Project') . ' ';
@@ -485,7 +485,7 @@ if (empty($reshook)) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref.=$proj->getNomUrl();
@@ -629,6 +629,8 @@ if (empty($reshook)) {
print '';
print "\n";
+
+ mrpCollapseBomManagement();
}
$res = $object->fetchLines();
diff --git a/htdocs/bom/bom_list.php b/htdocs/bom/bom_list.php
index 48798db9b8f..eb78228f068 100644
--- a/htdocs/bom/bom_list.php
+++ b/htdocs/bom/bom_list.php
@@ -366,7 +366,7 @@ foreach($object->fields as $key => $val)
$sql .= "t.".$key.", ";
}
// Add fields from extrafields
-if (! empty($extrafields->attributes[$object->table_element]['label'])) {
+if (!empty($extrafields->attributes[$object->table_element]['label'])) {
foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) {
$sql .= ($extrafields->attributes[$object->table_element]['type'][$key] != 'separate' ? "ef.".$key.', ' : '');
}
diff --git a/htdocs/bom/bom_net_needs.php b/htdocs/bom/bom_net_needs.php
index baf4b096324..668ed29a62e 100644
--- a/htdocs/bom/bom_net_needs.php
+++ b/htdocs/bom/bom_net_needs.php
@@ -195,19 +195,19 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
*/
$text_stock_options = $langs->trans("RealStockDesc").' ';
$text_stock_options .= $langs->trans("RealStockWillAutomaticallyWhen").' ';
- $text_stock_options .= (! empty($conf->global->STOCK_CALCULATE_ON_SHIPMENT) || ! empty($conf->global->STOCK_CALCULATE_ON_SHIPMENT_CLOSE) ? '- '.$langs->trans("DeStockOnShipment").' ' : '');
- $text_stock_options .= (! empty($conf->global->STOCK_CALCULATE_ON_VALIDATE_ORDER) ? '- '.$langs->trans("DeStockOnValidateOrder").' ' : '');
- $text_stock_options .= (! empty($conf->global->STOCK_CALCULATE_ON_BILL) ? '- '.$langs->trans("DeStockOnBill").' ' : '');
- $text_stock_options .= (! empty($conf->global->STOCK_CALCULATE_ON_SUPPLIER_BILL) ? '- '.$langs->trans("ReStockOnBill").' ' : '');
- $text_stock_options .= (! empty($conf->global->STOCK_CALCULATE_ON_SUPPLIER_VALIDATE_ORDER) ? '- '.$langs->trans("ReStockOnValidateOrder").' ' : '');
- $text_stock_options .= (! empty($conf->global->STOCK_CALCULATE_ON_SUPPLIER_DISPATCH_ORDER) ? '- '.$langs->trans("ReStockOnDispatchOrder").' ' : '');
+ $text_stock_options .= (!empty($conf->global->STOCK_CALCULATE_ON_SHIPMENT) || !empty($conf->global->STOCK_CALCULATE_ON_SHIPMENT_CLOSE) ? '- '.$langs->trans("DeStockOnShipment").' ' : '');
+ $text_stock_options .= (!empty($conf->global->STOCK_CALCULATE_ON_VALIDATE_ORDER) ? '- '.$langs->trans("DeStockOnValidateOrder").' ' : '');
+ $text_stock_options .= (!empty($conf->global->STOCK_CALCULATE_ON_BILL) ? '- '.$langs->trans("DeStockOnBill").' ' : '');
+ $text_stock_options .= (!empty($conf->global->STOCK_CALCULATE_ON_SUPPLIER_BILL) ? '- '.$langs->trans("ReStockOnBill").' ' : '');
+ $text_stock_options .= (!empty($conf->global->STOCK_CALCULATE_ON_SUPPLIER_VALIDATE_ORDER) ? '- '.$langs->trans("ReStockOnValidateOrder").' ' : '');
+ $text_stock_options .= (!empty($conf->global->STOCK_CALCULATE_ON_SUPPLIER_DISPATCH_ORDER) ? '- '.$langs->trans("ReStockOnDispatchOrder").' ' : '');
$text_stock_options .= (!empty($conf->global->STOCK_CALCULATE_ON_RECEPTION) || !empty($conf->global->STOCK_CALCULATE_ON_RECEPTION_CLOSE) ? '- '.$langs->trans("StockOnReception").' ' : '');
print ' ';
print "\n";
print '';
print ''.$langs->trans('Product');
- if (! empty($conf->global->BOM_SUB_BOM) && $action == 'treeview') {
+ if (!empty($conf->global->BOM_SUB_BOM) && $action == 'treeview') {
print ' '.img_picto('', 'folder-open', 'class="paddingright"').$langs->trans("ExpandAll").' ';
print ''.img_picto('', 'folder', 'class="paddingright"').$langs->trans("UndoExpandAll").' ';
}
@@ -216,11 +216,11 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
print ' '.$form->textwithpicto($langs->trans("PhysicalStock"), $text_stock_options, 1).' ';
print ''.$form->textwithpicto($langs->trans("VirtualStock"), $langs->trans("VirtualStockDesc")).' ';
print ' ';
- if (! empty($TChildBom)) {
+ if (!empty($TChildBom)) {
if ($action == 'treeview') {
foreach ($TChildBom as $fk_bom => $TProduct) {
$repeatChar = ' ';
- if (! empty($TProduct['bom'])) {
+ if (!empty($TProduct['bom'])) {
if ($TProduct['parentid'] != $object->id) print '';
else print ' ';
print ''.str_repeat($repeatChar, $TProduct['level']).$TProduct['bom']->getNomUrl(1);
@@ -233,7 +233,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
print ' ';
print ' ';
}
- if (! empty($TProduct['product'])) {
+ if (!empty($TProduct['product'])) {
foreach ($TProduct['product'] as $fk_product => $TInfos) {
$prod = new Product($db);
$prod->fetch($fk_product);
diff --git a/htdocs/bom/class/bom.class.php b/htdocs/bom/class/bom.class.php
index d5f3351770e..64af253b1f2 100644
--- a/htdocs/bom/class/bom.class.php
+++ b/htdocs/bom/class/bom.class.php
@@ -241,7 +241,7 @@ class BOM extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -877,8 +877,8 @@ class BOM extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->bom->create))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->bom->bom_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->bom->create))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->bom->bom_advance->validate))))
{
$this->error='NotEnoughPermissions';
dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR);
@@ -989,8 +989,8 @@ class BOM extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->bom->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->bom->bom_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->bom->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->bom->bom_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -1013,8 +1013,8 @@ class BOM extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->bom->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->bom->bom_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->bom->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->bom->bom_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -1037,8 +1037,8 @@ class BOM extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->bom->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->bom->bom_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->bom->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->bom->bom_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -1420,9 +1420,9 @@ class BOM extends CommonObject
*/
public function getNetNeeds(&$TNetNeeds = array(), $qty = 0)
{
- if (! empty($this->lines)) {
+ if (!empty($this->lines)) {
foreach ($this->lines as $line) {
- if (! empty($line->childBom)) {
+ if (!empty($line->childBom)) {
foreach ($line->childBom as $childBom) $childBom->getNetNeeds($TNetNeeds, $line->qty*$qty);
} else {
if (empty($TNetNeeds[$line->fk_product])) {
@@ -1444,9 +1444,9 @@ class BOM extends CommonObject
*/
public function getNetNeedsTree(&$TNetNeeds = array(), $qty = 0, $level = 0)
{
- if (! empty($this->lines)) {
+ if (!empty($this->lines)) {
foreach ($this->lines as $line) {
- if (! empty($line->childBom)) {
+ if (!empty($line->childBom)) {
foreach ($line->childBom as $childBom) {
$TNetNeeds[$childBom->id]['bom'] = $childBom;
$TNetNeeds[$childBom->id]['parentid'] = $this->id;
@@ -1608,7 +1608,7 @@ class BOMLine extends CommonObjectLine
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -1655,7 +1655,7 @@ class BOMLine extends CommonObjectLine
public function fetch($id, $ref = null)
{
$result = $this->fetchCommon($id, $ref);
- //if ($result > 0 && ! empty($this->table_element_line)) $this->fetchLines();
+ //if ($result > 0 && !empty($this->table_element_line)) $this->fetchLines();
return $result;
}
diff --git a/htdocs/bom/tpl/objectline_create.tpl.php b/htdocs/bom/tpl/objectline_create.tpl.php
index 43982ed9a7d..41aeec4b96f 100644
--- a/htdocs/bom/tpl/objectline_create.tpl.php
+++ b/htdocs/bom/tpl/objectline_create.tpl.php
@@ -104,14 +104,13 @@ $coldisplay++;
print '';
// Predefined product/service
-if (!empty($conf->product->enabled) || !empty($conf->service->enabled)) {
+if (isModEnabled("product") || isModEnabled("service")) {
if ($filtertype == 1) {
print $langs->trans("Service");
} elseif (!empty($conf->global->BOM_SUB_BOM)) {
print $langs->trans("Product");
}
echo '';
-
$statustoshow = -1;
if (!empty($conf->global->ENTREPOT_EXTRA_STATUS)) {
// hide products in closed warehouse, but show products for internal transfer
@@ -145,6 +144,7 @@ if ($filtertype != 1) {
print ' ';
print ' ';
+
$coldisplay++;
print ' ';
print ' ';
@@ -197,6 +197,8 @@ jQuery(document).ready(function() {
/* When changing predefined product, we reload list of supplier prices required for margin combo */
$("#idprod").change(function()
{
+ console.log("#idprod change triggered");
+
/* To set focus */
if (jQuery('#idprod').val() > 0)
{
@@ -209,7 +211,6 @@ jQuery(document).ready(function() {
if (editor) { editor.focus(); }
}
}
-
});
//change unit selected if we change service selected
diff --git a/htdocs/bookmarks/bookmarks.lib.php b/htdocs/bookmarks/bookmarks.lib.php
index e5781d98561..1db3970f614 100644
--- a/htdocs/bookmarks/bookmarks.lib.php
+++ b/htdocs/bookmarks/bookmarks.lib.php
@@ -36,39 +36,45 @@ function printDropdownBookmarksList()
$langs->load("bookmarks");
+ $authorized_var=array('limit','optioncss','contextpage');
$url = $_SERVER["PHP_SELF"];
-
+ $url_param=array();
if (!empty($_SERVER["QUERY_STRING"])) {
- $url .= (dol_escape_htmltag($_SERVER["QUERY_STRING"]) ? '?'.dol_escape_htmltag($_SERVER["QUERY_STRING"]) : '');
- } else {
- global $sortfield, $sortorder;
- $tmpurl = '';
- // No urlencode, all param $url will be urlencoded later
- if ($sortfield) {
- $tmpurl .= ($tmpurl ? '&' : '').'sortfield='.urlencode($sortfield);
- }
- if ($sortorder) {
- $tmpurl .= ($tmpurl ? '&' : '').'sortorder='.urlencode($sortorder);
- }
- if (is_array($_POST)) {
- foreach ($_POST as $key => $val) {
- if (preg_match('/^search_/', $key) && $val != '') {
- $tmpurl .= ($tmpurl ? '&' : '').http_build_query(array($key => $val));
+ if (is_array($_GET)) {
+ foreach ($_GET as $key => $val) {
+ if ($val != '') {
+ $url_param[$key]=http_build_query(array(dol_escape_htmltag($key) => dol_escape_htmltag($val)));
}
}
}
- $url .= ($tmpurl ? '?'.$tmpurl : '');
+ }
+ global $sortfield, $sortorder;
+ $tmpurl = '';
+ // No urlencode, all param $url will be urlencoded later
+ if ($sortfield) {
+ $tmpurl .= ($tmpurl ? '&' : '').'sortfield='.urlencode($sortfield);
+ }
+ if ($sortorder) {
+ $tmpurl .= ($tmpurl ? '&' : '').'sortorder='.urlencode($sortorder);
+ }
+ if (is_array($_POST)) {
+ foreach ($_POST as $key => $val) {
+ if ((preg_match('/^search_/', $key) || in_array($key, $authorized_var))
+ && $val != ''
+ && !array_key_exists($key, $url_param)) {
+ $url_param[$key]=http_build_query(array(dol_escape_htmltag($key) => dol_escape_htmltag($val)));
+ }
+ }
+ }
+ $url .= ($tmpurl ? '?'.$tmpurl : '');
+ if (!empty($url_param)) {
+ $url .= '&'.implode('&', $url_param);
}
$searchForm = ''."\n";
$searchForm .= '';
@@ -260,6 +262,7 @@ if ($action == 'edit') {
// Label
$libelle = (GETPOST('libelle-'.$key, 'alpha') ? GETPOST('libelle-'.$key, 'alpha') : $object->multilangs[$key]['label']);
print ''.$langs->trans('Label').' ';
+
// Desc
$desc = (GETPOST('desc-'.$key) ? GETPOST('desc-'.$key) : $object->multilangs[$key]['description']);
print ''.$langs->trans('Description').' ';
diff --git a/htdocs/categories/viewcat.php b/htdocs/categories/viewcat.php
index 5405b33d994..0e5da0735ce 100644
--- a/htdocs/categories/viewcat.php
+++ b/htdocs/categories/viewcat.php
@@ -487,753 +487,800 @@ $typeid = $type;
// List of products or services (type is type of category)
if ($type == Categorie::TYPE_PRODUCT) {
- $permission = ($user->rights->produit->creer || $user->rights->service->creer);
+ if ($user->hasRight("product", "read")) {
+ $permission = ($user->rights->produit->creer || $user->rights->service->creer);
+
+ $prods = $object->getObjectsInCateg($type, 0, $limit, $offset);
+ if ($prods < 0) {
+ dol_print_error($db, $object->error, $object->errors);
+ } else {
+ // Form to add record into a category
+ $showclassifyform = 1;
+ if ($showclassifyform) {
+ print ' ';
+ print '';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print '';
+ print ' ';
+ }
- $prods = $object->getObjectsInCateg($type, 0, $limit, $offset);
- if ($prods < 0) {
- dol_print_error($db, $object->error, $object->errors);
- } else {
- // Form to add record into a category
- $showclassifyform = 1;
- if ($showclassifyform) {
- print ' ';
print '';
print ' ';
print ' ';
print ' ';
print ' ';
- print ' ';
- print '';
- print ' ';
- }
+ print ' ';
- print '';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
-
- print ' ';
- $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($prods); $nbtotalofrecords = '';
- $newcardbutton = dolGetButtonTitle($langs->trans("AddProduct"), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/product/card.php?action=create&categories[]='.$object->id.'&backtopage='.urlencode($_SERVER["PHP_SELF"].'?id='.$object->id), '', $user->rights->societe->creer);
- print_barre_liste($langs->trans("ProductsAndServices"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'products', 0, $newcardbutton, '', $limit);
+ print ' ';
+ $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($prods); $nbtotalofrecords = '';
+ $newcardbutton = dolGetButtonTitle($langs->trans("AddProduct"), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/product/card.php?action=create&categories[]='.$object->id.'&backtopage='.urlencode($_SERVER["PHP_SELF"].'?id='.$object->id), '', $user->rights->societe->creer);
+ print_barre_liste($langs->trans("ProductsAndServices"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'products', 0, $newcardbutton, '', $limit);
- print ''."\n";
- print ''.$langs->trans("Ref").' '."\n";
+ print ''."\n";
+ print ''.$langs->trans("Ref").' '."\n";
- if (count($prods) > 0) {
- $i = 0;
- foreach ($prods as $prod) {
- $i++;
- if ($i > $limit) {
- break;
+ if (count($prods) > 0) {
+ $i = 0;
+ foreach ($prods as $prod) {
+ $i++;
+ if ($i > $limit) {
+ break;
+ }
+
+ print "\t".''."\n";
+ print '';
+ print $prod->getNomUrl(1);
+ print " \n";
+ print ''.$prod->label." \n";
+ // Link to delete from category
+ print '';
+ if ($permission) {
+ print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$prod->id."'>";
+ print $langs->trans("DeleteFromCat");
+ print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
+ print " ";
+ }
+ print ' ';
+ print " \n";
}
-
- print "\t".''."\n";
- print '';
- print $prod->getNomUrl(1);
- print " \n";
- print ''.$prod->label." \n";
- // Link to delete from category
- print '';
- if ($permission) {
- print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$prod->id."'>";
- print $langs->trans("DeleteFromCat");
- print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
- print " ";
- }
- print ' ';
- print " \n";
+ } else {
+ print ''.$langs->trans("ThisCategoryHasNoItems").' ';
}
- } else {
- print ''.$langs->trans("ThisCategoryHasNoItems").' ';
- }
- print "
\n";
+ print "
\n";
- print ' '."\n";
+ print ''."\n";
+ }
+ } else {
+ print_barre_liste($langs->trans("ProductsAndServices"), null, $_SERVER["PHP_SELF"], '', '', '', '', '', '', 'products');
+ accessforbidden($langs->trans("NotEnoughPermissions"), 0, 0);
}
}
// List of customers
if ($type == Categorie::TYPE_CUSTOMER) {
- $permission = $user->rights->societe->creer;
+ if ($user->hasRight("societe", "read")) {
+ $permission = $user->rights->societe->creer;
+
+ $socs = $object->getObjectsInCateg($type, 0, $limit, $offset);
+ if ($socs < 0) {
+ dol_print_error($db, $object->error, $object->errors);
+ } else {
+ // Form to add record into a category
+ $showclassifyform = 1;
+ if ($showclassifyform) {
+ print ' ';
+ print '';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print '';
+ print ' ';
+ }
- $socs = $object->getObjectsInCateg($type, 0, $limit, $offset);
- if ($socs < 0) {
- dol_print_error($db, $object->error, $object->errors);
- } else {
- // Form to add record into a category
- $showclassifyform = 1;
- if ($showclassifyform) {
- print ' ';
print '';
print ' ';
print ' ';
print ' ';
print ' ';
- print ' ';
- print '';
- print ' ';
- }
+ print ' ';
- print '';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
+ print ' ';
+ $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($socs); $nbtotalofrecords = '';
+ $newcardbutton = dolGetButtonTitle($langs->trans("AddThirdParty"), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/societe/card.php?action=create&client=3&custcats[]='.$object->id.'&backtopage='.urlencode($_SERVER["PHP_SELF"].'?id='.$object->id), '', $user->rights->societe->creer);
+ print_barre_liste($langs->trans("Customers"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'companies', 0, $newcardbutton, '', $limit);
- print ' ';
- $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($socs); $nbtotalofrecords = '';
- $newcardbutton = dolGetButtonTitle($langs->trans("AddThirdParty"), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/societe/card.php?action=create&client=3&custcats[]='.$object->id.'&backtopage='.urlencode($_SERVER["PHP_SELF"].'?id='.$object->id), '', $user->rights->societe->creer);
- print_barre_liste($langs->trans("Customers"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'companies', 0, $newcardbutton, '', $limit);
+ print ''."\n";
+ print ''.$langs->trans("Name").' '."\n";
- print ''."\n";
- print ''.$langs->trans("Name").' '."\n";
+ if (count($socs) > 0) {
+ $i = 0;
+ foreach ($socs as $key => $soc) {
+ $i++;
+ if ($i > $limit) {
+ break;
+ }
- if (count($socs) > 0) {
- $i = 0;
- foreach ($socs as $key => $soc) {
- $i++;
- if ($i > $limit) {
- break;
+ print "\t".''."\n";
+ print '';
+ print $soc->getNomUrl(1);
+ print " \n";
+ // Link to delete from category
+ print '';
+ if ($permission) {
+ print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$soc->id."'>";
+ print $langs->trans("DeleteFromCat");
+ print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
+ print " ";
+ }
+ print ' ';
+ print " \n";
}
-
- print "\t".''."\n";
- print '';
- print $soc->getNomUrl(1);
- print " \n";
- // Link to delete from category
- print '';
- if ($permission) {
- print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$soc->id."'>";
- print $langs->trans("DeleteFromCat");
- print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
- print " ";
- }
- print ' ';
- print " \n";
+ } else {
+ print ''.$langs->trans("ThisCategoryHasNoItems").' ';
}
- } else {
- print ''.$langs->trans("ThisCategoryHasNoItems").' ';
- }
- print "
\n";
+ print "
\n";
- print ' '."\n";
+ print ''."\n";
+ }
+ } else {
+ print_barre_liste($langs->trans("Customers"), null, $_SERVER["PHP_SELF"], '', '', '', '', '', '', 'companies');
+ accessforbidden($langs->trans("NotEnoughPermissions"), 0, 0);
}
}
// List of suppliers
if ($type == Categorie::TYPE_SUPPLIER) {
- $permission = $user->rights->societe->creer;
+ if ($user->hasRight("fournisseur", "read")) {
+ $permission = $user->rights->societe->creer;
+
+ $socs = $object->getObjectsInCateg($type, 0, $limit, $offset);
+ if ($socs < 0) {
+ dol_print_error($db, $object->error, $object->errors);
+ } else {
+ // Form to add record into a category
+ $showclassifyform = 1;
+ if ($showclassifyform) {
+ print ' ';
+ print '';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print '';
+ print ' ';
+ }
- $socs = $object->getObjectsInCateg($type, 0, $limit, $offset);
- if ($socs < 0) {
- dol_print_error($db, $object->error, $object->errors);
- } else {
- // Form to add record into a category
- $showclassifyform = 1;
- if ($showclassifyform) {
- print ' ';
print '';
print ' ';
print ' ';
print ' ';
print ' ';
- print ' ';
- print '';
- print ' ';
- }
+ print ' ';
- print '';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
+ print ' ';
+ $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($socs); $nbtotalofrecords = '';
+ $newcardbutton = dolGetButtonTitle($langs->trans("AddSupplier"), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/societe/card.php?action=create&fournisseur=1&suppcats[]='.$object->id.'&backtopage='.urlencode($_SERVER["PHP_SELF"].'?id='.$object->id), '', $user->rights->societe->creer);
+ print_barre_liste($langs->trans("Suppliers"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'companies', 0, $newcardbutton, '', $limit);
- print ' ';
- $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($socs); $nbtotalofrecords = '';
- $newcardbutton = dolGetButtonTitle($langs->trans("AddSupplier"), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/societe/card.php?action=create&fournisseur=1&suppcats[]='.$object->id.'&backtopage='.urlencode($_SERVER["PHP_SELF"].'?id='.$object->id), '', $user->rights->societe->creer);
- print_barre_liste($langs->trans("Suppliers"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'companies', 0, $newcardbutton, '', $limit);
+ print ''."\n";
+ print ''.$langs->trans("Name")." \n";
- print ''."\n";
- print ''.$langs->trans("Name")." \n";
+ if (count($socs) > 0) {
+ $i = 0;
+ foreach ($socs as $soc) {
+ $i++;
+ if ($i > $limit) {
+ break;
+ }
- if (count($socs) > 0) {
- $i = 0;
- foreach ($socs as $soc) {
- $i++;
- if ($i > $limit) {
- break;
+ print "\t".''."\n";
+ print '';
+ print $soc->getNomUrl(1);
+ print " \n";
+ // Link to delete from category
+ print '';
+ if ($permission) {
+ print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$soc->id."'>";
+ print $langs->trans("DeleteFromCat");
+ print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
+ print " ";
+ }
+ print ' ';
+
+ print " \n";
}
-
- print "\t".''."\n";
- print '';
- print $soc->getNomUrl(1);
- print " \n";
- // Link to delete from category
- print '';
- if ($permission) {
- print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$soc->id."'>";
- print $langs->trans("DeleteFromCat");
- print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
- print " ";
- }
- print ' ';
-
- print " \n";
+ } else {
+ print ''.$langs->trans("ThisCategoryHasNoItems").' ';
}
- } else {
- print ''.$langs->trans("ThisCategoryHasNoItems").' ';
- }
- print "
\n";
+ print "
\n";
- print ' '."\n";
+ print ''."\n";
+ }
+ } else {
+ print_barre_liste($langs->trans("Suppliers"), null, $_SERVER["PHP_SELF"], '', '', '', '', '', '', 'companies');
+ accessforbidden($langs->trans("NotEnoughPermissions"), 0, 0);
}
}
// List of members
if ($type == Categorie::TYPE_MEMBER) {
- require_once DOL_DOCUMENT_ROOT.'/adherents/class/adherent.class.php';
+ if ($user->hasRight("adherent", "read")) {
+ require_once DOL_DOCUMENT_ROOT.'/adherents/class/adherent.class.php';
- $permission = $user->rights->adherent->creer;
+ $permission = $user->rights->adherent->creer;
+
+ $prods = $object->getObjectsInCateg($type, 0, $limit, $offset);
+ if ($prods < 0) {
+ dol_print_error($db, $object->error, $object->errors);
+ } else {
+ // Form to add record into a category
+ $showclassifyform = 1;
+ if ($showclassifyform) {
+ print ' ';
+ print '';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print '';
+ print ' ';
+ }
- $prods = $object->getObjectsInCateg($type, 0, $limit, $offset);
- if ($prods < 0) {
- dol_print_error($db, $object->error, $object->errors);
- } else {
- // Form to add record into a category
- $showclassifyform = 1;
- if ($showclassifyform) {
- print ' ';
print '';
print ' ';
print ' ';
print ' ';
print ' ';
- print ' ';
- print '';
- print ' ';
- }
+ print ' ';
- print '';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
+ print ' ';
+ $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($prods); $nbtotalofrecords = '';
+ $newcardbutton = dolGetButtonTitle($langs->trans("AddMember"), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/adherents/card.php?action=create&memcats[]='.$object->id.'&backtopage='.urlencode($_SERVER["PHP_SELF"].'?id='.$object->id), '', $user->rights->adherent->creer);
+ print_barre_liste($langs->trans("Member"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'members', 0, $newcardbutton, '', $limit);
- print ' ';
- $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($prods); $nbtotalofrecords = '';
- $newcardbutton = dolGetButtonTitle($langs->trans("AddMember"), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/adherents/card.php?action=create&memcats[]='.$object->id.'&backtopage='.urlencode($_SERVER["PHP_SELF"].'?id='.$object->id), '', $user->rights->adherent->creer);
- print_barre_liste($langs->trans("Member"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'members', 0, $newcardbutton, '', $limit);
+ print "\n";
+ print ''.$langs->trans("Name").' '."\n";
- print "\n";
- print ''.$langs->trans("Name").' '."\n";
+ if (count($prods) > 0) {
+ $i = 0;
+ foreach ($prods as $key => $member) {
+ $i++;
+ if ($i > $limit) {
+ break;
+ }
- if (count($prods) > 0) {
- $i = 0;
- foreach ($prods as $key => $member) {
- $i++;
- if ($i > $limit) {
- break;
+ print "\t".''."\n";
+ print '';
+ $member->ref = $member->login;
+ print $member->getNomUrl(1, 0);
+ print " \n";
+ print ''.$member->lastname." \n";
+ print ''.$member->firstname." \n";
+ // Link to delete from category
+ print '';
+ if ($permission) {
+ print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$member->id."'>";
+ print $langs->trans("DeleteFromCat");
+ print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
+ print " ";
+ }
+ print " \n";
}
-
- print "\t".''."\n";
- print '';
- $member->ref = $member->login;
- print $member->getNomUrl(1, 0);
- print " \n";
- print ''.$member->lastname." \n";
- print ''.$member->firstname." \n";
- // Link to delete from category
- print '';
- if ($permission) {
- print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$member->id."'>";
- print $langs->trans("DeleteFromCat");
- print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
- print " ";
- }
- print " \n";
+ } else {
+ print ''.$langs->trans("ThisCategoryHasNoItems").' ';
}
- } else {
- print ''.$langs->trans("ThisCategoryHasNoItems").' ';
- }
- print "
\n";
+ print "
\n";
- print ' '."\n";
+ print ''."\n";
+ }
+ } else {
+ print_barre_liste($langs->trans("Member"), null, $_SERVER["PHP_SELF"], '', '', '', '', '', '', 'members');
+ accessforbidden($langs->trans("NotEnoughPermissions"), 0, 0);
}
}
// List of contacts
if ($type == Categorie::TYPE_CONTACT) {
- $permission = $user->rights->societe->creer;
+ if ($user->hasRight("societe", "read")) {
+ $permission = $user->rights->societe->creer;
- $contacts = $object->getObjectsInCateg($type, 0, $limit, $offset);
- if (is_numeric($contacts) && $contacts < 0) {
- dol_print_error($db, $object->error, $object->errors);
- } else {
- // Form to add record into a category
- $showclassifyform = 1;
- if ($showclassifyform) {
- print ' ';
+ $contacts = $object->getObjectsInCateg($type, 0, $limit, $offset);
+ if (is_numeric($contacts) && $contacts < 0) {
+ dol_print_error($db, $object->error, $object->errors);
+ } else {
+ // Form to add record into a category
+ $showclassifyform = 1;
+ if ($showclassifyform) {
+ print ' ';
+ print '';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print '';
+ print ' ';
+ }
print '';
print ' ';
print ' ';
print ' ';
print ' ';
- print ' ';
- print '';
- print ' ';
- }
- print '';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
+ print ' ';
- print ' ';
- $param = '&limit='.$limit.'&id='.$id.'&type='.$type;
- $num = count($contacts);
- $nbtotalofrecords = '';
- $newcardbutton = dolGetButtonTitle($langs->trans("AddContact"), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/contact/card.php?action=create&contcats[]='.$object->id.'&backtopage='.urlencode($_SERVER["PHP_SELF"].'?id='.$object->id), '', $user->rights->societe->creer);
- $objsoc = new Societe($db);
- print_barre_liste($langs->trans("Contact"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'contact', 0, $newcardbutton, '', $limit);
+ print ' ';
+ $param = '&limit='.$limit.'&id='.$id.'&type='.$type;
+ $num = count($contacts);
+ $nbtotalofrecords = '';
+ $newcardbutton = dolGetButtonTitle($langs->trans("AddContact"), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/contact/card.php?action=create&contcats[]='.$object->id.'&backtopage='.urlencode($_SERVER["PHP_SELF"].'?id='.$object->id), '', $user->rights->societe->creer);
+ $objsoc = new Societe($db);
+ print_barre_liste($langs->trans("Contact"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'contact', 0, $newcardbutton, '', $limit);
- print ''."\n";
- print ''.$langs->trans("Ref").' '."\n";
+ print ''."\n";
+ print ''.$langs->trans("Ref").' '."\n";
- if (is_array($contacts) && count($contacts) > 0) {
- $i = 0;
- foreach ($contacts as $key => $contact) {
- $i++;
- if ($i > $limit) {
- break;
+ if (is_array($contacts) && count($contacts) > 0) {
+ $i = 0;
+ foreach ($contacts as $key => $contact) {
+ $i++;
+ if ($i > $limit) {
+ break;
+ }
+
+ print "\t".''."\n";
+ print '';
+ print $contact->getNomUrl(1, 'category');
+ if ($contact->socid > 0) {
+ $objsoc->fetch($contact->socid);
+ print ' - ';
+ print $objsoc->getNomUrl(1, 'contact');
+ }
+ print " \n";
+ // Link to delete from category
+ print '';
+ if ($permission) {
+ print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$contact->id."'>";
+ print $langs->trans("DeleteFromCat");
+ print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
+ print " ";
+ }
+ print ' ';
+ print " \n";
}
-
- print "\t".''."\n";
- print '';
- print $contact->getNomUrl(1, 'category');
- if ($contact->socid > 0) {
- $objsoc->fetch($contact->socid);
- print ' - ';
- print $objsoc->getNomUrl(1, 'contact');
- }
- print " \n";
- // Link to delete from category
- print '';
- if ($permission) {
- print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$contact->id."'>";
- print $langs->trans("DeleteFromCat");
- print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
- print " ";
- }
- print ' ';
- print " \n";
+ } else {
+ print ''.$langs->trans("ThisCategoryHasNoItems").' ';
}
- } else {
- print ''.$langs->trans("ThisCategoryHasNoItems").' ';
- }
- print "
\n";
+ print "
\n";
- print ' '."\n";
+ print ''."\n";
+ }
+ } else {
+ print_barre_liste($langs->trans("Contact"), null, $_SERVER["PHP_SELF"], '', '', '', '', '', '', 'contact');
+ accessforbidden($langs->trans("NotEnoughPermissions"), 0, 0);
}
}
// List of bank accounts
if ($type == Categorie::TYPE_ACCOUNT) {
- require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
+ if ($user->hasRight("banque", "read")) {
+ require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
- $permission = $user->rights->banque->creer;
+ $permission = $user->rights->banque->creer;
+
+ $accounts = $object->getObjectsInCateg($type, 0, $limit, $offset);
+ if ($accounts < 0) {
+ dol_print_error($db, $object->error, $object->errors);
+ } else {
+ // Form to add record into a category
+ $showclassifyform = 1;
+ if ($showclassifyform) {
+ print ' ';
+ print '';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print '';
+ print ' ';
+ }
- $accounts = $object->getObjectsInCateg($type, 0, $limit, $offset);
- if ($accounts < 0) {
- dol_print_error($db, $object->error, $object->errors);
- } else {
- // Form to add record into a category
- $showclassifyform = 1;
- if ($showclassifyform) {
- print ' ';
print '';
print ' ';
print ' ';
print ' ';
print ' ';
- print ' ';
- print '';
- print ' ';
- }
+ print ' ';
- print '';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
+ print ' ';
+ $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($accounts); $nbtotalofrecords = ''; $newcardbutton = '';
+ print_barre_liste($langs->trans("Account"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'bank_account', 0, $newcardbutton, '', $limit);
- print ' ';
- $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($accounts); $nbtotalofrecords = ''; $newcardbutton = '';
- print_barre_liste($langs->trans("Account"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'bank_account', 0, $newcardbutton, '', $limit);
+ print "\n";
+ print ''.$langs->trans("Ref").' '."\n";
- print "\n";
- print ''.$langs->trans("Ref").' '."\n";
+ if (count($accounts) > 0) {
+ $i = 0;
+ foreach ($accounts as $key => $account) {
+ $i++;
+ if ($i > $limit) {
+ break;
+ }
- if (count($accounts) > 0) {
- $i = 0;
- foreach ($accounts as $key => $account) {
- $i++;
- if ($i > $limit) {
- break;
+ print "\t".''."\n";
+ print '';
+ print $account->getNomUrl(1, 0);
+ print " \n";
+ print ''.$account->bank." \n";
+ print ''.$account->number." \n";
+ // Link to delete from category
+ print '';
+ if ($permission) {
+ print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$account->id."'>";
+ print $langs->trans("DeleteFromCat");
+ print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
+ print " ";
+ }
+ print " \n";
}
-
- print "\t".''."\n";
- print '';
- print $account->getNomUrl(1, 0);
- print " \n";
- print ''.$account->bank." \n";
- print ''.$account->number." \n";
- // Link to delete from category
- print '';
- if ($permission) {
- print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$account->id."'>";
- print $langs->trans("DeleteFromCat");
- print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
- print " ";
- }
- print " \n";
+ } else {
+ print ''.$langs->trans("ThisCategoryHasNoItems").' ';
}
- } else {
- print ''.$langs->trans("ThisCategoryHasNoItems").' ';
- }
- print "
\n";
+ print "
\n";
- print ' '."\n";
+ print ''."\n";
+ }
+ } else {
+ print_barre_liste($langs->trans("Banque"), null, $_SERVER["PHP_SELF"], '', '', '', '', '', '', 'bank');
+ accessforbidden($langs->trans("NotEnoughPermissions"), 0, 0);
}
}
// List of Project
if ($type == Categorie::TYPE_PROJECT) {
- require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
+ if ($user->hasRight("project", "read")) {
+ require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
- $permission = $user->rights->projet->creer;
+ $permission = $user->rights->projet->creer;
+
+ $objects = $object->getObjectsInCateg($type, 0, $limit, $offset);
+ if ($objects < 0) {
+ dol_print_error($db, $object->error, $object->errors);
+ } else {
+ // Form to add record into a category
+ $showclassifyform = 1;
+ if ($showclassifyform) {
+ print ' ';
+ print '';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print '';
+ print ' ';
+ }
- $objects = $object->getObjectsInCateg($type, 0, $limit, $offset);
- if ($objects < 0) {
- dol_print_error($db, $object->error, $object->errors);
- } else {
- // Form to add record into a category
- $showclassifyform = 1;
- if ($showclassifyform) {
- print ' ';
print '';
print ' ';
print ' ';
print ' ';
print ' ';
- print ' ';
- print '';
- print ' ';
- }
+ print ' ';
- print '';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
+ print ' ';
+ $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($objects); $nbtotalofrecords = ''; $newcardbutton = '';
- print ' ';
- $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($objects); $nbtotalofrecords = ''; $newcardbutton = '';
+ print_barre_liste($langs->trans("Project"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'project', 0, $newcardbutton, '', $limit);
- print_barre_liste($langs->trans("Project"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'project', 0, $newcardbutton, '', $limit);
+ print "\n";
+ print ''.$langs->trans("Ref").' '."\n";
- print "\n";
- print ''.$langs->trans("Ref").' '."\n";
+ if (count($objects) > 0) {
+ $i = 0;
+ foreach ($objects as $key => $project) {
+ $i++;
+ if ($i > $limit) {
+ break;
+ }
- if (count($objects) > 0) {
- $i = 0;
- foreach ($objects as $key => $project) {
- $i++;
- if ($i > $limit) {
- break;
+ print "\t".''."\n";
+ print '';
+ print $project->getNomUrl(1);
+ print " \n";
+ print ''.$project->ref." \n";
+ print ''.$project->title." \n";
+ // Link to delete from category
+ print '';
+ if ($permission) {
+ print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$project->id."'>";
+ print $langs->trans("DeleteFromCat");
+ print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
+ print " ";
+ }
+ print " \n";
}
-
- print "\t".''."\n";
- print '';
- print $project->getNomUrl(1);
- print " \n";
- print ''.$project->ref." \n";
- print ''.$project->title." \n";
- // Link to delete from category
- print '';
- if ($permission) {
- print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$project->id."'>";
- print $langs->trans("DeleteFromCat");
- print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
- print " ";
- }
- print " \n";
+ } else {
+ print ''.$langs->trans("ThisCategoryHasNoItems").' ';
}
- } else {
- print ''.$langs->trans("ThisCategoryHasNoItems").' ';
- }
- print "
\n";
+ print "
\n";
- print ' '."\n";
+ print ''."\n";
+ }
+ } else {
+ print_barre_liste($langs->trans("Project"), null, $_SERVER["PHP_SELF"], '', '', '', '', '', '', 'project');
+ accessforbidden($langs->trans("NotEnoughPermissions"), 0, 0);
}
}
// List of users
-if ($type == Categorie::TYPE_USER && $user->hasRight("user", "user", "read")) {
- require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php';
+if ($type == Categorie::TYPE_USER) {
+ if ($user->hasRight("user", "user", "read")) {
+ require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php';
- $users = $object->getObjectsInCateg($type);
- if ($users < 0) {
- dol_print_error($db, $object->error, $object->errors);
- } else {
- // Form to add record into a category
- $showclassifyform = 1;
- if ($showclassifyform) {
- print ' ';
+ $users = $object->getObjectsInCateg($type);
+ if ($users < 0) {
+ dol_print_error($db, $object->error, $object->errors);
+ } else {
+ // Form to add record into a category
+ $showclassifyform = 1;
+ if ($showclassifyform) {
+ print ' ';
+ print '';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print '';
+ print ' ';
+ }
print '';
print ' ';
print ' ';
print ' ';
print ' ';
- print ' ';
- print '';
- print ' ';
- }
- print '';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
+ print ' ';
- print ' ';
+ print ' ';
- $param = '&limit='.$limit.'&id='.$id.'&type='.$type;
- $num = count($users);
+ $param = '&limit='.$limit.'&id='.$id.'&type='.$type;
+ $num = count($users);
- print_barre_liste($langs->trans("Users"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, '', 'user', 0, '', '', $limit);
+ print_barre_liste($langs->trans("Users"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, '', 'user', 0, '', '', $limit);
- print "\n";
- print ''.$langs->trans("Users").' '.$num.' '."\n";
+ print "\n";
+ print ''.$langs->trans("Users").' '.$num.' '."\n";
- if (count($users) > 0) {
- // Use "$userentry" here, because "$user" is the current user
- foreach ($users as $key => $userentry) {
- print "\t".''."\n";
- print '';
- print $userentry->getNomUrl(1);
- print " \n";
- print ''.$userentry->job." \n";
+ if (count($users) > 0) {
+ // Use "$userentry" here, because "$user" is the current user
+ foreach ($users as $key => $userentry) {
+ print "\t".' '."\n";
+ print '';
+ print $userentry->getNomUrl(1);
+ print " \n";
+ print ''.$userentry->job." \n";
- // Link to delete from category
- print '';
- if ($user->rights->user->user->creer) {
- print "id."&type=".$type."&action=unlink&token=".newToken()."&removeelem=".$userentry->id."'>";
- print $langs->trans("DeleteFromCat");
- print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
- print " ";
+ // Link to delete from category
+ print ' ';
+ if ($user->rights->user->user->creer) {
+ print "id."&type=".$type."&action=unlink&token=".newToken()."&removeelem=".$userentry->id."'>";
+ print $langs->trans("DeleteFromCat");
+ print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
+ print " ";
+ }
+ print " \n";
}
- print "\n";
+ } else {
+ print ''.$langs->trans("ThisCategoryHasNoItems").' ';
}
- } else {
- print ''.$langs->trans("ThisCategoryHasNoItems").' ';
- }
- print "
\n";
+ print "
\n";
- print ' '."\n";
+ print ''."\n";
+ }
+ } else {
+ print_barre_liste($langs->trans("Users"), null, $_SERVER["PHP_SELF"], '', '', '', '', '', '', 'user');
+ accessforbidden($langs->trans("NotEnoughPermissions"), 0, 0);
}
-} else {
- print_barre_liste($langs->trans("Users"), null, $_SERVER["PHP_SELF"], '', '', '', '', '', '', 'user');
- accessforbidden($langs->trans("NotEnoughPermissions"), 0, 0);
}
// List of warehouses
if ($type == Categorie::TYPE_WAREHOUSE) {
- $permission = $user->rights->stock->creer;
+ if ($user->hasRight("warehouse", "read")) {
+ $permission = $user->rights->stock->creer;
- require_once DOL_DOCUMENT_ROOT.'/product/stock/class/entrepot.class.php';
+ require_once DOL_DOCUMENT_ROOT.'/product/stock/class/entrepot.class.php';
- $objects = $object->getObjectsInCateg($type, 0, $limit, $offset);
- if ($objects < 0) {
- dol_print_error($db, $object->error, $object->errors);
- } else {
- print '';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
-
- print ' ';
- $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($objects); $nbtotalofrecords = ''; $newcardbutton = '';
-
- print_barre_liste($langs->trans("Warehouses"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'stock', 0, $newcardbutton, '', $limit);
-
- print "\n";
- print ''.$langs->trans("Ref").' '."\n";
-
- if (count($objects) > 0) {
- $i = 0;
- foreach ($objects as $key => $project) {
- $i++;
- if ($i > $limit) {
- break;
- }
-
- print "\t".''."\n";
- print '';
- print $project->getNomUrl(1);
- print " \n";
- print ''.$project->ref." \n";
- print ''.$project->title." \n";
- // Link to delete from category
- print '';
- if ($permission) {
- print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$project->id."'>";
- print $langs->trans("DeleteFromCat");
- print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
- print " ";
- }
- print " \n";
- }
+ $objects = $object->getObjectsInCateg($type, 0, $limit, $offset);
+ if ($objects < 0) {
+ dol_print_error($db, $object->error, $object->errors);
} else {
- print ''.$langs->trans("ThisCategoryHasNoItems").' ';
- }
- print "
\n";
-
- print ' '."\n";
- }
-}
-
-// List of tickets
-if ($type == Categorie::TYPE_TICKET) {
- $permission = ($user->rights->categorie->creer || $user->rights->categorie->creer);
-
- $tickets = $object->getObjectsInCateg($type, 0, $limit, $offset);
- if ($tickets < 0) {
- dol_print_error($db, $object->error, $object->errors);
- } else {
- // Form to add record into a category
- $showclassifyform = 1;
- if ($showclassifyform) {
- print ' ';
print '';
print ' ';
print ' ';
print ' ';
print ' ';
- print ' ';
- print '';
- print ' ';
- }
+ print ' ';
- print '';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
- print ' ';
+ print ' ';
+ $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($objects); $nbtotalofrecords = ''; $newcardbutton = '';
- print ' ';
- $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($tickets); $nbtotalofrecords = ''; $newcardbutton = '';
- print_barre_liste($langs->trans("Ticket"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'ticket', 0, $newcardbutton, '', $limit);
+ print_barre_liste($langs->trans("Warehouses"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'stock', 0, $newcardbutton, '', $limit);
+ print "\n";
+ print ''.$langs->trans("Ref").' '."\n";
- print ''."\n";
- print ''.$langs->trans("Ref").' '."\n";
+ if (count($objects) > 0) {
+ $i = 0;
+ foreach ($objects as $key => $project) {
+ $i++;
+ if ($i > $limit) {
+ break;
+ }
- if (count($tickets) > 0) {
- $i = 0;
- foreach ($tickets as $ticket) {
- $i++;
- if ($i > $limit) break;
-
- print "\t".''."\n";
- print '';
- print $ticket->getNomUrl(1);
- print " \n";
- print ''.$ticket->label." \n";
- // Link to delete from category
- print '';
- if ($permission) {
- print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$ticket->id."'>";
- print $langs->trans("DeleteFromCat");
- print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
- print " ";
+ print "\t".' '."\n";
+ print '';
+ print $project->getNomUrl(1);
+ print " \n";
+ print ''.$project->ref." \n";
+ print ''.$project->title." \n";
+ // Link to delete from category
+ print '';
+ if ($permission) {
+ print "id."&type=".$typeid."&action=unlink&token=".newToken()."&removeelem=".$project->id."'>";
+ print $langs->trans("DeleteFromCat");
+ print img_picto($langs->trans("DeleteFromCat"), 'unlink', '', false, 0, 0, '', 'paddingleft');
+ print " ";
+ }
+ print " \n";
}
- print '';
- print "\n";
+ } else {
+ print ''.$langs->trans("ThisCategoryHasNoItems").' ';
}
- } else {
- print ''.$langs->trans("ThisCategoryHasNoItems").' ';
- }
- print "
\n";
+ print "
\n";
- print ' '."\n";
+ print ''."\n";
+ }
+ } else {
+ print_barre_liste($langs->trans("Warehouse"), null, $_SERVER["PHP_SELF"], '', '', '', '', '', '', 'stock');
+ accessforbidden($langs->trans("NotEnoughPermissions"), 0, 0);
+ }
+}
+
+// List of tickets
+if ($type == Categorie::TYPE_TICKET) {
+ if ($user->hasRight("ticket", "read")) {
+ $permission = ($user->rights->categorie->creer || $user->rights->categorie->creer);
+
+ $tickets = $object->getObjectsInCateg($type, 0, $limit, $offset);
+ if ($tickets < 0) {
+ dol_print_error($db, $object->error, $object->errors);
+ } else {
+ // Form to add record into a category
+ $showclassifyform = 1;
+ if ($showclassifyform) {
+ print ' ';
+ print '';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print '';
+ print ' ';
+ }
+
+ print '';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+ print ' ';
+
+ print ' ';
+ $param = '&limit='.$limit.'&id='.$id.'&type='.$type; $num = count($tickets); $nbtotalofrecords = ''; $newcardbutton = '';
+ print_barre_liste($langs->trans("Ticket"), $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, $massactionbutton, $num, $nbtotalofrecords, 'ticket', 0, $newcardbutton, '', $limit);
+
+
+ print '\n";
+
+ print ' '."\n";
+ }
+ } else {
+ print_barre_liste($langs->trans("Ticket"), null, $_SERVER["PHP_SELF"], '', '', '', '', '', '', 'ticket');
+ accessforbidden($langs->trans("NotEnoughPermissions"), 0, 0);
}
}
diff --git a/htdocs/comm/action/card.php b/htdocs/comm/action/card.php
index 6dd6cd5663b..14654914dd5 100644
--- a/htdocs/comm/action/card.php
+++ b/htdocs/comm/action/card.php
@@ -538,7 +538,7 @@ if (empty($reshook) && $action == 'add') {
$error++;
}
// End date
- $repeateventlimitdate = dol_mktime('23', '59', '59', GETPOSTISSET("limitmonth") ? GETPOST("limitmonth", 'int') : 01, GETPOSTISSET("limitday", 'int') ? GETPOST("limitday", 'int') : 01, GETPOSTISSET("limityear", 'int') && GETPOST("limityear", 'int') < 2100 ? GETPOST("limityear", 'int') : 2100, $tzforfullday ? $tzforfullday : 'tzuser');
+ $repeateventlimitdate = dol_mktime(23, 59, 59, GETPOSTISSET("limitmonth") ? GETPOST("limitmonth", 'int') : 1, GETPOSTISSET("limitday") ? GETPOST("limitday", 'int') : 1, GETPOSTISSET("limityear") && GETPOST("limityear", 'int') < 2100 ? GETPOST("limityear", 'int') : 2100, $tzforfullday ? $tzforfullday : 'tzuser');
// Set date of end of event
$deltatime = num_between_day($object->datep, $datep);
$datef = dol_time_plus_duree($datef, $deltatime, 'd');
@@ -1362,7 +1362,7 @@ if ($action == 'create') {
$formactions->form_select_status_action('formaction', $percent, 1, 'complete', 0, 0, 'maxwidth200');
print ' ';
- if (!empty($conf->categorie->enabled)) {
+ if (isModEnabled('categorie')) {
// Categories
print ''.$langs->trans("Categories").' ';
$cate_arbo = $form->select_all_categories(Categorie::TYPE_ACTIONCOMM, '', 'parent', 64, 0, 1);
@@ -1378,7 +1378,7 @@ if ($action == 'create') {
print '';
- if (!empty($conf->societe->enabled)) {
+ if (isModEnabled("societe")) {
// Related company
print ''.$langs->trans("ActionOnCompany").' ';
if (GETPOST('socid', 'int') > 0) {
@@ -1411,7 +1411,7 @@ if ($action == 'create') {
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$projectid = GETPOST('projectid', 'int');
@@ -1496,7 +1496,7 @@ if ($action == 'create') {
// Description
print ' '.$langs->trans("Description").' ';
require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
- $doleditor = new DolEditor('note', (GETPOSTISSET('note') ? GETPOST('note', 'restricthtml') : $object->note_private), '', 120, 'dolibarr_notes', 'In', true, true, $conf->fckeditor->enabled, ROWS_4, '90%');
+ $doleditor = new DolEditor('note', (GETPOSTISSET('note') ? GETPOST('note', 'restricthtml') : $object->note_private), '', 120, 'dolibarr_notes', 'In', true, true, isModEnabled('fckeditor'), ROWS_4, '90%');
$doleditor->Create();
print ' ';
@@ -1870,7 +1870,7 @@ if ($id > 0) {
print '';
// Tags-Categories
- if (!empty($conf->categorie->enabled)) {
+ if (isModEnabled('categorie')) {
print ''.$langs->trans("Categories").' ';
$cate_arbo = $form->select_all_categories(Categorie::TYPE_ACTIONCOMM, '', 'parent', 64, 0, 1);
$c = new Categorie($db);
@@ -1891,7 +1891,7 @@ if ($id > 0) {
print '';
- if (!empty($conf->societe->enabled)) {
+ if (isModEnabled("societe")) {
// Related company
print ''.$langs->trans("ActionOnCompany").' ';
print '';
@@ -1914,7 +1914,7 @@ if ($id > 0) {
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
print ' '.$langs->trans("Project").' ';
@@ -1939,7 +1939,7 @@ if ($id > 0) {
print ' ';
print ''.$langs->trans("LinkedObject").' ';
- if ($object->elementtype == 'task' && !empty($conf->project->enabled)) {
+ if ($object->elementtype == 'task' && isModEnabled('project')) {
print '';
$urloption = '?action=create&donotclearsession=1'; // we use create not edit for more flexibility
@@ -2132,7 +2132,7 @@ if ($id > 0) {
// Thirdparty
//$morehtmlref.=' '.$langs->trans('ThirdParty') . ' : ' . $object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
//$morehtmlref.=' '.$langs->trans('Project') . ' ';
$morehtmlref .= $langs->trans('Project').' ';
@@ -2285,7 +2285,7 @@ if ($id > 0) {
}
// Categories
- if (!empty($conf->categorie->enabled)) {
+ if (isModEnabled('categorie')) {
print ' '.$langs->trans("Categories").' ';
print $form->showCategories($object->id, Categorie::TYPE_ACTIONCOMM, 1);
print " ";
@@ -2300,7 +2300,7 @@ if ($id > 0) {
print '
';
print '';
- if (!empty($conf->societe->enabled)) {
+ if (isModEnabled("societe")) {
// Related company
print ''.$langs->trans("ActionOnCompany").' '.($object->thirdparty->id ? $object->thirdparty->getNomUrl(1) : (''.$langs->trans("None").' '));
if (is_object($object->thirdparty) && $object->thirdparty->id > 0 && $object->type_code == 'AC_TEL') {
diff --git a/htdocs/comm/action/class/actioncomm.class.php b/htdocs/comm/action/class/actioncomm.class.php
index 9a7114a6113..571815fb615 100644
--- a/htdocs/comm/action/class/actioncomm.class.php
+++ b/htdocs/comm/action/class/actioncomm.class.php
@@ -457,11 +457,11 @@ class ActionComm extends CommonObject
if (!empty($this->datep) && !empty($this->datef)) {
$this->durationp = ($this->datef - $this->datep); // deprecated
}
- //if (! empty($this->date) && ! empty($this->dateend)) $this->durationa=($this->dateend - $this->date);
+ //if (!empty($this->date) && !empty($this->dateend)) $this->durationa=($this->dateend - $this->date);
if (!empty($this->datep) && !empty($this->datef) && $this->datep > $this->datef) {
$this->datef = $this->datep;
}
- //if (! empty($this->date) && ! empty($this->dateend) && $this->date > $this->dateend) $this->dateend=$this->date;
+ //if (!empty($this->date) && !empty($this->dateend) && $this->date > $this->dateend) $this->dateend=$this->date;
if (!isset($this->fk_project) || $this->fk_project < 0) {
$this->fk_project = 0;
}
diff --git a/htdocs/comm/action/class/actioncommreminder.class.php b/htdocs/comm/action/class/actioncommreminder.class.php
index ff242430b0a..eb0d464777a 100644
--- a/htdocs/comm/action/class/actioncommreminder.class.php
+++ b/htdocs/comm/action/class/actioncommreminder.class.php
@@ -149,7 +149,7 @@ class ActionCommReminder extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID)) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled)) {
+ if (!isModEnabled('multicompany')) {
$this->fields['entity']['enabled'] = 0;
}
}
diff --git a/htdocs/comm/action/class/api_agendaevents.class.php b/htdocs/comm/action/class/api_agendaevents.class.php
index 2d868e9bfaa..8c13709b250 100644
--- a/htdocs/comm/action/class/api_agendaevents.class.php
+++ b/htdocs/comm/action/class/api_agendaevents.class.php
@@ -124,24 +124,24 @@ class AgendaEvents extends DolibarrApi
if (!DolibarrApiAccess::$user->rights->societe->client->voir && !$socid) {
$search_sale = DolibarrApiAccess::$user->id;
}
- if (empty($conf->societe->enabled)) {
+ if (!isModEnabled('societe')) {
$search_sale = 0; // If module thirdparty not enabled, sale representative is something that does not exists
}
$sql = "SELECT t.id as rowid";
- if (!empty($conf->societe->enabled)) {
+ if (isModEnabled("societe")) {
if ((!DolibarrApiAccess::$user->rights->societe->client->voir && !$socid) || $search_sale > 0) {
$sql .= ", sc.fk_soc, sc.fk_user"; // We need these fields in order to filter by sale (including the case where the user can only see his prospects)
}
}
$sql .= " FROM ".MAIN_DB_PREFIX."actioncomm as t";
- if (!empty($conf->societe->enabled)) {
+ if (isModEnabled("societe")) {
if ((!DolibarrApiAccess::$user->rights->societe->client->voir && !$socid) || $search_sale > 0) {
$sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; // We need this table joined to the select in order to filter by sale
}
}
$sql .= ' WHERE t.entity IN ('.getEntity('agenda').')';
- if (!empty($conf->societe->enabled)) {
+ if (isModEnabled("societe")) {
if ((!DolibarrApiAccess::$user->rights->societe->client->voir && !$socid) || $search_sale > 0) {
$sql .= " AND t.fk_soc = sc.fk_soc";
}
diff --git a/htdocs/comm/action/class/cactioncomm.class.php b/htdocs/comm/action/class/cactioncomm.class.php
index 75cbefec3ec..2d57cfe1284 100644
--- a/htdocs/comm/action/class/cactioncomm.class.php
+++ b/htdocs/comm/action/class/cactioncomm.class.php
@@ -201,24 +201,24 @@ class CActionComm
if ($obj->module == 'invoice' && isModEnabled('facture') && !empty($user->rights->facture->lire)) {
$qualified = 1;
}
- if ($obj->module == 'order' && !empty($conf->commande->enabled) && empty($user->rights->commande->lire)) {
+ if ($obj->module == 'order' && isModEnabled('commande') && empty($user->rights->commande->lire)) {
$qualified = 1;
}
- if ($obj->module == 'propal' && !empty($conf->propal->enabled) && !empty($user->rights->propale->lire)) {
+ if ($obj->module == 'propal' && isModEnabled("propal") && !empty($user->rights->propale->lire)) {
$qualified = 1;
}
- if ($obj->module == 'invoice_supplier' && ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && !empty($user->rights->fournisseur->facture->lire)) || (!empty($conf->rights->supplier_invoice->enabled) && !empty($user->rights->supplier_invoice->lire)))) {
+ if ($obj->module == 'invoice_supplier' && ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && !empty($user->rights->fournisseur->facture->lire)) || (!empty($conf->rights->supplier_invoice->enabled) && !empty($user->rights->supplier_invoice->lire)))) {
$qualified = 1;
}
- if ($obj->module == 'order_supplier' && ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && !empty($user->rights->fournisseur->commande->lire)) || (empty($conf->rights->supplier_order->enabled) && !empty($user->rights->supplier_order->lire)))) {
+ if ($obj->module == 'order_supplier' && ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && !empty($user->rights->fournisseur->commande->lire)) || (empty($conf->rights->supplier_order->enabled) && !empty($user->rights->supplier_order->lire)))) {
$qualified = 1;
}
- if ($obj->module == 'shipping' && !empty($conf->expedition->enabled) && !empty($user->rights->expedition->lire)) {
+ if ($obj->module == 'shipping' && isModEnabled("expedition") && !empty($user->rights->expedition->lire)) {
$qualified = 1;
}
// For case module = 'myobject@eventorganization'
$tmparray = preg_split("/@/", $obj->module, -1);
- if (count($tmparray) > 1 && $tmparray[1] == 'eventorganization' && !empty($conf->eventorganization->enabled)) {
+ if (count($tmparray) > 1 && $tmparray[1] == 'eventorganization' && isModEnabled('eventorganization')) {
$qualified = 1;
}
// For the generic case with type = 'module...' and module = 'myobject@mymodule'
diff --git a/htdocs/comm/action/document.php b/htdocs/comm/action/document.php
index 90ed4ea1944..ada742f9742 100644
--- a/htdocs/comm/action/document.php
+++ b/htdocs/comm/action/document.php
@@ -34,7 +34,7 @@ require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -159,7 +159,7 @@ if ($object->id > 0) {
// Thirdparty
//$morehtmlref.=' '.$langs->trans('ThirdParty') . ' : ' . $object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
//$morehtmlref.=' '.$langs->trans('Project') . ' ';
$morehtmlref .= $langs->trans('Project').': ';
diff --git a/htdocs/comm/action/index.php b/htdocs/comm/action/index.php
index 7fb2f0f129e..e287ccfd2d7 100644
--- a/htdocs/comm/action/index.php
+++ b/htdocs/comm/action/index.php
@@ -36,7 +36,7 @@ require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/agenda.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -1911,7 +1911,7 @@ function show_day_events($db, $day, $month, $year, $monthshown, $style, &$eventa
}
//print 'background: #'.$colortouse.';';
//print 'background: -webkit-gradient(linear, left top, left bottom, from(#'.dol_color_minus($color, -3).'), to(#'.dol_color_minus($color, -1).'));';
- //if (! empty($event->transparency)) print 'background: #'.$color.'; background: -webkit-gradient(linear, left top, left bottom, from(#'.$color.'), to(#'.dol_color_minus($color,1).'));';
+ //if (!empty($event->transparency)) print 'background: #'.$color.'; background: -webkit-gradient(linear, left top, left bottom, from(#'.$color.'), to(#'.dol_color_minus($color,1).'));';
//else print 'background-color: transparent !important; background: none; border: 1px solid #bbb;';
//print ' -moz-border-radius:4px;"';
//print 'border: 1px solid #ccc" width="100%"';
diff --git a/htdocs/comm/action/info.php b/htdocs/comm/action/info.php
index 0ea24279df4..73acc0e7c82 100644
--- a/htdocs/comm/action/info.php
+++ b/htdocs/comm/action/info.php
@@ -28,7 +28,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
require_once DOL_DOCUMENT_ROOT.'/comm/action/class/cactioncomm.class.php';
require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -86,7 +86,7 @@ $morehtmlref = '';
// Thirdparty
//$morehtmlref.=' '.$langs->trans('ThirdParty') . ' : ' . $object->thirdparty->getNomUrl(1);
// Project
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$langs->load("projects");
//$morehtmlref.=' '.$langs->trans('Project') . ' ';
$morehtmlref .= $langs->trans('Project').': ';
diff --git a/htdocs/comm/action/list.php b/htdocs/comm/action/list.php
index dd877e903e4..b42bf003333 100644
--- a/htdocs/comm/action/list.php
+++ b/htdocs/comm/action/list.php
@@ -830,7 +830,7 @@ if (!empty($arrayfields['a.note']['checked'])) {
print_liste_field_titre($arrayfields['a.note']['label'], $_SERVER["PHP_SELF"], "a.note", $param, "", "", $sortfield, $sortorder);
$totalarray['nbfield']++;
}
-//if (! empty($conf->global->AGENDA_USE_EVENT_TYPE))
+//if (!empty($conf->global->AGENDA_USE_EVENT_TYPE))
if (!empty($arrayfields['a.datep']['checked'])) {
print_liste_field_titre($arrayfields['a.datep']['label'], $_SERVER["PHP_SELF"], "a.datep,a.id", $param, '', 'align="center"', $sortfield, $sortorder);
$totalarray['nbfield']++;
diff --git a/htdocs/comm/action/peruser.php b/htdocs/comm/action/peruser.php
index b30ef8f7ba9..f28a3b2f719 100644
--- a/htdocs/comm/action/peruser.php
+++ b/htdocs/comm/action/peruser.php
@@ -901,7 +901,7 @@ while ($currentdaytoshow < $lastdaytoshow) {
/* Use this list to have for all users */
$sql = "SELECT DISTINCT u.rowid, u.lastname as lastname, u.firstname, u.statut, u.login, u.admin, u.entity";
$sql .= " FROM ".MAIN_DB_PREFIX."user as u";
- if (!empty($conf->multicompany->enabled) && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
+ if (isModEnabled('multicompany') && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
$sql .= ", ".MAIN_DB_PREFIX."usergroup_user as ug";
$sql .= " WHERE ug.entity IN (".getEntity('usergroup').")";
$sql .= " AND ug.fk_user = u.rowid ";
diff --git a/htdocs/comm/action/rapport/index.php b/htdocs/comm/action/rapport/index.php
index 9b3f9a27140..4414981b6fb 100644
--- a/htdocs/comm/action/rapport/index.php
+++ b/htdocs/comm/action/rapport/index.php
@@ -29,7 +29,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php';
-require_once DOL_DOCUMENT_ROOT.'/core/modules/action/rapport.pdf.php';
+require_once DOL_DOCUMENT_ROOT.'/core/modules/action/rapport.class.php';
// Load translation files required by the page
$langs->loadLangs(array("agenda", "commercial"));
diff --git a/htdocs/comm/card.php b/htdocs/comm/card.php
index 173ee8a6510..6b3161190d8 100644
--- a/htdocs/comm/card.php
+++ b/htdocs/comm/card.php
@@ -44,19 +44,19 @@ if (isModEnabled('facture')) {
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture-rec.class.php';
}
-if (!empty($conf->propal->enabled)) {
+if (isModEnabled("propal")) {
require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
}
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
}
-if (!empty($conf->expedition->enabled)) {
+if (isModEnabled("expedition")) {
require_once DOL_DOCUMENT_ROOT.'/expedition/class/expedition.class.php';
}
-if (!empty($conf->contrat->enabled)) {
+if (isModEnabled('contrat')) {
require_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php';
}
-if (!empty($conf->adherent->enabled)) {
+if (isModEnabled('adherent')) {
require_once DOL_DOCUMENT_ROOT.'/adherents/class/adherent.class.php';
}
if (!empty($conf->ficheinter->enabled)) {
@@ -66,19 +66,19 @@ if (!empty($conf->ficheinter->enabled)) {
// Load translation files required by the page
$langs->loadLangs(array('companies', 'banks'));
-if (!empty($conf->contrat->enabled)) {
+if (isModEnabled('contrat')) {
$langs->load("contracts");
}
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
$langs->load("orders");
}
-if (!empty($conf->expedition->enabled)) {
+if (isModEnabled("expedition")) {
$langs->load("sendings");
}
if (isModEnabled('facture')) {
$langs->load("bills");
}
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$langs->load("projects");
}
if (!empty($conf->ficheinter->enabled)) {
@@ -438,7 +438,7 @@ if ($object->id > 0) {
print "
";
print ' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
// Compte bancaire par défaut
print '';
print '';
@@ -510,7 +510,7 @@ if ($object->id > 0) {
}
if ($object->client) {
- if (!empty($conf->commande->enabled) && !empty($conf->global->ORDER_MANAGE_MIN_AMOUNT)) {
+ if (isModEnabled('commande') && !empty($conf->global->ORDER_MANAGE_MIN_AMOUNT)) {
print ''."\n";
print ' ';
print '';
@@ -584,7 +584,7 @@ if ($object->id > 0) {
print ' ';
}
- if (!empty($conf->intracommreport->enabled)) {
+ if (isModEnabled('intracommreport')) {
// Transport mode by default
print '';
print '';
@@ -605,7 +605,7 @@ if ($object->id > 0) {
}
// Categories
- if (!empty($conf->categorie->enabled) && !empty($user->rights->categorie->lire)) {
+ if (isModEnabled('categorie') && !empty($user->rights->categorie->lire)) {
$langs->load("categories");
print ' '.$langs->trans("CustomersCategoriesShort").' ';
print '';
@@ -621,7 +621,7 @@ if ($object->id > 0) {
include DOL_DOCUMENT_ROOT.'/societe/tpl/linesalesrepresentative.tpl.php';
// Module Adherent
- if (!empty($conf->adherent->enabled)) {
+ if (isModEnabled('adherent')) {
$langs->load("members");
$langs->load("users");
@@ -697,7 +697,7 @@ if ($object->id > 0) {
$boxstat .= '';
$boxstat .= '';
- if (!empty($conf->propal->enabled) && $user->rights->propal->lire) {
+ if (isModEnabled("propal") && $user->rights->propal->lire) {
// Box proposals
$tmp = $object->getOutstandingProposals();
$outstandingOpened = $tmp['opened'];
@@ -718,7 +718,7 @@ if ($object->id > 0) {
}
}
- if (!empty($conf->commande->enabled) && $user->rights->commande->lire) {
+ if (isModEnabled('commande') && $user->rights->commande->lire) {
// Box commandes
$tmp = $object->getOutstandingOrders();
$outstandingOpened = $tmp['opened'];
@@ -818,7 +818,7 @@ if ($object->id > 0) {
/*
* Latest proposals
*/
- if (!empty($conf->propal->enabled) && $user->rights->propal->lire) {
+ if (isModEnabled("propal") && $user->rights->propal->lire) {
$langs->load("propal");
$sql = "SELECT s.nom, s.rowid, p.rowid as propalid, p.fk_statut, p.total_ht";
@@ -913,7 +913,7 @@ if ($object->id > 0) {
/*
* Latest orders
*/
- if (!empty($conf->commande->enabled) && $user->rights->commande->lire) {
+ if (isModEnabled('commande') && $user->rights->commande->lire) {
$param ="";
$sql = "SELECT s.nom, s.rowid";
@@ -1024,7 +1024,7 @@ if ($object->id > 0) {
/*
* Latest shipments
*/
- if (!empty($conf->expedition->enabled) && $user->rights->expedition->lire) {
+ if (isModEnabled("expedition") && $user->rights->expedition->lire) {
$sql = 'SELECT e.rowid as id';
$sql .= ', e.ref, e.entity';
$sql .= ', e.date_creation';
@@ -1122,7 +1122,7 @@ if ($object->id > 0) {
/*
* Latest contracts
*/
- if (!empty($conf->contrat->enabled) && $user->rights->contrat->lire) {
+ if (isModEnabled('contrat') && $user->rights->contrat->lire) {
$sql = "SELECT s.nom, s.rowid, c.rowid as id, c.ref as ref, c.statut as contract_status, c.datec as dc, c.date_contrat as dcon, c.ref_customer as refcus, c.ref_supplier as refsup, c.entity,";
$sql .= " c.last_main_doc, c.model_pdf";
$sql .= " FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."contrat as c";
@@ -1548,12 +1548,12 @@ if ($object->id > 0) {
print '';
}
- if (!empty($conf->propal->enabled) && $user->rights->propal->creer && $object->status == 1) {
+ if (isModEnabled("propal") && $user->rights->propal->creer && $object->status == 1) {
$langs->load("propal");
print '';
}
- if (!empty($conf->commande->enabled) && $user->rights->commande->creer && $object->status == 1) {
+ if (isModEnabled('commande') && $user->rights->commande->creer && $object->status == 1) {
$langs->load("orders");
print '';
}
@@ -1570,7 +1570,7 @@ if ($object->id > 0) {
// Add invoice
if ($user->socid == 0) {
- if (!empty($conf->deplacement->enabled) && $object->status == 1) {
+ if (isModEnabled('deplacement') && $object->status == 1) {
$langs->load("trips");
print '';
}
@@ -1581,7 +1581,7 @@ if ($object->id > 0) {
} else {
$langs->loadLangs(array("orders", "bills"));
- if (!empty($conf->commande->enabled)) {
+ if (isModEnabled('commande')) {
if ($object->client != 0 && $object->client != 2) {
if (!empty($orders2invoice) && $orders2invoice > 0) {
print '';
diff --git a/htdocs/comm/index.php b/htdocs/comm/index.php
index 7127fd2dd5b..c2852cd45c9 100644
--- a/htdocs/comm/index.php
+++ b/htdocs/comm/index.php
@@ -90,16 +90,16 @@ $maxofloop = (empty($conf->global->MAIN_MAXLIST_OVERLOAD) ? 500 : $conf->global-
$form = new Form($db);
$formfile = new FormFile($db);
$companystatic = new Societe($db);
-if (!empty($conf->propal->enabled)) {
+if (isModEnabled("propal")) {
$propalstatic = new Propal($db);
}
-if (!empty($conf->supplier_proposal->enabled)) {
+if (isModEnabled('supplier_proposal')) {
$supplierproposalstatic = new SupplierProposal($db);
}
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
$orderstatic = new Commande($db);
}
-if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) {
+if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) {
$supplierorderstatic = new CommandeFournisseur($db);
}
@@ -128,7 +128,7 @@ if ($tmp) {
* Draft customer proposals
*/
-if (!empty($conf->propal->enabled) && $user->rights->propal->lire) {
+if (isModEnabled("propal") && $user->rights->propal->lire) {
$sql = "SELECT p.rowid, p.ref, p.ref_client, p.total_ht, p.total_tva, p.total_ttc, p.fk_statut as status";
$sql .= ", s.rowid as socid, s.nom as name, s.name_alias";
$sql .= ", s.code_client, s.code_compta, s.client";
@@ -194,7 +194,7 @@ if (!empty($conf->propal->enabled) && $user->rights->propal->lire) {
$companystatic->canvas = $obj->canvas;
print ' ';
- print ''.$propalstatic->getNomUrl(1).' ';
+ print ''.$propalstatic->getNomUrl(1).' ';
print ''.$companystatic->getNomUrl(1, 'customer').' ';
print ''.price((!empty($conf->global->MAIN_DASHBOARD_USE_TOTAL_HT) ? $obj->total_ht : $obj->total_ttc)).' ';
print ' ';
@@ -226,7 +226,7 @@ if (!empty($conf->propal->enabled) && $user->rights->propal->lire) {
* Draft supplier proposals
*/
-if (!empty($conf->supplier_proposal->enabled) && $user->rights->supplier_proposal->lire) {
+if (isModEnabled('supplier_proposal') && $user->rights->supplier_proposal->lire) {
$sql = "SELECT p.rowid, p.ref, p.total_ht, p.total_tva, p.total_ttc, p.fk_statut as status";
$sql .= ", s.rowid as socid, s.nom as name, s.name_alias";
$sql .= ", s.code_client, s.code_compta, s.client";
@@ -291,7 +291,7 @@ if (!empty($conf->supplier_proposal->enabled) && $user->rights->supplier_proposa
$companystatic->canvas = $obj->canvas;
print '';
- print ''.$supplierproposalstatic->getNomUrl(1).' ';
+ print ''.$supplierproposalstatic->getNomUrl(1).' ';
print ''.$companystatic->getNomUrl(1, 'supplier').' ';
print ''.price(!empty($conf->global->MAIN_DASHBOARD_USE_TOTAL_HT) ? $obj->total_ht : $obj->total_ttc).' ';
print ' ';
@@ -323,7 +323,7 @@ if (!empty($conf->supplier_proposal->enabled) && $user->rights->supplier_proposa
* Draft customer orders
*/
-if (!empty($conf->commande->enabled) && $user->rights->commande->lire) {
+if (isModEnabled('commande') && $user->rights->commande->lire) {
$sql = "SELECT c.rowid, c.ref, c.ref_client, c.total_ht, c.total_tva, c.total_ttc, c.fk_statut as status";
$sql .= ", s.rowid as socid, s.nom as name, s.name_alias";
$sql .= ", s.code_client, s.code_compta, s.client";
@@ -389,7 +389,7 @@ if (!empty($conf->commande->enabled) && $user->rights->commande->lire) {
$companystatic->canvas = $obj->canvas;
print '';
- print ''.$orderstatic->getNomUrl(1).' ';
+ print ''.$orderstatic->getNomUrl(1).' ';
print ''.$companystatic->getNomUrl(1, 'customer').' ';
print ''.price(!empty($conf->global->MAIN_DASHBOARD_USE_TOTAL_HT) ? $obj->total_ht : $obj->total_ttc).' ';
print ' ';
@@ -421,7 +421,7 @@ if (!empty($conf->commande->enabled) && $user->rights->commande->lire) {
* Draft purchase orders
*/
-if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->commande->lire) || (!empty($conf->supplier_order->enabled) && $user->rights->supplier_order->lire)) {
+if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->commande->lire) || (isModEnabled("supplier_order") && $user->rights->supplier_order->lire)) {
$sql = "SELECT cf.rowid, cf.ref, cf.ref_supplier, cf.total_ht, cf.total_tva, cf.total_ttc, cf.fk_statut as status";
$sql .= ", s.rowid as socid, s.nom as name, s.name_alias";
$sql .= ", s.code_client, s.code_compta, s.client";
@@ -487,7 +487,7 @@ if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SU
$companystatic->canvas = $obj->canvas;
print '';
- print ''.$supplierorderstatic->getNomUrl(1).' ';
+ print ''.$supplierorderstatic->getNomUrl(1).' ';
print ''.$companystatic->getNomUrl(1, 'supplier').' ';
print ''.price(!empty($conf->global->MAIN_DASHBOARD_USE_TOTAL_HT) ? $obj->total_ht : $obj->total_ttc).' ';
print ' ';
@@ -573,8 +573,9 @@ if (!empty($conf->ficheinter->enabled)) {
$companystatic->email = $obj->email;
$companystatic->entity = $obj->entity;
$companystatic->canvas = $obj->canvas;
+
print '';
- print '';
+ print ' ';
print $fichinterstatic->getNomUrl(1);
print " ";
print '';
@@ -592,7 +593,7 @@ print '';
/*
* Last modified customers or prospects
*/
-if (!empty($conf->societe->enabled) && $user->rights->societe->lire) {
+if (isModEnabled("societe") && $user->rights->societe->lire) {
$sql = "SELECT s.rowid as socid, s.nom as name, s.name_alias";
$sql .= ", s.code_client, s.code_compta, s.client";
$sql .= ", s.code_fournisseur, s.code_compta_fournisseur, s.fournisseur";
@@ -654,7 +655,7 @@ if (!empty($conf->societe->enabled) && $user->rights->societe->lire) {
$companystatic->canvas = $objp->canvas;
print '
';
- print ''.$companystatic->getNomUrl(1, 'customer').' ';
+ print ''.$companystatic->getNomUrl(1, 'customer').' ';
print '';
//print $companystatic->getLibCustProspStatut();
@@ -667,7 +668,7 @@ if (!empty($conf->societe->enabled) && $user->rights->societe->lire) {
$s .= ''.dol_substr($langs->trans("Customer"), 0, 1).' ';
}
/*
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && $obj->fournisseur)
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) && $obj->fournisseur)
{
$s .= ''.dol_substr($langs->trans("Supplier"), 0, 1).' ';
}*/
@@ -698,7 +699,7 @@ if (!empty($conf->societe->enabled) && $user->rights->societe->lire) {
/*
* Last suppliers
*/
-if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && $user->rights->societe->lire) {
+if (((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) && $user->rights->societe->lire) {
$sql = "SELECT s.rowid as socid, s.nom as name, s.name_alias";
$sql .= ", s.code_client, s.code_compta, s.client";
$sql .= ", s.code_fournisseur, s.code_compta_fournisseur, s.fournisseur";
@@ -751,7 +752,7 @@ if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_S
$companystatic->canvas = $objp->canvas;
print ' ';
- print ''.$companystatic->getNomUrl(1, 'supplier').' ';
+ print ''.$companystatic->getNomUrl(1, 'supplier').' ';
print '';
$obj = $companystatic;
@@ -763,7 +764,7 @@ if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_S
{
$s .= ''.dol_substr($langs->trans("Customer"), 0, 1).' ';
}*/
- if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && $obj->fournisseur) {
+ if (((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) && $obj->fournisseur) {
$s .= ''.dol_substr($langs->trans("Supplier"), 0, 1).' ';
}
print $s;
@@ -809,7 +810,7 @@ if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_S
/*
* Latest contracts
*/
-if (!empty($conf->contrat->enabled) && $user->rights->contrat->lire && 0) { // TODO A REFAIRE DEPUIS NOUVEAU CONTRAT
+if (isModEnabled('contrat') && $user->rights->contrat->lire && 0) { // TODO A REFAIRE DEPUIS NOUVEAU CONTRAT
$staticcontrat = new Contrat($db);
$sql = "SELECT s.rowid as socid, s.nom as name, s.name_alias";
@@ -865,8 +866,8 @@ if (!empty($conf->contrat->enabled) && $user->rights->contrat->lire && 0) { // T
$staticcontrat->ref = $obj->ref;
print ' ';
- print ''.$staticcontrat->getNomUrl(1).' ';
- print ''.$companystatic->getNomUrl(1, 'customer', 44).' ';
+ print ''.$staticcontrat->getNomUrl(1).' ';
+ print ''.$companystatic->getNomUrl(1, 'customer', 44).' ';
print ''.$staticcontrat->LibStatut($obj->statut, 3).' ';
print ' ';
@@ -887,7 +888,7 @@ if (!empty($conf->contrat->enabled) && $user->rights->contrat->lire && 0) { // T
/*
* Opened (validated) proposals
*/
-if (!empty($conf->propal->enabled) && $user->rights->propal->lire) {
+if (isModEnabled("propal") && $user->rights->propal->lire) {
$sql = "SELECT p.rowid as propalid, p.entity, p.total_ttc, p.total_ht, p.total_tva, p.ref, p.ref_client, p.fk_statut, p.datep as dp, p.fin_validite as dfv";
$sql .= ", s.rowid as socid, s.nom as name, s.name_alias";
$sql .= ", s.code_client, s.code_compta, s.client";
@@ -962,7 +963,7 @@ if (!empty($conf->propal->enabled) && $user->rights->propal->lire) {
print '
';
print '';
- print ''.$propalstatic->getNomUrl(1).' ';
+ print ''.$propalstatic->getNomUrl(1).' ';
print ''.$warning.' ';
print ''.$formfile->getDocumentsLink($propalstatic->element, $filename, $filedir).' ';
print ' ';
@@ -1006,7 +1007,7 @@ if (!empty($conf->propal->enabled) && $user->rights->propal->lire) {
/*
* Opened (validated) order
*/
-if (!empty($conf->commande->enabled) && $user->rights->commande->lire) {
+if (isModEnabled('commande') && $user->rights->commande->lire) {
$sql = "SELECT c.rowid as commandeid, c.total_ttc, c.total_ht, c.total_tva, c.ref, c.ref_client, c.fk_statut, c.date_valid as dv, c.facture as billed";
$sql .= ", s.rowid as socid, s.nom as name, s.name_alias";
$sql .= ", s.code_client, s.code_compta, s.client";
@@ -1082,7 +1083,7 @@ if (!empty($conf->commande->enabled) && $user->rights->commande->lire) {
print '';
print '';
- print ''.$orderstatic->getNomUrl(1).' ';
+ print ''.$orderstatic->getNomUrl(1).' ';
print ' ';
print ''.$formfile->getDocumentsLink($orderstatic->element, $filename, $filedir).' ';
print ' ';
diff --git a/htdocs/comm/mailing/advtargetemailing.php b/htdocs/comm/mailing/advtargetemailing.php
index bd052f4161e..8f0a2b38c7d 100644
--- a/htdocs/comm/mailing/advtargetemailing.php
+++ b/htdocs/comm/mailing/advtargetemailing.php
@@ -38,7 +38,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
// Load translation files required by the page
$langs->loadLangs(array('mails', 'companies'));
-if (!empty($conf->categorie->enabled)) {
+if (isModEnabled('categorie')) {
$langs->load("categories");
}
diff --git a/htdocs/comm/mailing/card.php b/htdocs/comm/mailing/card.php
index 748c5fabf10..ed1fa3f523e 100644
--- a/htdocs/comm/mailing/card.php
+++ b/htdocs/comm/mailing/card.php
@@ -258,7 +258,7 @@ if (empty($reshook)) {
}
}
if (!empty($conf->global->MEMBER_ENABLE_PUBLIC)) {
- $substitutionarray['__PUBLICLINK_NEWMEMBERFORM__'] = ''.$langs->trans('BlankSubscriptionForm'). ' ';
+ $substitutionarray['__PUBLICLINK_NEWMEMBERFORM__'] = ''.$langs->trans('BlankSubscriptionForm'). ' ';
}
/* For backward compatibility, deprecated */
if (!empty($conf->paypal->enabled) && !empty($conf->global->PAYPAL_SECURITY_TOKEN)) {
@@ -980,7 +980,7 @@ if ($action == 'create') {
}
if (($object->statut == 0 || $object->statut == 1 || $object->statut == 2) && $user->rights->mailing->creer) {
- if (!empty($conf->fckeditor->enabled) && !empty($conf->global->FCKEDITOR_ENABLE_MAILING)) {
+ if (isModEnabled('fckeditor') && !empty($conf->global->FCKEDITOR_ENABLE_MAILING)) {
print ''.$langs->trans("EditWithEditor").' ';
} else {
print ''.$langs->trans("EditWithTextEditor").' ';
diff --git a/htdocs/comm/mailing/cibles.php b/htdocs/comm/mailing/cibles.php
index c9b48665c95..764455e5f62 100644
--- a/htdocs/comm/mailing/cibles.php
+++ b/htdocs/comm/mailing/cibles.php
@@ -515,7 +515,7 @@ if ($object->fetch($id) >= 0) {
$num = $db->num_rows($resql);
$param = "&id=".$object->id;
- //if (! empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param.='&contextpage='.urlencode($contextpage);
+ //if (!empty($contextpage) && $contextpage != $_SERVER["PHP_SELF"]) $param.='&contextpage='.urlencode($contextpage);
if ($limit > 0 && $limit != $conf->liste_limit) {
$param .= '&limit='.urlencode($limit);
}
diff --git a/htdocs/comm/mailing/index.php b/htdocs/comm/mailing/index.php
index bd1a83e9959..9ac09ac529b 100644
--- a/htdocs/comm/mailing/index.php
+++ b/htdocs/comm/mailing/index.php
@@ -58,7 +58,7 @@ print load_fiche_titre($title);
print '';
-//if (! empty($conf->global->MAIN_SEARCH_FORM_ON_HOME_AREAS)) // This is useless due to the global search combo
+//if (!empty($conf->global->MAIN_SEARCH_FORM_ON_HOME_AREAS)) // This is useless due to the global search combo
//{
// Search into emailings
print '
';
diff --git a/htdocs/comm/propal/card.php b/htdocs/comm/propal/card.php
index f4e1866613e..c4f620f6686 100644
--- a/htdocs/comm/propal/card.php
+++ b/htdocs/comm/propal/card.php
@@ -6,7 +6,7 @@
* Copyright (C) 2005-2012 Regis Houssin
* Copyright (C) 2006 Andre Cianfarani
* Copyright (C) 2010-2016 Juanjo Menent
- * Copyright (C) 2010-2021 Philippe Grand
+ * Copyright (C) 2010-2022 Philippe Grand
* Copyright (C) 2012-2013 Christophe Battarel
* Copyright (C) 2012 Cedric Salvador
* Copyright (C) 2013-2014 Florian Henry
@@ -47,10 +47,9 @@ require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/modules/propale/modules_propale.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/propal.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/core/lib/signature.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -274,6 +273,9 @@ if (empty($reshook)) {
// Validation
$idwarehouse = GETPOST('idwarehouse', 'int');
$result = $object->valid($user);
+ if ( $result > 0 && ! empty($conf->global->PROPAL_SKIP_ACCEPT_REFUSE) ) {
+ $result = $object->closeProposal($user, $object::STATUS_SIGNED);
+ }
if ($result >= 0) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
@@ -324,8 +326,8 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) $newlang = GETPOST('lang_id', 'aZ09');
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang = $object->thirdparty->default_lang;
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) $newlang = GETPOST('lang_id', 'aZ09');
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) $newlang = $object->thirdparty->default_lang;
if (!empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@@ -449,7 +451,7 @@ if (empty($reshook)) {
$object->origin_id = GETPOST('originid');
// Multicurrency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$object->multicurrency_code = GETPOST('multicurrency_code', 'alpha');
}
@@ -624,10 +626,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -678,7 +680,7 @@ if (empty($reshook)) {
$action = 'closeas';
} elseif (GETPOST('statut', 'int') == $object::STATUS_SIGNED || GETPOST('statut', 'int') == $object::STATUS_NOTSIGNED) {
// prevent browser refresh from closing proposal several times
- if ($object->statut == $object::STATUS_VALIDATED) {
+ if ($object->statut == $object::STATUS_VALIDATED || ( ! empty($conf->global->PROPAL_SKIP_ACCEPT_REFUSE) && $object->statut == $object::STATUS_DRAFT)) {
$db->begin();
$result = $object->closeProposal($user, GETPOST('statut', 'int'), GETPOST('note_private', 'restricthtml'));
@@ -694,7 +696,7 @@ if (empty($reshook)) {
if (
!$error && GETPOST('statut', 'int') == $object::STATUS_SIGNED && GETPOST('generate_deposit', 'alpha') == 'on'
- && ! empty($deposit_percent_from_payment_terms) && isModEnabled('facture') && !empty($user->rights->facture->creer)
+ && !empty($deposit_percent_from_payment_terms) && isModEnabled('facture') && !empty($user->rights->facture->creer)
) {
require_once DOL_DOCUMENT_ROOT . '/compta/facture/class/facture.class.php';
@@ -723,7 +725,7 @@ if (empty($reshook)) {
$ret = $deposit->fetch($deposit->id); // Reload to get new records
$outputlangs = $langs;
- if ($conf->global->MAIN_MULTILANGS) {
+ if (!empty($conf->global->MAIN_MULTILANGS)) {
$outputlangs = new Translate('', $conf);
$outputlangs->setDefaultLang($deposit->thirdparty->default_lang);
$outputlangs->load('products');
@@ -752,7 +754,7 @@ if (empty($reshook)) {
if ($object->statut == Propal::STATUS_SIGNED || $object->statut == Propal::STATUS_NOTSIGNED || $object->statut == Propal::STATUS_BILLED) {
$db->begin();
- $result = $object->reopen($user, 1);
+ $result = $object->reopen($user, empty($conf->global->PROPAL_SKIP_ACCEPT_REFUSE));
if ($result < 0) {
setEventMessages($object->error, $object->errors, 'errors');
$error++;
@@ -875,7 +877,7 @@ if (empty($reshook)) {
}
}
} elseif ($action == 'addline' && GETPOST('submitforalllines', 'alpha') && GETPOST('vatforalllines', 'alpha') !== '' && $usercancreate) {
- // Define vat_rate
+ // Define a vat_rate for all lines
$vat_rate = (GETPOST('vatforalllines') ? GETPOST('vatforalllines') : 0);
$vat_rate = str_replace('*', '', $vat_rate);
$localtax1_rate = get_localtax($vat_rate, 1, $object->thirdparty, $mysoc);
@@ -884,7 +886,7 @@ if (empty($reshook)) {
$result = $object->updateline($line->id, $line->subprice, $line->qty, $line->remise_percent, $vat_rate, $localtax1_rate, $localtax2_rate, $line->desc, 'HT', $line->info_bits, $line->special_code, $line->fk_parent_line, 0, $line->fk_fournprice, $line->pa_ht, $line->label, $line->product_type, $line->date_start, $line->date_end, $line->array_options, $line->fk_unit, $line->multicurrency_subprice);
}
} elseif ($action == 'addline' && GETPOST('submitforalllines', 'alpha') && GETPOST('remiseforalllines', 'alpha') !== '' && $usercancreate) {
- // Define vat_rate
+ // Define a discount for all lines
$remise_percent = (GETPOST('remiseforalllines') ? GETPOST('remiseforalllines') : 0);
$remise_percent = str_replace('*', '', $remise_percent);
foreach ($object->lines as $line) {
@@ -894,22 +896,36 @@ if (empty($reshook)) {
// Set if we used free entry or predefined product
$predef = '';
$product_desc = (GETPOSTISSET('dp_desc') ? GETPOST('dp_desc', 'restricthtml') : '');
- $price_ht = price2num(GETPOST('price_ht'), 'MU', 2);
- $price_ht_devise = price2num(GETPOST('multicurrency_price_ht'), 'CU', 2);
- $price_ttc = price2num(GETPOST('price_ttc'), 'MU', 2);
- $price_ttc_devise = price2num(GETPOST('multicurrency_price_ttc'), 'CU', 2);
- $prod_entry_mode = GETPOST('prod_entry_mode');
+ $price_ht = '';
+ $price_ht_devise = '';
+ $price_ttc = '';
+ $price_ttc_devise = '';
+
+ if (GETPOST('price_ht') !== '') {
+ $price_ht = price2num(GETPOST('price_ht'), 'MU', 2);
+ }
+ if (GETPOST('multicurrency_price_ht') !== '') {
+ $price_ht_devise = price2num(GETPOST('multicurrency_price_ht'), 'CU', 2);
+ }
+ if (GETPOST('price_ttc') !== '') {
+ $price_ttc = price2num(GETPOST('price_ttc'), 'MU', 2);
+ }
+ if (GETPOST('multicurrency_price_ttc') !== '') {
+ $price_ttc_devise = price2num(GETPOST('multicurrency_price_ttc'), 'CU', 2);
+ }
+
+ $prod_entry_mode = GETPOST('prod_entry_mode', 'aZ09');
if ($prod_entry_mode == 'free') {
$idprod = 0;
- $tva_tx = (GETPOST('tva_tx') ? price2num(preg_replace('/\s*\(.*\)/', '', GETPOST('tva_tx'))) : 0);
+ $tva_tx = (GETPOST('tva_tx', 'alpha') ? price2num(preg_replace('/\s*\(.*\)/', '', GETPOST('tva_tx', 'alpha'))) : 0);
} else {
$idprod = GETPOST('idprod', 'int');
$tva_tx = '';
}
$qty = price2num(GETPOST('qty'.$predef, 'alpha'), 'MS', 2);
- $remise_percent = price2num(GETPOST('remise_percent'.$predef), '', 2);
+ $remise_percent = (GETPOSTISSET('remise_percent'.$predef) ? price2num(GETPOST('remise_percent'.$predef, 'alpha'), '', 2) : 0);
if (empty($remise_percent)) {
$remise_percent = 0;
}
@@ -930,7 +946,7 @@ if (empty($reshook)) {
$error++;
}
- if ($prod_entry_mode == 'free' && (empty($idprod) || $idprod < 0) && $price_ht === '' && $price_ht_devise === '') { // Unit price can be 0 but not ''. Also price can be negative for proposal.
+ if ($prod_entry_mode == 'free' && (empty($idprod) || $idprod < 0) && $price_ht === '' && $price_ht_devise === '' && $price_ttc === '' && $price_ttc_devise === '') { // Unit price can be 0 but not ''. Also price can be negative for proposal.
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("UnitPriceHT")), null, 'errors');
$error++;
}
@@ -1077,13 +1093,15 @@ if (empty($reshook)) {
$tmpvat = price2num(preg_replace('/\s*\(.*\)/', '', $tva_tx));
$tmpprodvat = price2num(preg_replace('/\s*\(.*\)/', '', $prod->tva_tx));
- // if price ht is forced (ie: calculated by margin rate and cost price). TODO Why this ?
+ // Set unit price to use
if (!empty($price_ht) || $price_ht === '0') {
$pu_ht = price2num($price_ht, 'MU');
$pu_ttc = price2num($pu_ht * (1 + ($tmpvat / 100)), 'MU');
+ } elseif (!empty($price_ttc) || $price_ttc === '0') {
+ $pu_ttc = price2num($price_ttc, 'MU');
+ $pu_ht = price2num($pu_ttc / (1 + ($tmpvat / 100)), 'MU');
} elseif ($tmpvat != $tmpprodvat) {
- // On reevalue prix selon taux tva car taux tva transaction peut etre different
- // de ceux du produit par defaut (par exemple si pays different entre vendeur et acheteur).
+ // Is this still used ?
if ($price_base_type != 'HT') {
$pu_ht = price2num($pu_ttc / (1 + ($tmpvat / 100)), 'MU');
} else {
@@ -1170,16 +1188,22 @@ if (empty($reshook)) {
$fk_unit = $prod->fk_unit;
} else {
$pu_ht = price2num($price_ht, 'MU');
- $pu_ttc = price2num(GETPOST('price_ttc'), 'MU');
+ $pu_ttc = price2num($price_ttc, 'MU');
$tva_npr = (preg_match('/\*/', $tva_tx) ? 1 : 0);
+ if (empty($tva_tx)) {
+ $tva_npr = 0;
+ }
$tva_tx = str_replace('*', '', $tva_tx);
$label = (GETPOST('product_label') ? GETPOST('product_label') : '');
$desc = $product_desc;
$type = GETPOST('type');
-
$fk_unit = GETPOST('units', 'alpha');
$pu_ht_devise = price2num($price_ht_devise, 'MU');
$pu_ttc_devise = price2num($price_ttc_devise, 'MU');
+
+ if ($pu_ttc && !$pu_ht) {
+ $price_base_type = 'TTC';
+ }
}
// Margin
@@ -1298,7 +1322,7 @@ if (empty($reshook)) {
$buyingprice = price2num(GETPOST('buying_price') != '' ? GETPOST('buying_price') : ''); // If buying_price is '0', we muste keep this value
$pu_ht_devise = price2num(GETPOST('multicurrency_subprice'), '', 2);
- //$pu_ttc_devise = price2num(GETPOST('multicurrency_subprice_ttc'), '', 2);
+ $pu_ttc_devise = price2num(GETPOST('multicurrency_subprice_ttc'), '', 2);
$date_start = dol_mktime(GETPOST('date_starthour'), GETPOST('date_startmin'), GETPOST('date_startsec'), GETPOST('date_startmonth'), GETPOST('date_startday'), GETPOST('date_startyear'));
$date_end = dol_mktime(GETPOST('date_endhour'), GETPOST('date_endmin'), GETPOST('date_endsec'), GETPOST('date_endmonth'), GETPOST('date_endday'), GETPOST('date_endyear'));
@@ -1382,7 +1406,14 @@ if (empty($reshook)) {
$qty = price2num(GETPOST('qty', 'alpha'), 'MS');
- $result = $object->updateline(GETPOST('lineid', 'int'), $pu_ht, $qty, $remise_percent, $vat_rate, $localtax1_rate, $localtax2_rate, $description, 'HT', $info_bits, $special_code, GETPOST('fk_parent_line'), 0, $fournprice, $buyingprice, $label, $type, $date_start, $date_end, $array_options, GETPOST("units"), $pu_ht_devise);
+ $pu = $pu_ht;
+ $price_base_type = 'HT';
+ if (empty($pu) && !empty($pu_ttc)) {
+ $pu = $pu_ttc;
+ $price_base_type = 'TTC';
+ }
+
+ $result = $object->updateline(GETPOST('lineid', 'int'), $pu, $qty, $remise_percent, $vat_rate, $localtax1_rate, $localtax2_rate, $description, $price_base_type, $info_bits, $special_code, GETPOST('fk_parent_line'), 0, $fournprice, $buyingprice, $label, $type, $date_start, $date_end, $array_options, GETPOST("units"), $pu_ht_devise);
if ($result >= 0) {
$db->commit();
@@ -1546,7 +1577,7 @@ $form = new Form($db);
$formfile = new FormFile($db);
$formpropal = new FormPropal($db);
$formmargin = new FormMargin($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -1625,7 +1656,7 @@ if ($action == 'create') {
$objectsrc->fetch_optionals();
$object->array_options = $objectsrc->array_options;
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
if (!empty($objectsrc->multicurrency_code)) {
$currency_code = $objectsrc->multicurrency_code;
}
@@ -1635,7 +1666,7 @@ if ($action == 'create') {
}
}
} else {
- if (!empty($conf->multicurrency->enabled) && !empty($soc->multicurrency_code)) {
+ if (isModEnabled("multicurrency") && !empty($soc->multicurrency_code)) {
$currency_code = $soc->multicurrency_code;
}
}
@@ -1750,7 +1781,7 @@ if ($action == 'create') {
print '';
// Bank Account
- if (!empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL) && !empty($conf->banque->enabled)) {
+ if (!empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL) && isModEnabled("banque")) {
print ''.$langs->trans('BankAccount').' ';
print img_picto('', 'bank_account', 'class="pictofixedwidth"').$form->select_comptes($soc->fk_account, 'fk_account', 0, '', 1, '', 0, 'maxwidth200 widthcentpercentminusx', 1);
print ' ';
@@ -1764,7 +1795,7 @@ if ($action == 'create') {
// Delivery delay
print ''.$langs->trans('AvailabilityPeriod');
- if (!empty($conf->commande->enabled)) {
+ if (isModEnabled('commande')) {
print ' ('.$langs->trans('AfterOrder').')';
}
print ' ';
@@ -1773,7 +1804,7 @@ if ($action == 'create') {
print ' ';
// Shipping Method
- if (!empty($conf->expedition->enabled)) {
+ if (isModEnabled("expedition")) {
if (!empty($conf->global->SOCIETE_ASK_FOR_SHIPPING_METHOD) && !empty($soc->shipping_method_id)) {
$shipping_method_id = $soc->shipping_method_id;
}
@@ -1807,7 +1838,7 @@ if ($action == 'create') {
print '';
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
print '';
print ''.$langs->trans("Project").' ';
@@ -1837,7 +1868,7 @@ if ($action == 'create') {
print " ";
// Multicurrency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
print '';
print ''.$form->editfieldkey('Currency', 'multicurrency_code', '', $object, 0).' ';
print '';
@@ -1909,7 +1940,7 @@ if ($action == 'create') {
}
print ' '.$langs->trans('AmountTTC').' '.price($objectsrc->total_ttc, 0, $langs, 1, -1, -1, $conf->currency)." ";
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
print ''.$langs->trans('MulticurrencyAmountHT').' '.price($objectsrc->multicurrency_total_ht).' ';
print ''.$langs->trans('MulticurrencyAmountVAT').' '.price($objectsrc->multicurrency_total_tva)." ";
print ''.$langs->trans('MulticurrencyAmountTTC').' '.price($objectsrc->multicurrency_total_ttc)." ";
@@ -2022,131 +2053,138 @@ if ($action == 'create') {
if ($action == 'closeas') {
//Form to close proposal (signed or not)
- $formquestion = array(
- array('type' => 'select', 'name' => 'statut', 'label' => ''.$langs->trans("CloseAs").' ', 'values' => array($object::STATUS_SIGNED => $object->LibStatut($object::STATUS_SIGNED), $object::STATUS_NOTSIGNED => $object->LibStatut($object::STATUS_NOTSIGNED))),
- array('type' => 'text', 'name' => 'note_private', 'label' => $langs->trans("Note"), 'value' => '') // Field to complete private note (not replace)
- );
+ $formquestion = array();
+ if (empty($conf->global->PROPAL_SKIP_ACCEPT_REFUSE)) {
+ $formquestion[] = array('type' => 'select', 'name' => 'statut', 'label' => ''.$langs->trans("CloseAs").' ', 'values' => array($object::STATUS_SIGNED => $object->LibStatut($object::STATUS_SIGNED), $object::STATUS_NOTSIGNED => $object->LibStatut($object::STATUS_NOTSIGNED)));
+ }
+ $formquestion[] = array('type' => 'text', 'name' => 'note_private', 'label' => $langs->trans("Note"), 'value' => ''); // Field to complete private note (not replace)
- $deposit_percent_from_payment_terms = getDictionaryValue('c_payment_term', 'deposit_percent', $object->cond_reglement_id);
+ if (getDolGlobalInt('PROPOSAL_SUGGEST_DOWN_PAYMENT_INVOICE_CREATION')) {
+ // This is a hidden option:
+ // Suggestion to create invoice during proposal signature is not enabled by default.
+ // Such choice should be managed by the workflow module and trigger. This option generates conflicts with some setup.
+ // It may also break step of creating an order when invoicing must be done from orders and not from proposal
+ $deposit_percent_from_payment_terms = getDictionaryValue('c_payment_term', 'deposit_percent', $object->cond_reglement_id);
- if (!empty($deposit_percent_from_payment_terms) && isModEnabled('facture') && ! empty($user->rights->facture->creer)) {
- require_once DOL_DOCUMENT_ROOT . '/compta/facture/class/facture.class.php';
+ if (!empty($deposit_percent_from_payment_terms) && isModEnabled('facture') && !empty($user->rights->facture->creer)) {
+ require_once DOL_DOCUMENT_ROOT . '/compta/facture/class/facture.class.php';
- $object->fetchObjectLinked();
+ $object->fetchObjectLinked();
- $eligibleForDepositGeneration = true;
+ $eligibleForDepositGeneration = true;
- if (array_key_exists('facture', $object->linkedObjects)) {
- foreach ($object->linkedObjects['facture'] as $invoice) {
- if ($invoice->type == Facture::TYPE_DEPOSIT) {
- $eligibleForDepositGeneration = false;
- break;
+ if (array_key_exists('facture', $object->linkedObjects)) {
+ foreach ($object->linkedObjects['facture'] as $invoice) {
+ if ($invoice->type == Facture::TYPE_DEPOSIT) {
+ $eligibleForDepositGeneration = false;
+ break;
+ }
}
}
- }
- if ($eligibleForDepositGeneration && array_key_exists('commande', $object->linkedObjects)) {
- foreach ($object->linkedObjects['commande'] as $order) {
- $order->fetchObjectLinked();
+ if ($eligibleForDepositGeneration && array_key_exists('commande', $object->linkedObjects)) {
+ foreach ($object->linkedObjects['commande'] as $order) {
+ $order->fetchObjectLinked();
- if (array_key_exists('facture', $order->linkedObjects)) {
- foreach ($order->linkedObjects['facture'] as $invoice) {
- if ($invoice->type == Facture::TYPE_DEPOSIT) {
- $eligibleForDepositGeneration = false;
- break 2;
+ if (array_key_exists('facture', $order->linkedObjects)) {
+ foreach ($order->linkedObjects['facture'] as $invoice) {
+ if ($invoice->type == Facture::TYPE_DEPOSIT) {
+ $eligibleForDepositGeneration = false;
+ break 2;
+ }
}
}
}
}
- }
- if ($eligibleForDepositGeneration) {
- $formquestion[] = array(
- 'type' => 'checkbox',
- 'tdclass' => 'showonlyifsigned',
- 'name' => 'generate_deposit',
- 'label' => $form->textwithpicto($langs->trans('GenerateDeposit', $object->deposit_percent), $langs->trans('DepositGenerationPermittedByThePaymentTermsSelected'))
- );
+ if ($eligibleForDepositGeneration) {
+ $formquestion[] = array(
+ 'type' => 'checkbox',
+ 'tdclass' => 'showonlyifsigned',
+ 'name' => 'generate_deposit',
+ 'morecss' => 'margintoponly marginbottomonly',
+ 'label' => $form->textwithpicto($langs->trans('GenerateDeposit', $object->deposit_percent), $langs->trans('DepositGenerationPermittedByThePaymentTermsSelected'))
+ );
- $formquestion[] = array(
- 'type' => 'date',
- 'tdclass' => 'fieldrequired showonlyifgeneratedeposit',
- 'name' => 'datef',
- 'label' => $langs->trans('DateInvoice'),
- 'value' => dol_now(),
- 'datenow' => true
- );
-
- if (! empty($conf->global->INVOICE_POINTOFTAX_DATE)) {
$formquestion[] = array(
'type' => 'date',
'tdclass' => 'fieldrequired showonlyifgeneratedeposit',
- 'name' => 'date_pointoftax',
- 'label' => $langs->trans('DatePointOfTax'),
+ 'name' => 'datef',
+ 'label' => $langs->trans('DateInvoice'),
'value' => dol_now(),
'datenow' => true
);
+
+ if (!empty($conf->global->INVOICE_POINTOFTAX_DATE)) {
+ $formquestion[] = array(
+ 'type' => 'date',
+ 'tdclass' => 'fieldrequired showonlyifgeneratedeposit',
+ 'name' => 'date_pointoftax',
+ 'label' => $langs->trans('DatePointOfTax'),
+ 'value' => dol_now(),
+ 'datenow' => true
+ );
+ }
+
+ $paymentTermsSelect = $form->getSelectConditionsPaiements(0, 'cond_reglement_id', -1, 0, 1, 'minwidth200');
+
+ $formquestion[] = array(
+ 'type' => 'other',
+ 'tdclass' => 'fieldrequired showonlyifgeneratedeposit',
+ 'name' => 'cond_reglement_id',
+ 'label' => $langs->trans('PaymentTerm'),
+ 'value' => $paymentTermsSelect
+ );
+
+ $formquestion[] = array(
+ 'type' => 'checkbox',
+ 'tdclass' => 'showonlyifgeneratedeposit',
+ 'name' => 'validate_generated_deposit',
+ 'morecss' => 'margintoponly marginbottomonly',
+ 'label' => $langs->trans('ValidateGeneratedDeposit')
+ );
+
+ $formquestion[] = array(
+ 'type' => 'onecolumn',
+ 'value' => '
+
+ '
+ );
}
-
- ob_start();
- $form->select_conditions_paiements(0, 'cond_reglement_id', -1, 0, 0, 'minwidth200');
- $paymentTermsSelect = ob_get_clean();
-
- $formquestion[] = array(
- 'type' => 'other',
- 'tdclass' => 'fieldrequired showonlyifgeneratedeposit',
- 'name' => 'cond_reglement_id',
- 'label' => $langs->trans('PaymentTerm'),
- 'value' => $paymentTermsSelect
- );
-
- $formquestion[] = array(
- 'type' => 'checkbox',
- 'tdclass' => 'showonlyifgeneratedeposit',
- 'name' => 'validate_generated_deposit',
- 'label' => $langs->trans('ValidateGeneratedDeposit')
- );
-
- $formquestion[] = array(
- 'type' => 'onecolumn',
- 'value' => '
-
- '
- );
}
}
@@ -2158,7 +2196,11 @@ if ($action == 'create') {
));
}
- $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('SetAcceptedRefused'), $text, 'confirm_closeas', $formquestion, '', 1, 250);
+ if (empty($conf->global->PROPAL_SKIP_ACCEPT_REFUSE)) {
+ $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('SetAcceptedRefused'), $text, 'confirm_closeas', $formquestion, '', 1, 250);
+ } else {
+ $formconfirm = $form->formconfirm($_SERVER["PHP_SELF"] . '?statut=3&id=' . $object->id, $langs->trans('Close'), $text, 'confirm_closeas', $formquestion, '', 1, 250);
+ }
} elseif ($action == 'delete') {
// Confirm delete
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('DeleteProp'), $langs->trans('ConfirmDeleteProp', $object->ref), 'confirm_delete', '', 0, 1);
@@ -2239,7 +2281,7 @@ if ($action == 'create') {
$morehtmlref .= ' ('.$langs->trans("OtherProposals").' )';
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ''.$langs->trans('Project').' ';
if ($usercancreate) {
@@ -2413,7 +2455,7 @@ if ($action == 'create') {
// Delivery delay
print '';
print '';
- if (!empty($conf->commande->enabled)) {
+ if (isModEnabled('commande')) {
print $form->textwithpicto($langs->trans('AvailabilityPeriod'), $langs->trans('AvailabilityPeriod').' ('.$langs->trans('AfterOrder').')');
} else {
print $langs->trans('AvailabilityPeriod');
@@ -2434,7 +2476,7 @@ if ($action == 'create') {
print ' ';
// Shipping Method
- if (!empty($conf->expedition->enabled)) {
+ if (isModEnabled("expedition")) {
print '';
print '';
print $langs->trans('SendingMethod');
@@ -2490,7 +2532,7 @@ if ($action == 'create') {
print ' ';
// Multicurrency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
// Multicurrency code
print '';
print '';
@@ -2552,7 +2594,7 @@ if ($action == 'create') {
print ' ';
}
- if (!empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL) && !empty($conf->banque->enabled)) {
+ if (!empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL) && isModEnabled("banque")) {
// Bank Account
print '';
print '';
@@ -2621,7 +2663,7 @@ if ($action == 'create') {
print '';
- if (!empty($conf->multicurrency->enabled) && ($object->multicurrency_code && $object->multicurrency_code != $conf->currency)) {
+ if (isModEnabled("multicurrency") && ($object->multicurrency_code && $object->multicurrency_code != $conf->currency)) {
// Multicurrency Amount HT
print ''.$form->editfieldkey('MulticurrencyAmountHT', 'multicurrency_total_ht', '', $object, 0).' ';
print ''.price($object->multicurrency_total_ht, '', $langs, 0, - 1, - 1, (!empty($object->multicurrency_code) ? $object->multicurrency_code : $conf->currency)).' ';
@@ -2696,7 +2738,7 @@ if ($action == 'create') {
* Lines
*/
- // Show object lines
+ // Get object lines
$result = $object->getLinesArray();
// Add products/services form
@@ -2704,7 +2746,7 @@ if ($action == 'create') {
global $inputalsopricewithtax;
$inputalsopricewithtax = 1;
- print ' id.(($action != 'editline') ? '' : '#line_'.GETPOST('lineid', 'int')).'" method="POST">
+ print ' id.'" method="POST">
@@ -2765,13 +2807,13 @@ if ($action == 'create') {
if (($object->statut == Propal::STATUS_DRAFT && $object->total_ttc >= 0 && count($object->lines) > 0)
|| ($object->statut == Propal::STATUS_DRAFT && !empty($conf->global->PROPAL_ENABLE_NEGATIVE) && count($object->lines) > 0)) {
if ($usercanvalidate) {
- print 'id.'&action=validate&token='.newToken().'">'.$langs->trans('Validate').' ';
+ print 'id.'&action=validate&token='.newToken().'">'.(empty($conf->global->PROPAL_SKIP_ACCEPT_REFUSE) ? $langs->trans('Validate') : $langs->trans('ValidateAndSign')).' ';
} else {
print ''.$langs->trans('Validate').' ';
}
}
// Create event
- /*if ($conf->agenda->enabled && ! empty($conf->global->MAIN_ADD_EVENT_ON_ELEMENT_CARD)) // Add hidden condition because this is not a "workflow" action so should appears somewhere else on page.
+ /*if ($conf->agenda->enabled && !empty($conf->global->MAIN_ADD_EVENT_ON_ELEMENT_CARD)) // Add hidden condition because this is not a "workflow" action so should appears somewhere else on page.
{
print '' . $langs->trans("AddAction") . ' ';
}*/
@@ -2781,7 +2823,7 @@ if ($action == 'create') {
}
// ReOpen
- if ( (( ! empty($conf->global->PROPAL_REOPEN_UNSIGNED_ONLY) && $object->statut == Propal::STATUS_NOTSIGNED) || (empty($conf->global->PROPAL_REOPEN_UNSIGNED_ONLY) && ($object->statut == Propal::STATUS_SIGNED || $object->statut == Propal::STATUS_NOTSIGNED || $object->statut == Propal::STATUS_BILLED))) && $usercanclose) {
+ if ( (( !empty($conf->global->PROPAL_REOPEN_UNSIGNED_ONLY) && $object->statut == Propal::STATUS_NOTSIGNED) || (empty($conf->global->PROPAL_REOPEN_UNSIGNED_ONLY) && ($object->statut == Propal::STATUS_SIGNED || $object->statut == Propal::STATUS_NOTSIGNED || $object->statut == Propal::STATUS_BILLED))) && $usercanclose) {
print 'id.'&action=reopen&token='.newToken().(empty($conf->global->MAIN_JUMP_TAG) ? '' : '#reopen').'"';
print '>'.$langs->trans('ReOpen').' ';
}
@@ -2798,7 +2840,7 @@ if ($action == 'create') {
}
// Create a sale order
- if (!empty($conf->commande->enabled) && $object->statut == Propal::STATUS_SIGNED) {
+ if (isModEnabled('commande') && $object->statut == Propal::STATUS_SIGNED) {
if ($usercancreateorder) {
print ''.$langs->trans("AddOrder").' ';
}
@@ -2806,7 +2848,7 @@ if ($action == 'create') {
// Create a purchase order
if (!empty($conf->global->WORKFLOW_CAN_CREATE_PURCHASE_ORDER_FROM_PROPOSAL)) {
- if ($object->statut == Propal::STATUS_SIGNED && ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled))) {
+ if ($object->statut == Propal::STATUS_SIGNED && ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order"))) {
if ($usercancreatepurchaseorder) {
print ''.$langs->trans("AddPurchaseOrder").' ';
}
@@ -2814,7 +2856,7 @@ if ($action == 'create') {
}
// Create an intervention
- if (!empty($conf->service->enabled) && !empty($conf->ficheinter->enabled) && $object->statut == Propal::STATUS_SIGNED) {
+ if (isModEnabled("service") && !empty($conf->ficheinter->enabled) && $object->statut == Propal::STATUS_SIGNED) {
if ($usercancreateintervention) {
$langs->load("interventions");
print ''.$langs->trans("AddIntervention").' ';
@@ -2822,7 +2864,7 @@ if ($action == 'create') {
}
// Create contract
- if (!empty($conf->contrat->enabled) && $object->statut == Propal::STATUS_SIGNED) {
+ if (isModEnabled('contrat') && $object->statut == Propal::STATUS_SIGNED) {
$langs->load("contracts");
if ($usercancreatecontract) {
@@ -2846,14 +2888,22 @@ if ($action == 'create') {
}
}
- // Close as accepted/refused
- if ($object->statut == Propal::STATUS_VALIDATED) {
- if ($usercanclose) {
- print 'id.'&action=closeas&token='.newToken().(empty($conf->global->MAIN_JUMP_TAG) ? '' : '#close').'"';
- print '>'.$langs->trans('SetAcceptedRefused').' ';
- } else {
- print ''.$langs->trans('SetAcceptedRefused').' ';
+ if (empty($conf->global->PROPAL_SKIP_ACCEPT_REFUSE)) {
+ // Close as accepted/refused
+ if ($object->statut == Propal::STATUS_VALIDATED) {
+ if ($usercanclose) {
+ print 'id.'&action=closeas&token='.newToken().(empty($conf->global->MAIN_JUMP_TAG) ? '' : '#close').'"';
+ print '>'.$langs->trans('SetAcceptedRefused').' ';
+ } else {
+ print ''.$langs->trans('SetAcceptedRefused').' ';
+ }
+ }
+ } else {
+ // Set not signed (close)
+ if ($object->statut == Propal::STATUS_DRAFT && $usercanclose) {
+ print 'id . '&token='.newToken().'&action=closeas&token='.newToken() . (empty($conf->global->MAIN_JUMP_TAG) ? '' : '#close') . '"';
+ print '>' . $langs->trans('SetRefusedAndClose') . ' ';
}
}
@@ -2906,7 +2956,7 @@ if ($action == 'create') {
if ($object->statut != Propal::STATUS_DRAFT && $useonlinesignature) {
print ' ';
- require_once DOL_DOCUMENT_ROOT.'/core/lib/payments.lib.php';
+ require_once DOL_DOCUMENT_ROOT.'/core/lib/signature.lib.php';
print showOnlineSignatureUrl('proposal', $object->ref).' ';
}
diff --git a/htdocs/comm/propal/class/api_proposals.class.php b/htdocs/comm/propal/class/api_proposals.class.php
index d28b5718c2f..cf675e01b62 100644
--- a/htdocs/comm/propal/class/api_proposals.class.php
+++ b/htdocs/comm/propal/class/api_proposals.class.php
@@ -496,8 +496,12 @@ class Proposals extends DolibarrApi
$request_data = (object) $request_data;
- $request_data->desc = sanitizeVal($request_data->desc, 'restricthtml');
- $request_data->label = sanitizeVal($request_data->label);
+ if (isset($request_data->desc)) {
+ $request_data->desc = sanitizeVal($request_data->desc, 'restricthtml');
+ }
+ if (isset($request_data->label)) {
+ $request_data->label = sanitizeVal($request_data->label);
+ }
$propalline = new PropaleLigne($this->db);
$result = $propalline->fetch($lineid);
diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php
index 9831c6d7772..4c4a0a6c19a 100644
--- a/htdocs/comm/propal/class/propal.class.php
+++ b/htdocs/comm/propal/class/propal.class.php
@@ -7,7 +7,7 @@
* Copyright (C) 2006 Andre Cianfarani
* Copyright (C) 2008 Raphael Bertrand
* Copyright (C) 2010-2020 Juanjo Menent
- * Copyright (C) 2010-2017 Philippe Grand
+ * Copyright (C) 2010-2022 Philippe Grand
* Copyright (C) 2012-2014 Christophe Battarel
* Copyright (C) 2012 Cedric Salvador
* Copyright (C) 2013 Florian Henry
@@ -297,7 +297,7 @@ class Propal extends CommonObject
'ref_client' =>array('type'=>'varchar(255)', 'label'=>'RefCustomer', 'enabled'=>1, 'visible'=>-1, 'position'=>22),
'ref_ext' =>array('type'=>'varchar(255)', 'label'=>'RefExt', 'enabled'=>1, 'visible'=>0, 'position'=>40),
'fk_soc' =>array('type'=>'integer:Societe:societe/class/societe.class.php', 'label'=>'ThirdParty', 'enabled'=>'$conf->societe->enabled', 'visible'=>-1, 'position'=>23),
- 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Fk projet', 'enabled'=>'$conf->project->enabled', 'visible'=>-1, 'position'=>24),
+ 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Fk projet', 'enabled'=>"isModEnabled('project')", 'visible'=>-1, 'position'=>24),
'tms' =>array('type'=>'timestamp', 'label'=>'DateModification', 'enabled'=>1, 'visible'=>-1, 'notnull'=>1, 'position'=>25),
'datec' =>array('type'=>'datetime', 'label'=>'DateCreation', 'enabled'=>1, 'visible'=>-1, 'position'=>55),
'datep' =>array('type'=>'date', 'label'=>'Date', 'enabled'=>1, 'visible'=>-1, 'position'=>60),
@@ -335,11 +335,11 @@ class Propal extends CommonObject
'fk_incoterms' =>array('type'=>'integer', 'label'=>'IncotermCode', 'enabled'=>'$conf->incoterm->enabled', 'visible'=>-1, 'position'=>220),
'location_incoterms' =>array('type'=>'varchar(255)', 'label'=>'IncotermLabel', 'enabled'=>'$conf->incoterm->enabled', 'visible'=>-1, 'position'=>225),
'fk_multicurrency' =>array('type'=>'integer', 'label'=>'MulticurrencyID', 'enabled'=>1, 'visible'=>-1, 'position'=>230),
- 'multicurrency_code' =>array('type'=>'varchar(255)', 'label'=>'MulticurrencyCurrency', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>235),
- 'multicurrency_tx' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyRate', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>240, 'isameasure'=>1),
- 'multicurrency_total_ht' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountHT', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>245, 'isameasure'=>1),
- 'multicurrency_total_tva' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountVAT', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>250, 'isameasure'=>1),
- 'multicurrency_total_ttc' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountTTC', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>255, 'isameasure'=>1),
+ 'multicurrency_code' =>array('type'=>'varchar(255)', 'label'=>'MulticurrencyCurrency', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>235),
+ 'multicurrency_tx' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyRate', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>240, 'isameasure'=>1),
+ 'multicurrency_total_ht' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountHT', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>245, 'isameasure'=>1),
+ 'multicurrency_total_tva' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountVAT', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>250, 'isameasure'=>1),
+ 'multicurrency_total_ttc' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountTTC', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>255, 'isameasure'=>1),
'last_main_doc' =>array('type'=>'varchar(255)', 'label'=>'LastMainDoc', 'enabled'=>1, 'visible'=>-1, 'position'=>260),
'fk_statut' =>array('type'=>'smallint(6)', 'label'=>'Status', 'enabled'=>1, 'visible'=>-1, 'notnull'=>1, 'position'=>500),
'import_key' =>array('type'=>'varchar(14)', 'label'=>'ImportId', 'enabled'=>1, 'visible'=>-2, 'position'=>900),
@@ -932,9 +932,6 @@ class Propal extends CommonObject
$this->line->date_start = $date_start;
$this->line->date_end = $date_end;
- // TODO deprecated
- $this->line->price = $price;
-
if (is_array($array_options) && count($array_options) > 0) {
// We replace values in this->line->array_options only for entries defined into $array_options
foreach ($array_options as $key => $value) {
@@ -1135,7 +1132,7 @@ class Propal extends CommonObject
$sql .= ", '".$this->db->escape($this->model_pdf)."'";
$sql .= ", ".($this->fin_validite != '' ? "'".$this->db->idate($this->fin_validite)."'" : "NULL");
$sql .= ", ".($this->cond_reglement_id > 0 ? ((int) $this->cond_reglement_id) : 'NULL');
- $sql .= ", ".(! empty($this->deposit_percent) ? "'".$this->db->escape($this->deposit_percent)."'" : 'NULL');
+ $sql .= ", ".(!empty($this->deposit_percent) ? "'".$this->db->escape($this->deposit_percent)."'" : 'NULL');
$sql .= ", ".($this->mode_reglement_id > 0 ? ((int) $this->mode_reglement_id) : 'NULL');
$sql .= ", ".($this->fk_account > 0 ? ((int) $this->fk_account) : 'NULL');
$sql .= ", '".$this->db->escape($this->ref_client)."'";
@@ -1367,7 +1364,7 @@ class Propal extends CommonObject
$object->mode_reglement_id = (!empty($objsoc->mode_reglement_id) ? $objsoc->mode_reglement_id : 0);
$object->fk_delivery_address = '';
- /*if (!empty($conf->project->enabled))
+ /*if (isModEnabled('project'))
{
$project = new Project($db);
if ($this->fk_project > 0 && $project->fetch($this->fk_project)) {
@@ -1741,7 +1738,7 @@ class Propal extends CommonObject
$sql .= " fk_user_valid=".(isset($this->user_valid) ? $this->user_valid : "null").",";
$sql .= " fk_projet=".(isset($this->fk_project) ? $this->fk_project : "null").",";
$sql .= " fk_cond_reglement=".(isset($this->cond_reglement_id) ? $this->cond_reglement_id : "null").",";
- $sql .= " deposit_percent=".(! empty($this->deposit_percent) ? "'".$this->db->escape($this->deposit_percent)."'" : "null").",";
+ $sql .= " deposit_percent=".(!empty($this->deposit_percent) ? "'".$this->db->escape($this->deposit_percent)."'" : "null").",";
$sql .= " fk_mode_reglement=".(isset($this->mode_reglement_id) ? $this->mode_reglement_id : "null").",";
$sql .= " fk_input_reason=".(isset($this->demand_reason_id) ? $this->demand_reason_id : "null").",";
$sql .= " note_private=".(isset($this->note_private) ? "'".$this->db->escape($this->note_private)."'" : "null").",";
diff --git a/htdocs/comm/propal/contact.php b/htdocs/comm/propal/contact.php
index 52318684f42..2497ba905a8 100644
--- a/htdocs/comm/propal/contact.php
+++ b/htdocs/comm/propal/contact.php
@@ -2,7 +2,7 @@
/* Copyright (C) 2005 Patrick Rouillon
* Copyright (C) 2005-2016 Destailleur Laurent
* Copyright (C) 2005-2012 Regis Houssin
- * Copyright (C) 2011-2015 Philippe Grand
+ * Copyright (C) 2011-2022 Philippe Grand
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -138,7 +138,7 @@ if ($object->id > 0) {
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1, 'customer');
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->propal->creer) {
diff --git a/htdocs/comm/propal/document.php b/htdocs/comm/propal/document.php
index 35ab2e28b49..6f17c655e82 100644
--- a/htdocs/comm/propal/document.php
+++ b/htdocs/comm/propal/document.php
@@ -32,7 +32,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/propal.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -136,7 +136,7 @@ if ($object->id > 0) {
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1, 'customer');
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->propal->creer) {
diff --git a/htdocs/comm/propal/index.php b/htdocs/comm/propal/index.php
index 9f020bc1613..0e108b8ee9f 100644
--- a/htdocs/comm/propal/index.php
+++ b/htdocs/comm/propal/index.php
@@ -76,7 +76,7 @@ if ($tmp) {
/*
* Draft proposals
*/
-if (!empty($conf->propal->enabled)) {
+if (isModEnabled("propal")) {
$sql = "SELECT p.rowid, p.ref, p.ref_client, p.total_ht, p.total_tva, p.total_ttc";
$sql .= ", s.rowid as socid, s.nom as name, s.client, s.canvas, s.code_client, s.email, s.entity, s.code_compta";
$sql .= " FROM ".MAIN_DB_PREFIX."propal as p";
@@ -226,7 +226,7 @@ if ($resql) {
/*
* Open (validated) proposals
*/
-if (!empty($conf->propal->enabled) && $user->rights->propale->lire) {
+if (isModEnabled("propal") && $user->rights->propale->lire) {
$sql = "SELECT s.nom as socname, s.rowid as socid, s.canvas, s.client, s.email, s.code_compta";
$sql .= ", p.rowid as propalid, p.entity, p.total_ttc, p.total_ht, p.ref, p.fk_statut, p.datep as dp, p.fin_validite as dfv";
$sql .= " FROM ".MAIN_DB_PREFIX."societe as s";
@@ -311,7 +311,7 @@ if (!empty($conf->propal->enabled) && $user->rights->propale->lire) {
*/
/*
-if (! empty($conf->propal->enabled))
+if (!empty($conf->propal->enabled))
{
$sql = "SELECT c.rowid, c.ref, c.fk_statut, s.nom as name, s.rowid as socid";
$sql.=" FROM ".MAIN_DB_PREFIX."propal as c";
@@ -386,7 +386,7 @@ if (! empty($conf->propal->enabled))
*/
/*
-if (! empty($conf->propal->enabled))
+if (!empty($conf->propal->enabled))
{
$sql = "SELECT c.rowid, c.ref, c.fk_statut, c.facture, s.nom as name, s.rowid as socid";
$sql.= " FROM ".MAIN_DB_PREFIX."commande as c";
diff --git a/htdocs/comm/propal/info.php b/htdocs/comm/propal/info.php
index 92285183cf2..c67ec346ecb 100644
--- a/htdocs/comm/propal/info.php
+++ b/htdocs/comm/propal/info.php
@@ -28,7 +28,7 @@ require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/propal.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -83,7 +83,7 @@ $morehtmlref .= $form->editfieldval("RefCustomer", 'ref_client', $object->ref_cl
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->propal->creer) {
diff --git a/htdocs/comm/propal/list.php b/htdocs/comm/propal/list.php
index 9012b105b55..cf6237cd012 100644
--- a/htdocs/comm/propal/list.php
+++ b/htdocs/comm/propal/list.php
@@ -6,7 +6,7 @@
* Copyright (C) 2005-2013 Regis Houssin
* Copyright (C) 2006 Andre Cianfarani
* Copyright (C) 2010-2011 Juanjo Menent
- * Copyright (C) 2010-2011 Philippe Grand
+ * Copyright (C) 2010-2022 Philippe Grand
* Copyright (C) 2012 Christophe Battarel
* Copyright (C) 2013 Cédric Salvador
* Copyright (C) 2015 Jean-François Ferry
@@ -52,7 +52,7 @@ require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
// Load translation files required by the page
$langs->loadLangs(array('companies', 'propal', 'compta', 'bills', 'orders', 'products', 'deliveries', 'categories'));
-if (!empty($conf->expedition->enabled)) {
+if (isModEnabled("expedition")) {
$langs->loadLangs(array('sendings'));
}
@@ -204,8 +204,8 @@ $checkedtypetiers = 0;
$arrayfields = array(
'p.ref'=>array('label'=>"Ref", 'checked'=>1),
'p.ref_client'=>array('label'=>"RefCustomer", 'checked'=>1),
- 'pr.ref'=>array('label'=>"ProjectRef", 'checked'=>1, 'enabled'=>(empty($conf->project->enabled) ? 0 : 1)),
- 'pr.title'=>array('label'=>"ProjectLabel", 'checked'=>0, 'enabled'=>(empty($conf->project->enabled) ? 0 : 1)),
+ 'pr.ref'=>array('label'=>"ProjectRef", 'checked'=>1, 'enabled'=>(!isModEnabled('project') ? 0 : 1)),
+ 'pr.title'=>array('label'=>"ProjectLabel", 'checked'=>0, 'enabled'=>(!isModEnabled('project') ? 0 : 1)),
's.nom'=>array('label'=>"ThirdParty", 'checked'=>1),
's.name_alias'=>array('label'=>"AliasNameShort", 'checked'=>-1),
's.town'=>array('label'=>"Town", 'checked'=>-1),
@@ -218,7 +218,7 @@ $arrayfields = array(
'p.date_livraison'=>array('label'=>"DeliveryDate", 'checked'=>0),
'p.date_signature'=>array('label'=>"DateSigning", 'checked'=>0),
'ava.rowid'=>array('label'=>"AvailabilityPeriod", 'checked'=>0),
- 'p.fk_shipping_method'=>array('label'=>"SendingMethod", 'checked'=>0, 'enabled'=>!empty($conf->expedition->enabled)),
+ 'p.fk_shipping_method'=>array('label'=>"SendingMethod", 'checked'=>0, 'enabled'=>isModEnabled("expedition")),
'p.fk_input_reason'=>array('label'=>"Origin", 'checked'=>0, 'enabled'=>1),
'p.fk_cond_reglement'=>array('label'=>"PaymentConditionsShort", 'checked'=>0),
'p.fk_mode_reglement'=>array('label'=>"PaymentMode", 'checked'=>0),
@@ -227,13 +227,13 @@ $arrayfields = array(
'p.total_ttc'=>array('label'=>"AmountTTC", 'checked'=>0),
'p.total_ht_invoiced'=>array('label'=>"AmountInvoicedHT", 'checked'=>0, 'enabled'=>!empty($conf->global->PROPOSAL_SHOW_INVOICED_AMOUNT)),
'p.total_invoiced'=>array('label'=>"AmountInvoicedTTC", 'checked'=>0, 'enabled'=>!empty($conf->global->PROPOSAL_SHOW_INVOICED_AMOUNT)),
- 'p.multicurrency_code'=>array('label'=>'Currency', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1)),
- 'p.multicurrency_tx'=>array('label'=>'CurrencyRate', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1)),
- 'p.multicurrency_total_ht'=>array('label'=>'MulticurrencyAmountHT', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1)),
- 'p.multicurrency_total_tva'=>array('label'=>'MulticurrencyAmountVAT', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1)),
- 'p.multicurrency_total_ttc'=>array('label'=>'MulticurrencyAmountTTC', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1)),
- 'p.multicurrency_total_ht_invoiced'=>array('label'=>'MulticurrencyAmountInvoicedHT', 'checked'=>0, 'enabled'=>!empty($conf->multicurrency->enabled) && !empty($conf->global->PROPOSAL_SHOW_INVOICED_AMOUNT)),
- 'p.multicurrency_total_invoiced'=>array('label'=>'MulticurrencyAmountInvoicedTTC', 'checked'=>0, 'enabled'=>!empty($conf->multicurrency->enabled) && !empty($conf->global->PROPOSAL_SHOW_INVOICED_AMOUNT)),
+ 'p.multicurrency_code'=>array('label'=>'Currency', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1)),
+ 'p.multicurrency_tx'=>array('label'=>'CurrencyRate', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1)),
+ 'p.multicurrency_total_ht'=>array('label'=>'MulticurrencyAmountHT', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1)),
+ 'p.multicurrency_total_tva'=>array('label'=>'MulticurrencyAmountVAT', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1)),
+ 'p.multicurrency_total_ttc'=>array('label'=>'MulticurrencyAmountTTC', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1)),
+ 'p.multicurrency_total_ht_invoiced'=>array('label'=>'MulticurrencyAmountInvoicedHT', 'checked'=>0, 'enabled'=>isModEnabled("multicurrency") && !empty($conf->global->PROPOSAL_SHOW_INVOICED_AMOUNT)),
+ 'p.multicurrency_total_invoiced'=>array('label'=>'MulticurrencyAmountInvoicedTTC', 'checked'=>0, 'enabled'=>isModEnabled("multicurrency") && !empty($conf->global->PROPOSAL_SHOW_INVOICED_AMOUNT)),
'u.login'=>array('label'=>"Author", 'checked'=>1, 'position'=>10),
'sale_representative'=>array('label'=>"SaleRepresentativesOfThirdParty", 'checked'=>-1),
'total_pa' => array('label' => (getDolGlobalString('MARGIN_TYPE') == '1' ? 'BuyingPrice' : 'CostPrice'), 'checked' => 0, 'position' => 300, 'enabled' => (empty($conf->margin->enabled) || !$user->rights->margins->liretous ? 0 : 1)),
@@ -1057,7 +1057,7 @@ if ($resql) {
$moreforfilter .= '';
}
// If the user can view products
- if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire && ($user->rights->produit->lire || $user->rights->service->lire)) {
+ if (isModEnabled('categorie') && $user->rights->categorie->lire && ($user->rights->produit->lire || $user->rights->service->lire)) {
include_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
$moreforfilter .= '';
$tmptitle = $langs->trans('IncludingProductWithTag');
@@ -1065,7 +1065,7 @@ if ($resql) {
$moreforfilter .= img_picto($tmptitle, 'category', 'class="pictofixedwidth"').$form->selectarray('search_product_category', $cate_arbo, $search_product_category, $tmptitle, 0, 0, '', 0, 0, 0, 0, (empty($conf->dol_optimize_smallscreen) ? 'maxwidth300 widthcentpercentminusx' : 'maxwidth250 widthcentpercentminusx'), 1);
$moreforfilter .= '
';
}
- if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire) {
+ if (isModEnabled('categorie') && $user->rights->categorie->lire) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
$moreforfilter .= '';
$tmptitle = $langs->trans('CustomersProspectsCategoriesShort');
diff --git a/htdocs/comm/propal/note.php b/htdocs/comm/propal/note.php
index 28819123cb0..2b007ab3fa0 100644
--- a/htdocs/comm/propal/note.php
+++ b/htdocs/comm/propal/note.php
@@ -29,7 +29,7 @@
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/propal.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -108,7 +108,7 @@ if ($object->id > 0) {
// Thirdparty
$morehtmlref .= '
'.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' ';
if ($user->rights->propal->creer) {
diff --git a/htdocs/comm/prospect/index.php b/htdocs/comm/prospect/index.php
index e63aee6f240..bda09507ed0 100644
--- a/htdocs/comm/prospect/index.php
+++ b/htdocs/comm/prospect/index.php
@@ -59,7 +59,7 @@ print load_fiche_titre($langs->trans("ProspectionArea"));
print '
';
-if (!empty($conf->propal->enabled)) {
+if (isModEnabled("propal")) {
$var = false;
print '
';
print ' ';
@@ -118,7 +118,7 @@ if ($resql) {
/*
* Liste des propal brouillons
*/
-if (!empty($conf->propal->enabled) && $user->rights->propale->lire) {
+if (isModEnabled("propal") && $user->rights->propale->lire) {
$sql = "SELECT p.rowid, p.ref, p.price, s.nom as sname";
$sql .= " FROM ".MAIN_DB_PREFIX."propal as p";
$sql .= ", ".MAIN_DB_PREFIX."societe as s";
@@ -176,7 +176,7 @@ if (isModEnabled('agenda')) {
/*
* Dernieres propales ouvertes
*/
-if (!empty($conf->propal->enabled) && $user->rights->propale->lire) {
+if (isModEnabled("propal") && $user->rights->propale->lire) {
$sql = "SELECT s.nom as name, s.rowid as socid, s.client, s.canvas,";
$sql .= " p.rowid as propalid, p.total_ttc, p.ref, p.datep as dp, c.label as statut, c.id as statutid";
$sql .= " FROM ".MAIN_DB_PREFIX."societe as s";
diff --git a/htdocs/comm/remx.php b/htdocs/comm/remx.php
index db1cc06c504..a47a865fc45 100644
--- a/htdocs/comm/remx.php
+++ b/htdocs/comm/remx.php
@@ -424,12 +424,12 @@ if ($socid > 0) {
print ''.$langs->trans("ReasonDiscount").' ';
print ''.$langs->trans("ConsumedBy").' ';
print ''.$langs->trans("AmountHT").' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.$langs->trans("MulticurrencyAmountHT").' ';
}
print ''.$langs->trans("VATRate").' ';
print ''.$langs->trans("AmountTTC").' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.$langs->trans("MulticurrencyAmountTTC").' ';
}
print ''.$langs->trans("DiscountOfferedBy").' ';
@@ -474,12 +474,12 @@ if ($socid > 0) {
}
print ''.$langs->trans("NotConsumed").' ';
print ''.price($obj->amount_ht).' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.price($obj->multicurrency_amount_ht).' ';
}
print ''.vatrate($obj->tva_tx.($obj->vat_src_code ? ' ('.$obj->vat_src_code.')' : ''), true).' ';
print ''.price($obj->amount_ttc).' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.price($obj->multicurrency_amount_ttc).' ';
}
print '';
@@ -503,7 +503,7 @@ if ($socid > 0) {
}
} else {
$colspan = 8;
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
$colspan += 2;
}
print ' '.$langs->trans("None").' ';
@@ -562,12 +562,12 @@ if ($socid > 0) {
print ''.$langs->trans("ReasonDiscount").' ';
print ''.$langs->trans("ConsumedBy").' ';
print ''.$langs->trans("AmountHT").' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.$langs->trans("MulticurrencyAmountHT").' ';
}
print ''.$langs->trans("VATRate").' ';
print ''.$langs->trans("AmountTTC").' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.$langs->trans("MulticurrencyAmountTTC").' ';
}
print ''.$langs->trans("DiscountOfferedBy").' ';
@@ -612,12 +612,12 @@ if ($socid > 0) {
}
print ''.$langs->trans("NotConsumed").' ';
print ''.price($obj->amount_ht).' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.price($obj->multicurrency_amount_ht).' ';
}
print ''.vatrate($obj->tva_tx.($obj->vat_src_code ? ' ('.$obj->vat_src_code.')' : ''), true).' ';
print ''.price($obj->amount_ttc).' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.price($obj->multicurrency_amount_ttc).' ';
}
print '';
@@ -641,7 +641,7 @@ if ($socid > 0) {
}
} else {
$colspan = 8;
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
$colspan += 2;
}
print ' '.$langs->trans("None").' ';
@@ -735,12 +735,12 @@ if ($socid > 0) {
print ''.$langs->trans("ReasonDiscount").' ';
print ''.$langs->trans("ConsumedBy").' ';
print ''.$langs->trans("AmountHT").' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.$langs->trans("MulticurrencyAmountHT").' ';
}
print ''.$langs->trans("VATRate").' ';
print ''.$langs->trans("AmountTTC").' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.$langs->trans("MulticurrencyAmountTTC").' ';
}
print ''.$langs->trans("Author").' ';
@@ -808,12 +808,12 @@ if ($socid > 0) {
}
print '';
print ''.price($obj->amount_ht).' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.price($obj->multicurrency_amount_ht).' ';
}
print ''.vatrate($obj->tva_tx.($obj->vat_src_code ? ' ('.$obj->vat_src_code.')' : ''), true).' ';
print ''.price($obj->amount_ttc).' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.price($obj->multicurrency_amount_ttc).' ';
}
print '';
@@ -825,7 +825,7 @@ if ($socid > 0) {
}
} else {
$colspan = 8;
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
$colspan += 2;
}
print ' '.$langs->trans("None").' ';
@@ -896,12 +896,12 @@ if ($socid > 0) {
print ''.$langs->trans("ReasonDiscount").' ';
print ''.$langs->trans("ConsumedBy").' ';
print ''.$langs->trans("AmountHT").' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.$langs->trans("MulticurrencyAmountHT").' ';
}
print ''.$langs->trans("VATRate").' ';
print ''.$langs->trans("AmountTTC").' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.$langs->trans("MulticurrencyAmountTTC").' ';
}
print ''.$langs->trans("Author").' ';
@@ -969,12 +969,12 @@ if ($socid > 0) {
}
print '';
print ''.price($obj->amount_ht).' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.price($obj->multicurrency_amount_ht).' ';
}
print ''.vatrate($obj->tva_tx.($obj->vat_src_code ? ' ('.$obj->vat_src_code.')' : ''), true).' ';
print ''.price($obj->amount_ttc).' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
print ''.price($obj->multicurrency_amount_ttc).' ';
}
print '';
@@ -986,7 +986,7 @@ if ($socid > 0) {
}
} else {
$colspan = 8;
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicompany')) {
$colspan += 2;
}
print ' '.$langs->trans("None").' ';
diff --git a/htdocs/commande/card.php b/htdocs/commande/card.php
index 12e29ac9b2b..d6a4aead2ec 100644
--- a/htdocs/commande/card.php
+++ b/htdocs/commande/card.php
@@ -5,7 +5,7 @@
* Copyright (C) 2005-2015 Regis Houssin
* Copyright (C) 2006 Andre Cianfarani
* Copyright (C) 2010-2013 Juanjo Menent
- * Copyright (C) 2011-2019 Philippe Grand
+ * Copyright (C) 2011-2022 Philippe Grand
* Copyright (C) 2012-2013 Christophe Battarel
* Copyright (C) 2012-2016 Marcos García
* Copyright (C) 2012 Cedric Salvador
@@ -13,7 +13,7 @@
* Copyright (C) 2014 Ferran Marcet
* Copyright (C) 2015 Jean-François Ferry
* Copyright (C) 2018-2021 Frédéric France
- * Copyright (C) 2022 Gauthier VERDOL
+ * Copyright (C) 2022 Gauthier VERDOL
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -30,59 +30,64 @@
*/
/**
- * \file htdocs/commande/card.php
- * \ingroup commande
- * \brief Page to show customer order
+ * \file htdocs/commande/card.php
+ * \ingroup commande
+ * \brief Page to show customer order
*/
require '../main.inc.php';
+require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
+require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formorder.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formmargin.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/modules/commande/modules_commande.php';
-require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
-require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php';
-require_once DOL_DOCUMENT_ROOT.'/core/lib/order.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
-if (!empty($conf->propal->enabled)) {
+require_once DOL_DOCUMENT_ROOT.'/core/lib/order.lib.php';
+
+require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php';
+require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
+
+if (isModEnabled("propal")) {
require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
}
-if (!empty($conf->project->enabled)) {
- require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
- require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
-}
-require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
+if (isModEnabled('project')) {
+ require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
+ require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
+}
if (!empty($conf->variants->enabled)) {
require_once DOL_DOCUMENT_ROOT.'/variants/class/ProductCombination.class.php';
}
+
// Load translation files required by the page
$langs->loadLangs(array('orders', 'sendings', 'companies', 'bills', 'propal', 'deliveries', 'products', 'other'));
+
if (!empty($conf->incoterm->enabled)) {
$langs->load('incoterm');
}
if (!empty($conf->margin->enabled)) {
$langs->load('margins');
}
-if (!empty($conf->productbatch->enabled)) {
- $langs->load("productbatch");
+if (isModEnabled('productbatch')) {
+ $langs->load('productbatch');
}
-$id = (GETPOST('id', 'int') ? GETPOST('id', 'int') : GETPOST('orderid', 'int'));
-$ref = GETPOST('ref', 'alpha');
-$socid = GETPOST('socid', 'int');
-$action = GETPOST('action', 'aZ09');
-$cancel = GETPOST('cancel', 'alpha');
-$confirm = GETPOST('confirm', 'alpha');
-$lineid = GETPOST('lineid', 'int');
-$contactid = GETPOST('contactid', 'int');
-$projectid = GETPOST('projectid', 'int');
-$origin = GETPOST('origin', 'alpha');
-$originid = (GETPOST('originid', 'int') ? GETPOST('originid', 'int') : GETPOST('origin_id', 'int')); // For backward compatibility
-$rank = (GETPOST('rank', 'int') > 0) ? GETPOST('rank', 'int') : -1;
+
+$id = (GETPOST('id', 'int') ? GETPOST('id', 'int') : GETPOST('orderid', 'int'));
+$ref = GETPOST('ref', 'alpha');
+$socid = GETPOST('socid', 'int');
+$action = GETPOST('action', 'aZ09');
+$cancel = GETPOST('cancel', 'alpha');
+$confirm = GETPOST('confirm', 'alpha');
+$lineid = GETPOST('lineid', 'int');
+$contactid = GETPOST('contactid', 'int');
+$projectid = GETPOST('projectid', 'int');
+$origin = GETPOST('origin', 'alpha');
+$originid = (GETPOST('originid', 'int') ? GETPOST('originid', 'int') : GETPOST('origin_id', 'int')); // For backward compatibility
+$rank = (GETPOST('rank', 'int') > 0) ? GETPOST('rank', 'int') : -1;
// PDF
$hidedetails = (GETPOST('hidedetails', 'int') ? GETPOST('hidedetails', 'int') : (!empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DETAILS) ? 1 : 0));
@@ -106,25 +111,27 @@ $extrafields = new ExtraFields($db);
$extrafields->fetch_name_optionals_label($object->table_element);
// Load object
-include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be include, not include_once
+include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be include, not include_once
+
+// Permissions / Rights
+$usercanread = $user->hasRight("commande", "lire");
+$usercancreate = $user->hasRight("commande", "creer");
+$usercandelete = $user->hasRight("commande", "supprimer");
-$usercanread = $user->hasRight("commande", "lire");
-$usercancreate = $user->hasRight("commande", "creer");
-$usercandelete = $user->hasRight("commande", "supprimer");
// Advanced permissions
+$usercanclose = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($usercancreate)) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->hasRight('commande', 'order_advance', 'close')));
+$usercanvalidate = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $usercancreate) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->hasRight('commande', 'order_advance', 'validate')));
+$usercancancel = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $usercancreate) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->hasRight('commande', 'order_advance', 'annuler')));
+$usercansend = (empty($conf->global->MAIN_USE_ADVANCED_PERMS) || $user->hasRight('commande', 'order_advance', 'send'));
+$usercangeneretedoc = (empty($conf->global->MAIN_USE_ADVANCED_PERMS) || $user->hasRight('commande', 'order_advance', 'generetedoc'));
-$usercanclose = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($usercancreate)) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->hasRight('commande', 'order_advance', 'close')));
-$usercanvalidate = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $usercancreate) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->hasRight('commande', 'order_advance', 'validate')));
-$usercancancel = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $usercancreate) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->hasRight('commande', 'order_advance', 'annuler')));
-$usercansend = (empty($conf->global->MAIN_USE_ADVANCED_PERMS) || $user->hasRight('commande', 'order_advance', 'send'));
-$usercangeneretedoc = (empty($conf->global->MAIN_USE_ADVANCED_PERMS) || $user->hasRight('commande', 'order_advance', 'generetedoc'));
-
-$usermustrespectpricemin = ((!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && empty($user->rights->produit->ignore_price_min_advance)) || empty($conf->global->MAIN_USE_ADVANCED_PERMS));
+$usermustrespectpricemin = ((!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && empty($user->rights->produit->ignore_price_min_advance)) || empty($conf->global->MAIN_USE_ADVANCED_PERMS));
$usercancreatepurchaseorder = ($user->hasRight('fournisseur', 'commande', 'creer') || $user->hasRight('supplier_order', 'creer'));
-$permissionnote = $usercancreate; // Used by the include of actions_setnotes.inc.php
-$permissiondellink = $usercancreate; // Used by the include of actions_dellink.inc.php
-$permissiontoadd = $usercancreate; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
+$permissionnote = $usercancreate; // Used by the include of actions_setnotes.inc.php
+$permissiondellink = $usercancreate; // Used by the include of actions_dellink.inc.php
+$permissiontoadd = $usercancreate; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
+
$error = 0;
@@ -166,11 +173,11 @@ if (empty($reshook)) {
$action = '';
}
- include DOL_DOCUMENT_ROOT.'/core/actions_setnotes.inc.php'; // Must be include, not include_once
+ include DOL_DOCUMENT_ROOT.'/core/actions_setnotes.inc.php'; // Must be include, not include_once
- include DOL_DOCUMENT_ROOT.'/core/actions_dellink.inc.php'; // Must be include, not include_once
+ include DOL_DOCUMENT_ROOT.'/core/actions_dellink.inc.php'; // Must be include, not include_once
- include DOL_DOCUMENT_ROOT.'/core/actions_lineupdown.inc.php'; // Must be include, not include_once
+ include DOL_DOCUMENT_ROOT.'/core/actions_lineupdown.inc.php'; // Must be include, not include_once
// Action clone object
if ($action == 'confirm_clone' && $confirm == 'yes' && $usercancreate) {
@@ -220,10 +227,10 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -438,7 +445,7 @@ if (empty($reshook)) {
// Now we create same links to contact than the ones found on origin object
/* Useless, already into the create
- if (! empty($conf->global->MAIN_PROPAGATE_CONTACTS_FROM_ORIGIN))
+ if (!empty($conf->global->MAIN_PROPAGATE_CONTACTS_FROM_ORIGIN))
{
$originforcontact = $object->origin;
$originidforcontact = $object->origin_id;
@@ -583,7 +590,7 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = GETPOST('lang_id', 'alpha');
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -646,22 +653,35 @@ if (empty($reshook)) {
// Set if we used free entry or predefined product
$predef = '';
$product_desc = (GETPOSTISSET('dp_desc') ? GETPOST('dp_desc', 'restricthtml') : '');
- $price_ht = price2num(GETPOST('price_ht'), 'MU', 2);
- $price_ht_devise = price2num(GETPOST('multicurrency_price_ht'), 'CU', 2);
- $price_ttc = price2num(GETPOST('price_ttc'), 'MU', 2);
- $price_ttc_devise = price2num(GETPOST('multicurrency_price_ttc'), 'CU', 2);
- $prod_entry_mode = GETPOST('prod_entry_mode');
+ $price_ht = '';
+ $price_ht_devise = '';
+ $price_ttc = '';
+ $price_ttc_devise = '';
+
+ if (GETPOST('price_ht') !== '') {
+ $price_ht = price2num(GETPOST('price_ht'), 'MU', 2);
+ }
+ if (GETPOST('multicurrency_price_ht') !== '') {
+ $price_ht_devise = price2num(GETPOST('multicurrency_price_ht'), 'CU', 2);
+ }
+ if (GETPOST('price_ttc') !== '') {
+ $price_ttc = price2num(GETPOST('price_ttc'), 'MU', 2);
+ }
+ if (GETPOST('multicurrency_price_ttc') !== '') {
+ $price_ttc_devise = price2num(GETPOST('multicurrency_price_ttc'), 'CU', 2);
+ }
+
+ $prod_entry_mode = GETPOST('prod_entry_mode', 'aZ09');
if ($prod_entry_mode == 'free') {
$idprod = 0;
- $tva_tx = (GETPOST('tva_tx') ? GETPOST('tva_tx') : 0);
+ $tva_tx = (GETPOST('tva_tx', 'alpha') ? price2num(preg_replace('/\s*\(.*\)/', '', GETPOST('tva_tx', 'alpha'))) : 0);
} else {
$idprod = GETPOST('idprod', 'int');
$tva_tx = '';
}
- $qty = price2num(GETPOST('qty'.$predef, 'alpha'), 'MS');
-
+ $qty = price2num(GETPOST('qty'.$predef, 'alpha'), 'MS', 2);
$remise_percent = (GETPOSTISSET('remise_percent'.$predef) ? price2num(GETPOST('remise_percent'.$predef, 'alpha'), '', 2) : 0);
if (empty($remise_percent)) {
$remise_percent = 0;
@@ -686,7 +706,7 @@ if (empty($reshook)) {
setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv('Type')), null, 'errors');
$error++;
}
- if ($prod_entry_mode == 'free' && (empty($idprod) || $idprod < 0) && $price_ht == '' && $price_ht_devise == '') { // Unit price can be 0 but not ''. Also price can be negative for order.
+ if ($prod_entry_mode == 'free' && (empty($idprod) || $idprod < 0) && $price_ht === '' && $price_ht_devise === '' && $price_ttc === '' && $price_ttc_devise === '') { // Unit price can be 0 but not ''. Also price can be negative for order.
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("UnitPriceHT")), null, 'errors');
$error++;
}
@@ -835,13 +855,15 @@ if (empty($reshook)) {
$tmpvat = price2num(preg_replace('/\s*\(.*\)/', '', $tva_tx));
$tmpprodvat = price2num(preg_replace('/\s*\(.*\)/', '', $prod->tva_tx));
- // if price ht is forced (ie: calculated by margin rate and cost price). TODO Why this ?
+ // Set unit price to use
if (!empty($price_ht) || $price_ht === '0') {
$pu_ht = price2num($price_ht, 'MU');
$pu_ttc = price2num($pu_ht * (1 + ($tmpvat / 100)), 'MU');
+ } elseif (!empty($price_ttc) || $price_ttc === '0') {
+ $pu_ttc = price2num($price_ttc, 'MU');
+ $pu_ht = price2num($pu_ttc / (1 + ($tmpvat / 100)), 'MU');
} elseif ($tmpvat != $tmpprodvat) {
- // On reevalue prix selon taux tva car taux tva transaction peut etre different
- // de ceux du produit par defaut (par exemple si pays different entre vendeur et acheteur).
+ // Is this still used ?
if ($price_base_type != 'HT') {
$pu_ht = price2num($pu_ttc / (1 + ($tmpvat / 100)), 'MU');
} else {
@@ -928,14 +950,22 @@ if (empty($reshook)) {
$fk_unit = $prod->fk_unit;
} else {
$pu_ht = price2num($price_ht, 'MU');
- $pu_ttc = price2num(GETPOST('price_ttc'), 'MU');
+ $pu_ttc = price2num($price_ttc, 'MU');
$tva_npr = (preg_match('/\*/', $tva_tx) ? 1 : 0);
$tva_tx = str_replace('*', '', $tva_tx);
+ if (empty($tva_tx)) {
+ $tva_npr = 0;
+ }
$label = (GETPOST('product_label') ? GETPOST('product_label') : '');
$desc = $product_desc;
$type = GETPOST('type');
$fk_unit = GETPOST('units', 'alpha');
$pu_ht_devise = price2num($price_ht_devise, 'MU');
+ $pu_ttc_devise = price2num($price_ttc_devise, 'MU');
+
+ if ($pu_ttc && !$pu_ht) {
+ $price_base_type = 'TTC';
+ }
}
// Margin
@@ -946,13 +976,13 @@ if (empty($reshook)) {
$localtax1_tx = get_localtax($tva_tx, 1, $object->thirdparty);
$localtax2_tx = get_localtax($tva_tx, 2, $object->thirdparty);
- $desc = dol_htmlcleanlastbr($desc);
-
$info_bits = 0;
if ($tva_npr) {
$info_bits |= 0x01;
}
+ $desc = dol_htmlcleanlastbr($desc);
+
if ($usermustrespectpricemin) {
if ($pu_ht && $price_min && ((price2num($pu_ht) * (1 - $remise_percent / 100)) < price2num($price_min))) {
$mesg = $langs->trans("CantBeLessThanMinPrice", price(price2num($price_min, 'MU'), 0, $langs, 0, 0, -1, $conf->currency));
@@ -1035,12 +1065,14 @@ if (empty($reshook)) {
$description = dol_htmlcleanlastbr(GETPOST('product_desc', 'restricthtml'));
$vat_rate = (GETPOST('tva_tx') ? GETPOST('tva_tx', 'alpha') : 0);
$vat_rate = str_replace('*', '', $vat_rate);
+
$pu_ht = price2num(GETPOST('price_ht'), '', 2);
$pu_ttc = price2num(GETPOST('price_ttc'), '', 2);
- $pu_ht_devise = price2num(GETPOST('multicurrency_subprice'), '', 2);
- //$pu_ttc_devise = price2num(GETPOST('multicurrency_subprice_ttc'), '', 2);
- $qty = price2num(GETPOST('qty'), 'MS');
+ $pu_ht_devise = price2num(GETPOST('multicurrency_subprice'), '', 2);
+ $pu_ttc_devise = price2num(GETPOST('multicurrency_subprice_ttc'), '', 2);
+
+ $qty = price2num(GETPOST('qty', 'alpha'), 'MS');
// Define info_bits
$info_bits = 0;
@@ -1135,17 +1167,25 @@ if (empty($reshook)) {
}
}
}
- $result = $object->updateline(GETPOST('lineid', 'int'), $description, $pu_ht, $qty, $remise_percent, $vat_rate, $localtax1_rate, $localtax2_rate, 'HT', $info_bits, $date_start, $date_end, $type, GETPOST('fk_parent_line'), 0, $fournprice, $buyingprice, $label, $special_code, $array_options, GETPOST('units'), $pu_ht_devise);
+
+ $price_base_type = 'HT';
+ $pu = $pu_ht;
+ if (empty($pu) && !empty($pu_ttc)) {
+ $pu = $pu_ttc;
+ $price_base_type = 'TTC';
+ }
+
+ $result = $object->updateline(GETPOST('lineid', 'int'), $description, $pu, $qty, $remise_percent, $vat_rate, $localtax1_rate, $localtax2_rate, $price_base_type, $info_bits, $date_start, $date_end, $type, GETPOST('fk_parent_line'), 0, $fournprice, $buyingprice, $label, $special_code, $array_options, GETPOST('units'), $pu_ht_devise);
if ($result >= 0) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -1220,8 +1260,8 @@ if (empty($reshook)) {
$deposit_percent_from_payment_terms = getDictionaryValue('c_payment_term', 'deposit_percent', $object->cond_reglement_id);
if (
- GETPOST('generate_deposit', 'alpha') == 'on' && ! empty($deposit_percent_from_payment_terms)
- && ! empty($conf->facture->enabled) && ! empty($user->rights->facture->creer)
+ GETPOST('generate_deposit', 'alpha') == 'on' && !empty($deposit_percent_from_payment_terms)
+ && !empty($conf->facture->enabled) && !empty($user->rights->facture->creer)
) {
require_once DOL_DOCUMENT_ROOT . '/compta/facture/class/facture.class.php';
@@ -1310,10 +1350,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -1529,7 +1569,7 @@ $form = new Form($db);
$formfile = new FormFile($db);
$formorder = new FormOrder($db);
$formmargin = new FormMargin($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -1624,7 +1664,7 @@ if ($action == 'create' && $usercancreate) {
$date_delivery = (!empty($objectsrc->date_livraison) ? $objectsrc->date_livraison : '');
}
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
if (!empty($objectsrc->multicurrency_code)) {
$currency_code = $objectsrc->multicurrency_code;
}
@@ -1652,7 +1692,7 @@ if ($action == 'create' && $usercancreate) {
$remise_absolue = 0;
$dateorder = empty($conf->global->MAIN_AUTOFILL_DATE_ORDER) ?-1 : '';
- if (!empty($conf->multicurrency->enabled) && !empty($soc->multicurrency_code)) {
+ if (isModEnabled("multicurrency") && !empty($soc->multicurrency_code)) {
$currency_code = $soc->multicurrency_code;
}
@@ -1783,7 +1823,7 @@ if ($action == 'create' && $usercancreate) {
print ' ';
// Bank Account
- if (!empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_ORDER) && !empty($conf->banque->enabled)) {
+ if (!empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_ORDER) && isModEnabled("banque")) {
print ''.$langs->trans('BankAccount').' ';
print img_picto('', 'bank_account', 'class="pictofixedwidth"').$form->select_comptes($fk_account, 'fk_account', 0, '', 1, '', 0, 'maxwidth200 widthcentpercentminusx', 1);
print ' ';
@@ -1814,7 +1854,7 @@ if ($action == 'create' && $usercancreate) {
// TODO How record was recorded OrderMode (llx_c_input_method)
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
print '';
print ''.$langs->trans("Project").' ';
@@ -1873,7 +1913,7 @@ if ($action == 'create' && $usercancreate) {
print " ";
// Multicurrency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
print '';
print ''.$form->editfieldkey("Currency", 'multicurrency_code', '', $object, 0).' ';
print '';
@@ -1952,7 +1992,7 @@ if ($action == 'create' && $usercancreate) {
print ' '.$langs->trans('AmountTTC').' '.price($objectsrc->total_ttc)." ";
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
print ''.$langs->trans('MulticurrencyAmountHT').' '.price($objectsrc->multicurrency_total_ht).' ';
print ''.$langs->trans('MulticurrencyAmountVAT').' '.price($objectsrc->multicurrency_total_tva)." ";
print ''.$langs->trans('MulticurrencyAmountTTC').' '.price($objectsrc->multicurrency_total_ttc)." ";
@@ -2068,7 +2108,7 @@ if ($action == 'create' && $usercancreate) {
$deposit_percent_from_payment_terms = getDictionaryValue('c_payment_term', 'deposit_percent', $object->cond_reglement_id);
- if (! empty($deposit_percent_from_payment_terms) && ! empty($conf->facture->enabled) && ! empty($user->rights->facture->creer)) {
+ if (!empty($deposit_percent_from_payment_terms) && !empty($conf->facture->enabled) && !empty($user->rights->facture->creer)) {
require_once DOL_DOCUMENT_ROOT . '/compta/facture/class/facture.class.php';
$object->fetchObjectLinked();
@@ -2117,7 +2157,7 @@ if ($action == 'create' && $usercancreate) {
'datenow' => true
);
- if (! empty($conf->global->INVOICE_POINTOFTAX_DATE)) {
+ if (!empty($conf->global->INVOICE_POINTOFTAX_DATE)) {
$formquestion[] = array(
'type' => 'date',
'tdclass' => 'fieldrequired showonlyifgeneratedeposit',
@@ -2287,7 +2327,7 @@ if ($action == 'create' && $usercancreate) {
$morehtmlref .= ' ('.$langs->trans("OtherOrders").' )';
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($usercancreate) {
@@ -2495,7 +2535,7 @@ if ($action == 'create' && $usercancreate) {
print '';
// Multicurrency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
// Multicurrency code
print '';
print '';
@@ -2581,7 +2621,7 @@ if ($action == 'create' && $usercancreate) {
}
// Bank Account
- if (!empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_ORDER) && !empty($conf->banque->enabled)) {
+ if (!empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_ORDER) && isModEnabled("banque")) {
print ' ';
$editenable = $usercancreate;
print $form->editfieldkey("BankAccount", 'bankaccount', '', $object, $editenable);
@@ -2606,7 +2646,7 @@ if ($action == 'create' && $usercancreate) {
print '';
- if (!empty($conf->multicurrency->enabled) && ($object->multicurrency_code != $conf->currency)) {
+ if (isModEnabled("multicurrency") && ($object->multicurrency_code != $conf->currency)) {
// Multicurrency Amount HT
print ''.$form->editfieldkey('MulticurrencyAmountHT', 'multicurrency_total_ht', '', $object, 0).' ';
print ''.price($object->multicurrency_total_ht, '', $langs, 0, -1, -1, (!empty($object->multicurrency_code) ? $object->multicurrency_code : $conf->currency)).' ';
@@ -2678,9 +2718,16 @@ if ($action == 'create' && $usercancreate) {
/*
* Lines
*/
+
+ // Get object lines
$result = $object->getLinesArray();
- print 'id.(($action != 'editline') ? '' : '#line_'.GETPOST('lineid', 'int')).'" method="POST">
+ // Add products/services form
+ //$forceall = 1;
+ global $inputalsopricewithtax;
+ $inputalsopricewithtax = 1;
+
+ print ' id.'" method="POST">
@@ -2758,7 +2805,7 @@ if ($action == 'create' && $usercancreate) {
print dolGetButtonAction('', $langs->trans('Modify'), 'default', $_SERVER["PHP_SELF"].'?action=modif&token='.newToken().'&id='.$object->id, '');
}
// Create event
- /*if ($conf->agenda->enabled && ! empty($conf->global->MAIN_ADD_EVENT_ON_ELEMENT_CARD))
+ /*if ($conf->agenda->enabled && !empty($conf->global->MAIN_ADD_EVENT_ON_ELEMENT_CARD))
{
// Add hidden condition because this is not a
// "workflow" action so should appears somewhere else on
@@ -2768,7 +2815,7 @@ if ($action == 'create' && $usercancreate) {
// Create a purchase order
if (!empty($conf->global->WORKFLOW_CAN_CREATE_PURCHASE_ORDER_FROM_SALE_ORDER)) {
- if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) && $object->statut > Commande::STATUS_DRAFT && $object->statut < Commande::STATUS_CLOSED && $object->getNbOfServicesLines() > 0) {
+ if (((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) && $object->statut > Commande::STATUS_DRAFT && $object->statut < Commande::STATUS_CLOSED && $object->getNbOfServicesLines() > 0) {
if ($usercancreatepurchaseorder) {
print dolGetButtonAction('', $langs->trans('AddPurchaseOrder'), 'default', DOL_URL_ROOT.'/fourn/commande/card.php?action=create&origin='.$object->element.'&originid='.$object->id.'&socid='.$object->socid, '');
}
@@ -2789,7 +2836,7 @@ if ($action == 'create' && $usercancreate) {
}
// Create contract
- if (!empty($conf->contrat->enabled) && ($object->statut == Commande::STATUS_VALIDATED || $object->statut == Commande::STATUS_SHIPMENTONPROCESS || $object->statut == Commande::STATUS_CLOSED)) {
+ if (isModEnabled('contrat') && ($object->statut == Commande::STATUS_VALIDATED || $object->statut == Commande::STATUS_SHIPMENTONPROCESS || $object->statut == Commande::STATUS_CLOSED)) {
$langs->load("contracts");
if ($user->hasRight('contrat', 'creer')) {
diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php
index 9a93e8a5047..436a0a51114 100644
--- a/htdocs/commande/class/commande.class.php
+++ b/htdocs/commande/class/commande.class.php
@@ -31,7 +31,7 @@
/**
* \file htdocs/commande/class/commande.class.php
* \ingroup commande
- * \brief Fichier des classes de commandes
+ * \brief class for orders
*/
include_once DOL_DOCUMENT_ROOT.'/core/class/commonorder.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/commonobjectline.class.php';
@@ -93,12 +93,12 @@ class Commande extends CommonOrder
protected $table_ref_field = 'ref';
/**
- * @var int Thirparty ID
+ * @var int Thirdparty ID
*/
public $socid;
/**
- * @var string Thirparty ref of order
+ * @var string Thirdparty ref of order
*/
public $ref_client;
@@ -314,7 +314,7 @@ class Commande extends CommonOrder
'ref_int' =>array('type'=>'varchar(255)', 'label'=>'RefInt', 'enabled'=>1, 'visible'=>0, 'position'=>27), // deprecated
'ref_client' =>array('type'=>'varchar(255)', 'label'=>'RefCustomer', 'enabled'=>1, 'visible'=>-1, 'position'=>28),
'fk_soc' =>array('type'=>'integer:Societe:societe/class/societe.class.php', 'label'=>'ThirdParty', 'enabled'=>'$conf->societe->enabled', 'visible'=>-1, 'notnull'=>1, 'position'=>20),
- 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Project', 'enabled'=>'$conf->project->enabled', 'visible'=>-1, 'position'=>25),
+ 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Project', 'enabled'=>"isModEnabled('project')", 'visible'=>-1, 'position'=>25),
'date_commande' =>array('type'=>'date', 'label'=>'Date', 'enabled'=>1, 'visible'=>1, 'position'=>60),
'date_valid' =>array('type'=>'datetime', 'label'=>'DateValidation', 'enabled'=>1, 'visible'=>-1, 'position'=>62),
'date_cloture' =>array('type'=>'datetime', 'label'=>'DateClosing', 'enabled'=>1, 'visible'=>-1, 'position'=>65),
@@ -348,12 +348,12 @@ class Commande extends CommonOrder
'extraparams' =>array('type'=>'varchar(255)', 'label'=>'Extraparams', 'enabled'=>1, 'visible'=>-1, 'position'=>225),
'fk_incoterms' =>array('type'=>'integer', 'label'=>'IncotermCode', 'enabled'=>'$conf->incoterm->enabled', 'visible'=>-1, 'position'=>230),
'location_incoterms' =>array('type'=>'varchar(255)', 'label'=>'IncotermLabel', 'enabled'=>'$conf->incoterm->enabled', 'visible'=>-1, 'position'=>235),
- 'fk_multicurrency' =>array('type'=>'integer', 'label'=>'Fk multicurrency', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>240),
- 'multicurrency_code' =>array('type'=>'varchar(255)', 'label'=>'MulticurrencyCurrency', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>245),
- 'multicurrency_tx' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyRate', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>250, 'isameasure'=>1),
- 'multicurrency_total_ht' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountHT', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>255, 'isameasure'=>1),
- 'multicurrency_total_tva' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountVAT', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>260, 'isameasure'=>1),
- 'multicurrency_total_ttc' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountTTC', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>265, 'isameasure'=>1),
+ 'fk_multicurrency' =>array('type'=>'integer', 'label'=>'Fk multicurrency', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>240),
+ 'multicurrency_code' =>array('type'=>'varchar(255)', 'label'=>'MulticurrencyCurrency', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>245),
+ 'multicurrency_tx' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyRate', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>250, 'isameasure'=>1),
+ 'multicurrency_total_ht' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountHT', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>255, 'isameasure'=>1),
+ 'multicurrency_total_tva' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountVAT', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>260, 'isameasure'=>1),
+ 'multicurrency_total_ttc' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountTTC', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>265, 'isameasure'=>1),
'last_main_doc' =>array('type'=>'varchar(255)', 'label'=>'LastMainDoc', 'enabled'=>1, 'visible'=>-1, 'position'=>270),
'module_source' =>array('type'=>'varchar(32)', 'label'=>'POSModule', 'enabled'=>1, 'visible'=>-1, 'position'=>275),
'pos_source' =>array('type'=>'varchar(32)', 'label'=>'POSTerminal', 'enabled'=>1, 'visible'=>-1, 'position'=>280),
@@ -967,7 +967,7 @@ class Commande extends CommonOrder
$sql .= ", ".($this->ref_int ? "'".$this->db->escape($this->ref_int)."'" : "null");
$sql .= ", '".$this->db->escape($this->model_pdf)."'";
$sql .= ", ".($this->cond_reglement_id > 0 ? ((int) $this->cond_reglement_id) : "null");
- $sql .= ", ".(! empty($this->deposit_percent) ? "'".$this->db->escape($this->deposit_percent)."'" : "null");
+ $sql .= ", ".(!empty($this->deposit_percent) ? "'".$this->db->escape($this->deposit_percent)."'" : "null");
$sql .= ", ".($this->mode_reglement_id > 0 ? ((int) $this->mode_reglement_id) : "null");
$sql .= ", ".($this->fk_account > 0 ? ((int) $this->fk_account) : 'NULL');
$sql .= ", ".($this->availability_id > 0 ? ((int) $this->availability_id) : "null");
@@ -1782,7 +1782,7 @@ class Commande extends CommonOrder
$this->lines[] = $line;
/** POUR AJOUTER AUTOMATIQUEMENT LES SOUSPRODUITS a LA COMMANDE
- if (! empty($conf->global->PRODUIT_SOUSPRODUITS))
+ if (!empty($conf->global->PRODUIT_SOUSPRODUITS))
{
$prod = new Product($this->db);
$prod->fetch($idproduct);
@@ -3355,7 +3355,7 @@ class Commande extends CommonOrder
$sql .= " fk_user_valid=".((isset($this->user_valid) && $this->user_valid > 0) ? $this->user_valid : "null").",";
$sql .= " fk_projet=".(isset($this->fk_project) ? $this->fk_project : "null").",";
$sql .= " fk_cond_reglement=".(isset($this->cond_reglement_id) ? $this->cond_reglement_id : "null").",";
- $sql .= " deposit_percent=".(! empty($this->deposit_percent) ? strval($this->deposit_percent) : "null").",";
+ $sql .= " deposit_percent=".(!empty($this->deposit_percent) ? strval($this->deposit_percent) : "null").",";
$sql .= " fk_mode_reglement=".(isset($this->mode_reglement_id) ? $this->mode_reglement_id : "null").",";
$sql .= " date_livraison=".(strval($this->delivery_date) != '' ? "'".$this->db->idate($this->delivery_date)."'" : 'null').",";
$sql .= " fk_shipping_method=".(isset($this->shipping_method_id) ? $this->shipping_method_id : "null").",";
@@ -3710,7 +3710,7 @@ class Commande extends CommonOrder
$result = '';
- if (!empty($conf->expedition->enabled) && ($option == '1' || $option == '2')) {
+ if (isModEnabled("expedition") && ($option == '1' || $option == '2')) {
$url = DOL_URL_ROOT.'/expedition/shipment.php?id='.$this->id;
} else {
$url = DOL_URL_ROOT.'/commande/card.php?id='.$this->id;
diff --git a/htdocs/commande/contact.php b/htdocs/commande/contact.php
index c9ef518d1d0..1be1384df30 100644
--- a/htdocs/commande/contact.php
+++ b/htdocs/commande/contact.php
@@ -2,7 +2,7 @@
/* Copyright (C) 2005 Patrick Rouillon
* Copyright (C) 2005-2011 Laurent Destailleur
* Copyright (C) 2005-2012 Regis Houssin
- * Copyright (C) 2011-2015 Philippe Grand
+ * Copyright (C) 2011-2022 Philippe Grand
* Copyright (C) 2021 Frédéric France
*
* This program is free software; you can redistribute it and/or modify
@@ -131,7 +131,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->commande->creer) {
diff --git a/htdocs/commande/document.php b/htdocs/commande/document.php
index af04389b8d9..501a803b697 100644
--- a/htdocs/commande/document.php
+++ b/htdocs/commande/document.php
@@ -32,7 +32,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -130,7 +130,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->commande->creer) {
diff --git a/htdocs/commande/index.php b/htdocs/commande/index.php
index 03644fe5690..9ee103911f7 100644
--- a/htdocs/commande/index.php
+++ b/htdocs/commande/index.php
@@ -25,6 +25,8 @@
* \brief Home page of customer order module
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/notify.class.php';
@@ -32,6 +34,11 @@ require_once DOL_DOCUMENT_ROOT.'/societe/class/client.class.php';
require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/order.lib.php';
+
+// Load translation files required by the page
+$langs->loadLangs(array('orders', 'bills'));
+
+
if (!$user->rights->commande->lire) {
accessforbidden();
}
@@ -41,8 +48,6 @@ $hookmanager = new HookManager($db);
// Initialize technical object to manage hooks. Note that conf->hooks_modules contains array
$hookmanager->initHooks(array('ordersindex'));
-// Load translation files required by the page
-$langs->loadLangs(array('orders', 'bills'));
// Security check
$socid = GETPOST('socid', 'int');
@@ -87,7 +92,7 @@ if ($tmp) {
/*
* Draft orders
*/
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
$sql = "SELECT c.rowid, c.ref, s.nom as name, s.rowid as socid";
$sql .= ", s.client";
$sql .= ", s.code_client";
@@ -239,7 +244,7 @@ $max = 10;
/*
* Orders to process
*/
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
$sql = "SELECT c.rowid, c.entity, c.ref, c.fk_statut, c.facture, c.date_commande as date, s.nom as name, s.rowid as socid";
$sql .= ", s.client";
$sql .= ", s.code_client";
@@ -328,7 +333,7 @@ if (!empty($conf->commande->enabled)) {
/*
* Orders that are in process
*/
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
$sql = "SELECT c.rowid, c.entity, c.ref, c.fk_statut, c.facture, c.date_commande as date, s.nom as name, s.rowid as socid";
$sql .= ", s.client";
$sql .= ", s.code_client";
diff --git a/htdocs/commande/info.php b/htdocs/commande/info.php
index 93b80b80f1c..396052082c5 100644
--- a/htdocs/commande/info.php
+++ b/htdocs/commande/info.php
@@ -27,7 +27,7 @@ require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/order.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -83,7 +83,7 @@ $morehtmlref .= $form->editfieldval("RefCustomer", 'ref_client', $object->ref_cl
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->commande->creer) {
diff --git a/htdocs/commande/list.php b/htdocs/commande/list.php
index dbb99d0f993..6984255b91c 100644
--- a/htdocs/commande/list.php
+++ b/htdocs/commande/list.php
@@ -33,6 +33,8 @@
* \brief Page to list orders
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
@@ -49,8 +51,9 @@ require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
// Load translation files required by the page
-$langs->loadLangs(array("orders", 'sendings', 'deliveries', 'companies', 'compta', 'bills', 'stocks', 'products'));
+$langs->loadLangs(array('orders', 'sendings', 'deliveries', 'companies', 'compta', 'bills', 'stocks', 'products'));
+// Get Parameters
$action = GETPOST('action', 'aZ09');
$massaction = GETPOST('massaction', 'alpha');
$show_files = GETPOST('show_files', 'int');
@@ -58,6 +61,7 @@ $confirm = GETPOST('confirm', 'alpha');
$toselect = GETPOST('toselect', 'array');
$contextpage = GETPOST('contextpage', 'aZ') ?GETPOST('contextpage', 'aZ') : 'orderlist';
+// Search Parameters
$search_datecloture_start = GETPOST('search_datecloture_start', 'int');
if (empty($search_datecloture_start)) {
$search_datecloture_start = dol_mktime(0, 0, 0, GETPOST('search_datecloture_startmonth', 'int'), GETPOST('search_datecloture_startday', 'int'), GETPOST('search_datecloture_startyear', 'int'));
@@ -70,6 +74,7 @@ $search_dateorder_start = dol_mktime(0, 0, 0, GETPOST('search_dateorder_start_mo
$search_dateorder_end = dol_mktime(23, 59, 59, GETPOST('search_dateorder_end_month', 'int'), GETPOST('search_dateorder_end_day', 'int'), GETPOST('search_dateorder_end_year', 'int'));
$search_datedelivery_start = dol_mktime(0, 0, 0, GETPOST('search_datedelivery_start_month', 'int'), GETPOST('search_datedelivery_start_day', 'int'), GETPOST('search_datedelivery_start_year', 'int'));
$search_datedelivery_end = dol_mktime(23, 59, 59, GETPOST('search_datedelivery_end_month', 'int'), GETPOST('search_datedelivery_end_day', 'int'), GETPOST('search_datedelivery_end_year', 'int'));
+
$search_product_category = GETPOST('search_product_category', 'int');
$search_ref = GETPOST('search_ref', 'alpha') != '' ?GETPOST('search_ref', 'alpha') : GETPOST('sref', 'alpha');
$search_ref_customer = GETPOST('search_ref_customer', 'alpha');
@@ -77,22 +82,25 @@ $search_company = GETPOST('search_company', 'alpha');
$search_company_alias = GETPOST('search_company_alias', 'alpha');
$search_town = GETPOST('search_town', 'alpha');
$search_zip = GETPOST('search_zip', 'alpha');
-$search_state = GETPOST("search_state", 'alpha');
-$search_country = GETPOST("search_country", 'int');
-$search_type_thirdparty = GETPOST("search_type_thirdparty", 'int');
+$search_state = GETPOST('search_state', 'alpha');
+$search_country = GETPOST('search_country', 'int');
+$search_type_thirdparty = GETPOST('search_type_thirdparty', 'int');
$sall = trim((GETPOST('search_all', 'alphanohtml') != '') ? GETPOST('search_all', 'alphanohtml') : GETPOST('sall', 'alphanohtml'));
$socid = GETPOST('socid', 'int');
$search_user = GETPOST('search_user', 'int');
$search_sale = GETPOST('search_sale', 'int');
-$search_total_ht = GETPOST('search_total_ht', 'alpha');
+
+$search_total_ht = GETPOST('search_total_ht', 'alpha');
$search_total_vat = GETPOST('search_total_vat', 'alpha');
$search_total_ttc = GETPOST('search_total_ttc', 'alpha');
$search_warehouse = GETPOST('search_warehouse', 'int');
+
$search_multicurrency_code = GETPOST('search_multicurrency_code', 'alpha');
$search_multicurrency_tx = GETPOST('search_multicurrency_tx', 'alpha');
-$search_multicurrency_montant_ht = GETPOST('search_multicurrency_montant_ht', 'alpha');
+$search_multicurrency_montant_ht = GETPOST('search_multicurrency_montant_ht', 'alpha');
$search_multicurrency_montant_vat = GETPOST('search_multicurrency_montant_vat', 'alpha');
$search_multicurrency_montant_ttc = GETPOST('search_multicurrency_montant_ttc', 'alpha');
+
$search_login = GETPOST('search_login', 'alpha');
$search_categ_cus = GETPOST("search_categ_cus", 'int');
$optioncss = GETPOST('optioncss', 'alpha');
@@ -103,10 +111,11 @@ $search_remove_btn = GETPOST('button_removefilter', 'alpha');
$search_project_ref = GETPOST('search_project_ref', 'alpha');
$search_project = GETPOST('search_project', 'alpha');
$search_shippable = GETPOST('search_shippable', 'aZ09');
-$search_fk_cond_reglement = GETPOST("search_fk_cond_reglement", 'int');
-$search_fk_shipping_method = GETPOST("search_fk_shipping_method", 'int');
-$search_fk_mode_reglement = GETPOST("search_fk_mode_reglement", 'int');
-$search_fk_input_reason = GETPOST("search_fk_input_reason", 'int');
+
+$search_fk_cond_reglement = GETPOST('search_fk_cond_reglement', 'int');
+$search_fk_shipping_method = GETPOST('search_fk_shipping_method', 'int');
+$search_fk_mode_reglement = GETPOST('search_fk_mode_reglement', 'int');
+$search_fk_input_reason = GETPOST('search_fk_input_reason', 'int');
// Security check
$id = (GETPOST('orderid') ?GETPOST('orderid', 'int') : GETPOST('id', 'int'));
@@ -165,8 +174,8 @@ $checkedtypetiers = 0;
$arrayfields = array(
'c.ref'=>array('label'=>"Ref", 'checked'=>1, 'position'=>5),
'c.ref_client'=>array('label'=>"RefCustomerOrder", 'checked'=>-1, 'position'=>10),
- 'p.ref'=>array('label'=>"ProjectRef", 'checked'=>-1, 'enabled'=>(empty($conf->project->enabled) ? 0 : 1), 'position'=>20),
- 'p.title'=>array('label'=>"ProjectLabel", 'checked'=>0, 'enabled'=>(empty($conf->project->enabled) ? 0 : 1), 'position'=>25),
+ 'p.ref'=>array('label'=>"ProjectRef", 'checked'=>-1, 'enabled'=>(!isModEnabled('project') ? 0 : 1), 'position'=>20),
+ 'p.title'=>array('label'=>"ProjectLabel", 'checked'=>0, 'enabled'=>(!isModEnabled('project') ? 0 : 1), 'position'=>25),
's.nom'=>array('label'=>"ThirdParty", 'checked'=>1, 'position'=>30),
's.name_alias'=>array('label'=>"AliasNameShort", 'checked'=>-1, 'position'=>31),
's.town'=>array('label'=>"Town", 'checked'=>-1, 'position'=>35),
@@ -176,18 +185,18 @@ $arrayfields = array(
'typent.code'=>array('label'=>"ThirdPartyType", 'checked'=>$checkedtypetiers, 'position'=>55),
'c.date_commande'=>array('label'=>"OrderDateShort", 'checked'=>1, 'position'=>60),
'c.date_delivery'=>array('label'=>"DateDeliveryPlanned", 'checked'=>1, 'enabled'=>empty($conf->global->ORDER_DISABLE_DELIVERY_DATE), 'position'=>65),
- 'c.fk_shipping_method'=>array('label'=>"SendingMethod", 'checked'=>-1, 'position'=>66 , 'enabled'=>!empty($conf->expedition->enabled)),
+ 'c.fk_shipping_method'=>array('label'=>"SendingMethod", 'checked'=>-1, 'position'=>66 , 'enabled'=>isModEnabled("expedition")),
'c.fk_cond_reglement'=>array('label'=>"PaymentConditionsShort", 'checked'=>-1, 'position'=>67),
'c.fk_mode_reglement'=>array('label'=>"PaymentMode", 'checked'=>-1, 'position'=>68),
'c.fk_input_reason'=>array('label'=>"Channel", 'checked'=>-1, 'position'=>69),
'c.total_ht'=>array('label'=>"AmountHT", 'checked'=>1, 'position'=>75),
'c.total_vat'=>array('label'=>"AmountVAT", 'checked'=>0, 'position'=>80),
'c.total_ttc'=>array('label'=>"AmountTTC", 'checked'=>0, 'position'=>85),
- 'c.multicurrency_code'=>array('label'=>'Currency', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1), 'position'=>90),
- 'c.multicurrency_tx'=>array('label'=>'CurrencyRate', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1), 'position'=>95),
- 'c.multicurrency_total_ht'=>array('label'=>'MulticurrencyAmountHT', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1), 'position'=>100),
- 'c.multicurrency_total_vat'=>array('label'=>'MulticurrencyAmountVAT', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1), 'position'=>105),
- 'c.multicurrency_total_ttc'=>array('label'=>'MulticurrencyAmountTTC', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1), 'position'=>110),
+ 'c.multicurrency_code'=>array('label'=>'Currency', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1), 'position'=>90),
+ 'c.multicurrency_tx'=>array('label'=>'CurrencyRate', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1), 'position'=>95),
+ 'c.multicurrency_total_ht'=>array('label'=>'MulticurrencyAmountHT', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1), 'position'=>100),
+ 'c.multicurrency_total_vat'=>array('label'=>'MulticurrencyAmountVAT', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1), 'position'=>105),
+ 'c.multicurrency_total_ttc'=>array('label'=>'MulticurrencyAmountTTC', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1), 'position'=>110),
'u.login'=>array('label'=>"Author", 'checked'=>1, 'position'=>115),
'sale_representative'=>array('label'=>"SaleRepresentativesOfThirdParty", 'checked'=>0, 'position'=>116),
'total_pa' => array('label' => (getDolGlobalString('MARGIN_TYPE') == '1' ? 'BuyingPrice' : 'CostPrice'), 'checked' => 0, 'position' => 300, 'enabled' => (empty($conf->margin->enabled) || !$user->rights->margins->liretous ? 0 : 1)),
@@ -199,11 +208,12 @@ $arrayfields = array(
'c.date_cloture'=>array('label'=>"DateClosing", 'checked'=>0, 'position'=>130),
'c.note_public'=>array('label'=>'NotePublic', 'checked'=>0, 'enabled'=>(empty($conf->global->MAIN_LIST_ALLOW_PUBLIC_NOTES)), 'position'=>135),
'c.note_private'=>array('label'=>'NotePrivate', 'checked'=>0, 'enabled'=>(empty($conf->global->MAIN_LIST_ALLOW_PRIVATE_NOTES)), 'position'=>140),
- 'shippable'=>array('label'=>"Shippable", 'checked'=>1,'enabled'=>(!empty($conf->expedition->enabled)), 'position'=>990),
+ 'shippable'=>array('label'=>"Shippable", 'checked'=>1,'enabled'=>(isModEnabled("expedition")), 'position'=>990),
'c.facture'=>array('label'=>"Billed", 'checked'=>1, 'enabled'=>(empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT)), 'position'=>995),
'c.import_key' =>array('type'=>'varchar(14)', 'label'=>'ImportId', 'enabled'=>1, 'visible'=>-2, 'position'=>999),
'c.fk_statut'=>array('label'=>"Status", 'checked'=>1, 'position'=>1000)
);
+
// Extra fields
include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_array_fields.tpl.php';
@@ -719,6 +729,7 @@ if ($action == 'shipped' && $permissiontoadd) {
}
}
}
+
// Closed records
if (!$error && $massaction === 'setbilled' && $permissiontoclose) {
$db->begin();
@@ -755,10 +766,12 @@ if (!$error && $massaction === 'setbilled' && $permissiontoclose) {
}
}
+
/*
* View
*/
+
$now = dol_now();
$form = new Form($db);
@@ -774,7 +787,6 @@ $projectstatic = new Project($db);
$title = $langs->trans("Orders");
$help_url = "EN:Module_Customers_Orders|FR:Module_Commandes_Clients|ES:Módulo_Pedidos_de_clientes";
-// llxHeader('',$title,$help_url);
$sql = 'SELECT';
if ($sall || $search_product_category > 0 || $search_user > 0) {
@@ -795,12 +807,14 @@ $sql .= ' c.fk_input_reason, c.import_key';
if (($search_categ_cus > 0) || ($search_categ_cus == -2)) {
$sql .= ", cc.fk_categorie, cc.fk_soc";
}
+
// Add fields from extrafields
if (!empty($extrafields->attributes[$object->table_element]['label'])) {
foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) {
$sql .= ($extrafields->attributes[$object->table_element]['type'][$key] != 'separate' ? ", ef.".$key." as options_".$key : '');
}
}
+
// Add fields from hooks
$parameters = array();
$reshook = $hookmanager->executeHooks('printFieldListSelect', $parameters); // Note that $action and $object may have been modified by hook
@@ -1217,7 +1231,7 @@ if ($resql) {
if ($permissiontocancel) {
$arrayofmassactions['cancelorders'] = img_picto('', 'close_title', 'class="pictofixedwidth"').$langs->trans("Cancel");
}
- if (!empty($conf->invoice->enabled) && $user->rights->facture->creer) {
+ if (isModEnabled('facture') && $user->rights->facture->creer) {
$arrayofmassactions['createbills'] = img_picto('', 'bill', 'class="pictofixedwidth"').$langs->trans("CreateInvoiceForThisCustomer");
}
if ($permissiontoclose) {
@@ -1323,7 +1337,7 @@ if ($resql) {
$moreforfilter = '';
- // If the user can view prospects other than his'
+ // If the user can view prospects? sales other than his own
if ($user->rights->user->user->lire) {
$langs->load("commercial");
$moreforfilter .= '';
@@ -1338,8 +1352,9 @@ if ($resql) {
$moreforfilter .= img_picto($tmptitle, 'user', 'class="pictofixedwidth"').$form->select_dolusers($search_user, 'search_user', $tmptitle, '', 0, '', '', 0, 0, 0, '', 0, '', 'maxwidth250 widthcentpercentminusx');
$moreforfilter .= '
';
}
- // If the user can view prospects other than his'
- if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire && ($user->rights->produit->lire || $user->rights->service->lire)) {
+
+ // If the user can view other products/services than his own
+ if (isModEnabled('categorie') && $user->rights->categorie->lire && ($user->rights->produit->lire || $user->rights->service->lire)) {
include_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
$moreforfilter .= '';
$tmptitle = $langs->trans('IncludingProductWithTag');
@@ -1347,13 +1362,15 @@ if ($resql) {
$moreforfilter .= img_picto($tmptitle, 'category', 'class="pictofixedwidth"').$form->selectarray('search_product_category', $cate_arbo, $search_product_category, $tmptitle, 0, 0, '', 0, 0, 0, 0, 'maxwidth300 widthcentpercentminusx', 1);
$moreforfilter .= '
';
}
- if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire) {
+ // If Categories are enabled & user has rights to see
+ if (isModEnabled('categorie') && $user->rights->categorie->lire) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
$moreforfilter .= '';
$tmptitle = $langs->trans('CustomersProspectsCategoriesShort');
$moreforfilter .= img_picto($tmptitle, 'category', 'class="pictofixedwidth"').$formother->select_categories('customer', $search_categ_cus, 'search_categ_cus', 1, $tmptitle, 'maxwidth300 widthcentpercentminusx');
$moreforfilter .= '
';
}
+ // If Stock is enabled
if (!empty($conf->stock->enabled) && !empty($conf->global->WAREHOUSE_ASK_WAREHOUSE_DURING_ORDER)) {
require_once DOL_DOCUMENT_ROOT.'/product/class/html.formproduct.class.php';
$formproduct = new FormProduct($db);
@@ -1505,60 +1522,61 @@ if ($resql) {
$form->selectInputReason($search_fk_input_reason, 'search_fk_input_reason', '', 1, '', 1);
print '';
}
+ // Amount HT / net
if (!empty($arrayfields['c.total_ht']['checked'])) {
- // Amount
print '';
print ' ';
print ' ';
}
+ // Amount of VAT
if (!empty($arrayfields['c.total_vat']['checked'])) {
- // Amount
print '';
print ' ';
print ' ';
}
+ // Total Amount (TTC / gross)
if (!empty($arrayfields['c.total_ttc']['checked'])) {
- // Amount
print '';
print ' ';
print ' ';
}
+ // Currency
if (!empty($arrayfields['c.multicurrency_code']['checked'])) {
- // Currency
print '';
print $form->selectMultiCurrency($search_multicurrency_code, 'search_multicurrency_code', 1);
print ' ';
}
+ // Currency rate
if (!empty($arrayfields['c.multicurrency_tx']['checked'])) {
- // Currency rate
print '';
print ' ';
print ' ';
}
+ // Amount HT/net in foreign currency
if (!empty($arrayfields['c.multicurrency_total_ht']['checked'])) {
- // Amount
print '';
print ' ';
print ' ';
}
+ // VAT in foreign currency
if (!empty($arrayfields['c.multicurrency_total_vat']['checked'])) {
- // Amount VAT
print '';
print ' ';
print ' ';
}
+ // Amount/Total (TTC / gross) in foreign currency
if (!empty($arrayfields['c.multicurrency_total_ttc']['checked'])) {
- // Amount
print '';
print ' ';
print ' ';
}
+ // Author
if (!empty($arrayfields['u.login']['checked'])) {
- // Author
print '';
print ' ';
print ' ';
}
+ // Sales Representative
if (!empty($arrayfields['sale_representative']['checked'])) {
print ' ';
}
@@ -1578,12 +1596,15 @@ if ($resql) {
print '';
print ' ';
}
+
// Extra fields
include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_search_input.tpl.php';
+
// Fields from hook
$parameters = array('arrayfields'=>$arrayfields);
$reshook = $hookmanager->executeHooks('printFieldListOption', $parameters); // Note that $action and $object may have been modified by hook
print $hookmanager->resPrint;
+
// Date creation
if (!empty($arrayfields['c.datec']['checked'])) {
print '';
@@ -1771,8 +1792,10 @@ if ($resql) {
),
'pos' => array(),
);
+
// Extra fields
include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_search_title.tpl.php';
+
// Hook fields
$parameters = array(
'arrayfields' => $arrayfields,
@@ -1972,6 +1995,7 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
+
// Alias name
if (!empty($arrayfields['s.name_alias']['checked'])) {
print ' ';
@@ -1981,6 +2005,7 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
+
// Town
if (!empty($arrayfields['s.town']['checked'])) {
print ' ';
@@ -1990,6 +2015,7 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
+
// Zip
if (!empty($arrayfields['s.zip']['checked'])) {
print ' ';
@@ -1999,6 +2025,7 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
+
// State
if (!empty($arrayfields['state.nom']['checked'])) {
print " ".$obj->state_name." \n";
@@ -2006,6 +2033,7 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
+
// Country
if (!empty($arrayfields['country.code_iso']['checked'])) {
print '';
@@ -2016,6 +2044,7 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
+
// Type ent
if (!empty($arrayfields['typent.code']['checked'])) {
print ' ';
@@ -2042,6 +2071,7 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
+
// Plannned date of delivery
if (!empty($arrayfields['c.date_delivery']['checked'])) {
print ' ';
@@ -2051,6 +2081,7 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
+
// Shipping Method
if (!empty($arrayfields['c.fk_shipping_method']['checked'])) {
print ' ';
@@ -2060,6 +2091,7 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
+
// Payment terms
if (!empty($arrayfields['c.fk_cond_reglement']['checked'])) {
print ' ';
@@ -2069,6 +2101,7 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
+
// Payment mode
if (!empty($arrayfields['c.fk_mode_reglement']['checked'])) {
print ' ';
@@ -2078,6 +2111,7 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
+
// Channel
if (!empty($arrayfields['c.fk_input_reason']['checked'])) {
print ' ';
@@ -2087,7 +2121,8 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
- // Amount HT
+
+ // Amount HT/net
if (!empty($arrayfields['c.total_ht']['checked'])) {
print ' '.price($obj->total_ht)." \n";
if (!$i) {
@@ -2102,6 +2137,7 @@ if ($resql) {
$totalarray['val']['c.total_ht'] = $obj->total_ht;
}
}
+
// Amount VAT
if (!empty($arrayfields['c.total_vat']['checked'])) {
print ''.price($obj->total_tva)." \n";
@@ -2113,7 +2149,8 @@ if ($resql) {
}
$totalarray['val']['c.total_tva'] += $obj->total_tva;
}
- // Amount TTC
+
+ // Amount TTC / gross
if (!empty($arrayfields['c.total_ttc']['checked'])) {
print ''.price($obj->total_ttc)." \n";
if (!$i) {
@@ -2142,21 +2179,22 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
- // Amount HT
+
+ // Amount HT/net in foreign currency
if (!empty($arrayfields['c.multicurrency_total_ht']['checked'])) {
print ''.price($obj->multicurrency_total_ht)." \n";
if (!$i) {
$totalarray['nbfield']++;
}
}
- // Amount VAT
+ // Amount VAT in foreign currency
if (!empty($arrayfields['c.multicurrency_total_vat']['checked'])) {
print ''.price($obj->multicurrency_total_vat)." \n";
if (!$i) {
$totalarray['nbfield']++;
}
}
- // Amount TTC
+ // Amount TTC / gross in foreign currency
if (!empty($arrayfields['c.multicurrency_total_ttc']['checked'])) {
print ''.price($obj->multicurrency_total_ttc)." \n";
if (!$i) {
@@ -2192,8 +2230,8 @@ if ($resql) {
}
}
+ // Sales representatives
if (!empty($arrayfields['sale_representative']['checked'])) {
- // Sales representatives
print '';
if ($obj->socid > 0) {
$listsalesrepresentatives = $companystatic->getSalesRepresentatives($user);
@@ -2246,6 +2284,7 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
+
// Total margin
if (!empty($arrayfields['total_margin']['checked'])) {
print ' '.price($marginInfo['total_margin']).' ';
@@ -2257,6 +2296,7 @@ if ($resql) {
}
$totalarray['val']['total_margin'] += $marginInfo['total_margin'];
}
+
// Total margin rate
if (!empty($arrayfields['total_margin_rate']['checked'])) {
print ''.(($marginInfo['total_margin_rate'] == '') ? '' : price($marginInfo['total_margin_rate'], null, null, null, null, 2).'%').' ';
@@ -2264,6 +2304,7 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
+
// Total mark rate
if (!empty($arrayfields['total_mark_rate']['checked'])) {
print ''.(($marginInfo['total_mark_rate'] == '') ? '' : price($marginInfo['total_mark_rate'], null, null, null, null, 2).'%').' ';
@@ -2385,7 +2426,7 @@ if ($resql) {
$stock_order = 0;
$stock_order_supplier = 0;
if (!empty($conf->global->STOCK_CALCULATE_ON_SHIPMENT) || !empty($conf->global->STOCK_CALCULATE_ON_SHIPMENT_CLOSE)) { // What about other options ?
- if (!empty($conf->commande->enabled)) {
+ if (isModEnabled('commande')) {
if (empty($productstat_cache[$generic_commande->lines[$lig]->fk_product]['stats_order_customer'])) {
$generic_product->load_stats_commande(0, '1,2');
$productstat_cache[$generic_commande->lines[$lig]->fk_product]['stats_order_customer'] = $generic_product->stats_commande['qty'];
@@ -2394,7 +2435,7 @@ if ($resql) {
}
$stock_order = $generic_product->stats_commande['qty'];
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) {
if (empty($productstat_cache[$generic_commande->lines[$lig]->fk_product]['stats_order_supplier'])) {
$generic_product->load_stats_commande_fournisseur(0, '3');
$productstat_cache[$generic_commande->lines[$lig]->fk_product]['stats_order_supplier'] = $generic_product->stats_commande_fournisseur['qty'];
@@ -2415,7 +2456,7 @@ if ($resql) {
} else {
$text_info .= ''.$langs->trans('Available').' : '.$text_stock_reel.' ';
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) {
$text_info .= ' '.$langs->trans('SupplierOrder').' : '.$stock_order_supplier;
}
$text_info .= ($reliquat != $generic_commande->lines[$lig]->qty ? ' ('.$langs->trans("QtyInOtherShipments").' '.($generic_commande->lines[$lig]->qty - $reliquat).') ' : '');
@@ -2452,6 +2493,7 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
+
// Import key
if (!empty($arrayfields['c.import_key']['checked'])) {
print ''.$obj->import_key.' ';
@@ -2459,6 +2501,7 @@ if ($resql) {
$totalarray['nbfield']++;
}
}
+
// Status
if (!empty($arrayfields['c.fk_statut']['checked'])) {
print ''.$generic_commande->LibStatut($obj->fk_statut, $obj->billed, 5, 1).' ';
diff --git a/htdocs/commande/note.php b/htdocs/commande/note.php
index 934299377e5..2082e356797 100644
--- a/htdocs/commande/note.php
+++ b/htdocs/commande/note.php
@@ -28,7 +28,7 @@
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/order.lib.php';
require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -102,7 +102,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->commande->creer) {
diff --git a/htdocs/compta/accounting-files.php b/htdocs/compta/accounting-files.php
index ab8175c4d38..4e7ab4802b7 100644
--- a/htdocs/compta/accounting-files.php
+++ b/htdocs/compta/accounting-files.php
@@ -1,9 +1,10 @@
- * Copyright (C) 2004-2019 Laurent Destailleur
- * Copyright (C) 2017 Pierre-Henry Favre
- * Copyright (C) 2020 Maxime DEMAREST
- * Copyright (C) 2021 Gauthier VERDOL
+/* Copyright (C) 2001-2006 Rodolphe Quiedeville
+ * Copyright (C) 2004-2019 Laurent Destailleur
+ * Copyright (C) 2017 Pierre-Henry Favre
+ * Copyright (C) 2020 Maxime DEMAREST
+ * Copyright (C) 2021 Gauthier VERDOL
+ * Copyright (C) 2022 Alexandre Spangaro
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -47,7 +48,7 @@ require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/paymentvarious.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/loan/class/paymentloan.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -107,7 +108,7 @@ $arrayfields = array(
);
// Security check
-if (empty($conf->comptabilite->enabled) && empty($conf->accounting->enabled)) {
+if (!isModEnabled('comptabilite') && !isModEnabled('accounting')) {
accessforbidden();
}
if ($user->socid > 0) {
@@ -116,12 +117,12 @@ if ($user->socid > 0) {
// Define $arrayofentities if multientity is set.
$arrayofentities = array();
-if (!empty($conf->multicompany->enabled) && is_object($mc)) {
+if (isModEnabled('multicompany') && is_object($mc)) {
$arrayofentities = $mc->getEntitiesList();
}
$entity = (GETPOSTISSET('entity') ? GETPOST('entity', 'int') : (GETPOSTISSET('search_entity') ? GETPOST('search_entity', 'int') : $conf->entity));
-if (!empty($conf->multicompany->enabled) && is_object($mc)) {
+if (isModEnabled('multicompany') && is_object($mc)) {
if (empty($entity) && !empty($conf->global->MULTICOMPANY_ALLOW_EXPORT_ACCOUNTING_DOC_FOR_ALL_ENTITIES)) {
$entity = '0,'.join(',', array_keys($arrayofentities));
}
@@ -134,13 +135,13 @@ $error = 0;
$listofchoices = array(
'selectinvoices'=>array('label'=>'Invoices', 'lang'=>'bills', 'enabled' => isModEnabled('facture'), 'perms' => !empty($user->rights->facture->lire)),
- 'selectsupplierinvoices'=>array('label'=>'BillsSuppliers', 'lang'=>'bills', 'enabled' => !empty($conf->supplier_invoice->enabled), 'perms' => !empty($user->rights->fournisseur->facture->lire)),
- 'selectexpensereports'=>array('label'=>'ExpenseReports', 'lang'=>'trips', 'enabled' => !empty($conf->expensereport->enabled), 'perms' => !empty($user->rights->expensereport->lire)),
- 'selectdonations'=>array('label'=>'Donations', 'lang'=>'donation', 'enabled' => !empty($conf->don->enabled), 'perms' => !empty($user->rights->don->lire)),
- 'selectsocialcontributions'=>array('label'=>'SocialContributions', 'enabled' => !empty($conf->tax->enabled), 'perms' => !empty($user->rights->tax->charges->lire)),
- 'selectpaymentsofsalaries'=>array('label'=>'SalariesPayments', 'lang'=>'salaries', 'enabled' => !empty($conf->salaries->enabled), 'perms' => !empty($user->rights->salaries->read)),
- 'selectvariouspayment'=>array('label'=>'VariousPayment', 'enabled' => !empty($conf->banque->enabled), 'perms' => !empty($user->rights->banque->lire)),
- 'selectloanspayment'=>array('label'=>'PaymentLoan', 'enabled' => !empty($conf->loan->enabled), 'perms' => !empty($user->rights->loan->read)),
+ 'selectsupplierinvoices'=>array('label'=>'BillsSuppliers', 'lang'=>'bills', 'enabled' => isModEnabled('supplier_invoice'), 'perms' => !empty($user->rights->fournisseur->facture->lire)),
+ 'selectexpensereports'=>array('label'=>'ExpenseReports', 'lang'=>'trips', 'enabled' => isModEnabled('expensereport'), 'perms' => !empty($user->rights->expensereport->lire)),
+ 'selectdonations'=>array('label'=>'Donations', 'lang'=>'donation', 'enabled' => isModEnabled('don'), 'perms' => !empty($user->rights->don->lire)),
+ 'selectsocialcontributions'=>array('label'=>'SocialContributions', 'enabled' => isModEnabled('tax'), 'perms' => !empty($user->rights->tax->charges->lire)),
+ 'selectpaymentsofsalaries'=>array('label'=>'SalariesPayments', 'lang'=>'salaries', 'enabled' => isModEnabled('salaries'), 'perms' => !empty($user->rights->salaries->read)),
+ 'selectvariouspayment'=>array('label'=>'VariousPayment', 'enabled' => isModEnabled('banque'), 'perms' => !empty($user->rights->banque->lire)),
+ 'selectloanspayment'=>array('label'=>'PaymentLoan', 'enabled' => isModEnabled('don'), 'perms' => !empty($user->rights->loan->read)),
);
@@ -455,7 +456,7 @@ if ($result && $action == "dl" && !$error) {
dol_mkdir($dirfortmpfile);
$log = $langs->transnoentitiesnoconv("Type");
- if (!empty($conf->multicompany->enabled) && is_object($mc)) {
+ if (isModEnabled('multicompany') && is_object($mc)) {
$log .= ','.$langs->transnoentitiesnoconv("Entity");
}
$log .= ','.$langs->transnoentitiesnoconv("Date");
@@ -497,7 +498,7 @@ if ($result && $action == "dl" && !$error) {
}
$log .= '"'.$langs->trans($file['item']).'"';
- if (!empty($conf->multicompany->enabled) && is_object($mc)) {
+ if (isModEnabled('multicompany') && is_object($mc)) {
$log .= ',"'.(empty($arrayofentities[$file['entity']]) ? $file['entity'] : $arrayofentities[$file['entity']]).'"';
}
$log .= ','.dol_print_date($file['date'], 'dayrfc');
@@ -568,7 +569,7 @@ print ''."\n
print ' ';
print ''.$langs->trans("ExportAccountingSourceDocHelp");
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
print ' '.$langs->trans("ExportAccountingSourceDocHelp2", $langs->transnoentitiesnoconv("Accounting"), $langs->transnoentitiesnoconv("Journals"));
}
print ' ';
@@ -582,7 +583,7 @@ print "\n";
// Export is for current company only
$socid = 0;
-if (!empty($conf->multicompany->enabled) && is_object($mc)) {
+if (isModEnabled('multicompany') && is_object($mc)) {
$mc->getInfo($conf->entity);
print '('.$langs->trans("Entity").' : ';
print " ";
@@ -626,6 +627,7 @@ print ''."\n";
print dol_get_fiche_end();
+$param = '';
if (!empty($date_start) && !empty($date_stop)) {
$param .= '&date_startday='.GETPOST('date_startday', 'int');
$param .= '&date_startmonth='.GETPOST('date_startmonth', 'int');
@@ -687,21 +689,21 @@ if (!empty($date_start) && !empty($date_stop)) {
print_liste_field_titre($arrayfields['ref']['label'], $_SERVER["PHP_SELF"], "", "", $param, '', $sortfield, $sortorder, 'nowraponall ');
print ' '.$langs->trans("Document").' ';
print ''.$langs->trans("Paid").' ';
- print ''.$langs->trans("TotalHT").($conf->multicurrency->enabled ? ' ('.$conf->currency.')' : '').' ';
- print ''.$langs->trans("TotalTTC").($conf->multicurrency->enabled ? ' ('.$conf->currency.')' : '').' ';
- print ''.$langs->trans("TotalVAT").($conf->multicurrency->enabled ? ' ('.$conf->currency.')' : '').' ';
+ print ''.$langs->trans("TotalHT").(isModEnabled('multicurrency') ? ' ('.$conf->currency.')' : '').' ';
+ print ''.$langs->trans("TotalTTC").(isModEnabled('multicurrency') ? ' ('.$conf->currency.')' : '').' ';
+ print ''.$langs->trans("TotalVAT").(isModEnabled('multicurrency') ? ' ('.$conf->currency.')' : '').' ';
print ''.$langs->trans("ThirdParty").' ';
print ''.$langs->trans("Code").' ';
print ''.$langs->trans("Country").' ';
print ''.$langs->trans("VATIntra").' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
print ''.$langs->trans("Currency").' ';
}
print ' ';
if (empty($TData)) {
print ''.$langs->trans("NoRecordFound").' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
print ' ';
}
print ' ';
@@ -831,7 +833,7 @@ if (!empty($date_start) && !empty($date_stop)) {
$totalVAT_debit -= $data['amount_vat'];
}
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
print ''.$data['currency']." \n";
}
@@ -845,7 +847,7 @@ if (!empty($date_start) && !empty($date_stop)) {
print ''.price(price2num($totalIT_credit, 'MT')).' ';
print ''.price(price2num($totalVAT_credit, 'MT')).' ';
print ' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
print ' ';
}
print "\n";
@@ -856,7 +858,7 @@ if (!empty($date_start) && !empty($date_stop)) {
print ''.price(price2num($totalIT_debit, 'MT')).' ';
print ''.price(price2num($totalVAT_debit, 'MT')).' ';
print ' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
print ' ';
}
print "\n";
@@ -867,7 +869,7 @@ if (!empty($date_start) && !empty($date_stop)) {
print ''.price(price2num($totalIT_credit + $totalIT_debit, 'MT')).' ';
print ''.price(price2num($totalVAT_credit + $totalVAT_debit, 'MT')).' ';
print ' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
print ' ';
}
print "\n";
diff --git a/htdocs/compta/bank/bankentries_list.php b/htdocs/compta/bank/bankentries_list.php
index af833e7e257..d9689202297 100644
--- a/htdocs/compta/bank/bankentries_list.php
+++ b/htdocs/compta/bank/bankentries_list.php
@@ -365,7 +365,7 @@ if (GETPOST('save') && !$cancel && !empty($user->rights->banque->modifier)) {
$error++;
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("BankAccount")), null, 'errors');
}
- /*if (! empty($conf->accounting->enabled) && (empty($search_accountancy_code) || $search_accountancy_code == '-1'))
+ /*if (isModEnabled('accounting') && (empty($search_accountancy_code) || $search_accountancy_code == '-1'))
{
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("AccountAccounting")), null, 'errors');
$error++;
@@ -517,9 +517,15 @@ $morehtmlref = '';
if ($id > 0 || !empty($ref)) {
$title = $object->ref.' - '.$langs->trans("Transactions");
- $helpurl = "";
- llxHeader('', $title, $helpurl);
+} else {
+ $title = $langs->trans("BankTransactions");
+}
+$help_url = '';
+llxHeader('', $title, $help_url, '', 0, 0, array(), array(), $param);
+
+
+if ($id > 0 || !empty($ref)) {
// Load bank groups
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/bankcateg.class.php';
$bankcateg = new BankCateg($db);
@@ -574,11 +580,8 @@ if ($id > 0 || !empty($ref)) {
}
}
}
-} else {
- llxHeader('', $langs->trans("BankTransactions"), '', '', 0, 0, array(), array(), $param);
}
-
$sql = "SELECT b.rowid, b.dateo as do, b.datev as dv, b.amount, b.label, b.rappro as conciliated, b.num_releve, b.num_chq,";
$sql .= " b.fk_account, b.fk_type, b.fk_bordereau,";
$sql .= " ba.rowid as bankid, ba.ref as bankref";
@@ -879,7 +882,7 @@ if ($resql) {
print ''.$langs->trans("BankAccount").' ';
print ''.$langs->trans("Debit").' ';
print ''.$langs->trans("Credit").' ';
- /*if (! empty($conf->accounting->enabled))
+ /*if (isModEnabled('accounting'))
{
print '';
print $langs->trans("AccountAccounting");
@@ -914,7 +917,7 @@ if ($resql) {
//}
print ' ';
print ' ';
- /*if (! empty($conf->accounting->enabled))
+ /*if (isModEnabled('accounting'))
{
print '';
print $formaccounting->select_account($search_accountancy_code, 'search_accountancy_code', 1, null, 1, 1, '');
@@ -1023,9 +1026,9 @@ if ($resql) {
$moreforfilter .= '';
$moreforfilter .= '';
- if (!empty($conf->categorie->enabled)) {
+ if (isModEnabled('categorie')) {
// Categories
- if (!empty($conf->categorie->enabled) && !empty($user->rights->categorie->lire)) {
+ if (isModEnabled('categorie') && !empty($user->rights->categorie->lire)) {
$langs->load('categories');
// Bank line
diff --git a/htdocs/compta/bank/bilan.php b/htdocs/compta/bank/bilan.php
index 6edee79f86b..c2e93b27e59 100644
--- a/htdocs/compta/bank/bilan.php
+++ b/htdocs/compta/bank/bilan.php
@@ -17,17 +17,20 @@
*/
/**
- * \file htdocs/compta/bank/bilan.php
- * \ingroup banque
- * \brief Page de bilan
+ * \file htdocs/compta/bank/bilan.php
+ * \ingroup compta/bank
+ * \brief Page of Balance sheet
*/
+
+// Load Dolibarr environment
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
// Load translation files required by the page
$langs->loadLangs(array('banks', 'categories'));
+// Security Check Access Control
if (empty($user->rights->banque->lire)) {
accessforbidden();
}
diff --git a/htdocs/compta/bank/card.php b/htdocs/compta/bank/card.php
index 9233d397152..62c4dfa53ec 100644
--- a/htdocs/compta/bank/card.php
+++ b/htdocs/compta/bank/card.php
@@ -6,7 +6,7 @@
* Copyright (C) 2014-2017 Alexandre Spangaro
* Copyright (C) 2015 Jean-François Ferry
* Copyright (C) 2016 Marcos García
- * Copyright (C) 2018 Frédéric France
+ * Copyright (C) 2018-2022 Frédéric France
* Copyright (C) 2022 Charlene Benke
*
* This program is free software; you can redistribute it and/or modify
@@ -36,16 +36,16 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formbank.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
-if (!empty($conf->categorie->enabled)) {
+if (isModEnabled('categorie')) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php';
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php';
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingjournal.class.php';
}
@@ -336,7 +336,7 @@ if (empty($reshook)) {
$form = new Form($db);
$formbank = new FormBank($db);
$formcompany = new FormCompany($db);
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$formaccounting = new FormAccounting($db);
}
@@ -445,7 +445,7 @@ if ($action == 'create') {
print ' ';
// Tags-Categories
- if (!empty($conf->categorie->enabled)) {
+ if (isModEnabled('categorie')) {
print ''.$langs->trans("Categories").' ';
$cate_arbo = $form->select_all_categories(Categorie::TYPE_ACCOUNT, '', 'parent', 64, 0, 1);
@@ -581,7 +581,7 @@ if ($action == 'create') {
$fieldrequired = 'fieldrequired ';
}
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
print ' '.$langs->trans("AccountancyCode").' ';
print '';
print $formaccounting->select_account($object->account_number, 'account_number', 1, '', 1, 1);
@@ -592,7 +592,7 @@ if ($action == 'create') {
}
// Accountancy journal
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
print ' '.$langs->trans("AccountancyJournal").' ';
print '';
print $formaccounting->select_journal($object->fk_accountancy_journal, 'fk_accountancy_journal', 4, 1, 0, 0);
@@ -671,7 +671,7 @@ if ($action == 'create') {
// Accountancy code
print ' '.$langs->trans("AccountancyCode").' ';
print '';
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$accountingaccount = new AccountingAccount($db);
$accountingaccount->fetch('', $object->account_number, 1);
@@ -682,7 +682,7 @@ if ($action == 'create') {
print ' ';
// Accountancy journal
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
print ''.$langs->trans("AccountancyJournal").' ';
print '';
@@ -708,7 +708,7 @@ if ($action == 'create') {
print '';
// Categories
- if (!empty($conf->categorie->enabled)) {
+ if (isModEnabled('categorie')) {
print ''.$langs->trans("Categories").' ';
print $form->showCategories($object->id, Categorie::TYPE_ACCOUNT, 1);
print " ";
@@ -958,7 +958,7 @@ if ($action == 'create') {
print '';
// Tags-Categories
- if (!empty($conf->categorie->enabled)) {
+ if (isModEnabled('categorie')) {
print ''.$langs->trans("Categories").' ';
$cate_arbo = $form->select_all_categories(Categorie::TYPE_ACCOUNT, '', 'parent', 64, 0, 1);
$c = new Categorie($db);
@@ -1006,7 +1006,7 @@ if ($action == 'create') {
print ' '.$langs->trans("AccountancyCode").' ';
print '';
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
print $formaccounting->select_account($object->account_number, 'account_number', 1, '', 1, 1);
} else {
print ' account_number).'">';
@@ -1014,7 +1014,7 @@ if ($action == 'create') {
print ' ';
// Accountancy journal
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
print ''.$langs->trans("AccountancyJournal").' ';
print '';
print $formaccounting->select_journal($object->fk_accountancy_journal, 'fk_accountancy_journal', 4, 1, 0, 0);
@@ -1079,7 +1079,7 @@ if ($action == 'create') {
print ' ';
}
- if (!empty(isModEnabled('paymentbybanktransfer'))) {
+ if (isModEnabled('paymentbybanktransfer')) {
print ''.$form->textwithpicto($langs->trans("IDS"), $langs->trans("IDS").' ('.$langs->trans("UsedFor", $langs->transnoentitiesnoconv("BankTransfer")).')').' ';
print ' ';
diff --git a/htdocs/compta/bank/categ.php b/htdocs/compta/bank/categ.php
index aa60c1ddf41..fbb52fe4a58 100644
--- a/htdocs/compta/bank/categ.php
+++ b/htdocs/compta/bank/categ.php
@@ -21,29 +21,38 @@
*/
/**
- * \file htdocs/compta/bank/categ.php
- * \ingroup compta
- * \brief Page ajout de categories bancaires
+ * \file htdocs/compta/bank/categ.php
+ * \ingroup compta/bank
+ * \brief Page to manage Bank Categories
*/
+
+// Load Dolibarr environment
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/bankcateg.class.php';
+
// Load translation files required by the page
$langs->loadLangs(array('banks', 'categories'));
+
+// Get Parameters
$action = GETPOST('action', 'aZ09');
$optioncss = GETPOST('optioncss', 'aZ'); // Option for the css output (always '' except when 'print')
+$categid = GETPOST('categid');
+$label = GETPOST("label");
+
+// Initialize technical objects
+$bankcateg = new BankCateg($db);
+
+
+// Security Check Access Control
if (!$user->rights->banque->configurer) {
accessforbidden();
}
-$bankcateg = new BankCateg($db);
-$categid = GETPOST('categid');
-$label = GETPOST("label");
-
/*
diff --git a/htdocs/compta/bank/class/account.class.php b/htdocs/compta/bank/class/account.class.php
index b42ef184c8f..222f2604af0 100644
--- a/htdocs/compta/bank/class/account.class.php
+++ b/htdocs/compta/bank/class/account.class.php
@@ -1398,7 +1398,7 @@ class Account extends CommonObject
$option = 'nolink';
}
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
include_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php';
$langs->load("accountancy");
$label .= ''.$langs->trans('AccountAccounting').': '.length_accountg($this->account_number);
diff --git a/htdocs/compta/bank/class/paymentvarious.class.php b/htdocs/compta/bank/class/paymentvarious.class.php
index 48ea553abf0..3d07c280559 100644
--- a/htdocs/compta/bank/class/paymentvarious.class.php
+++ b/htdocs/compta/bank/class/paymentvarious.class.php
@@ -423,11 +423,11 @@ class PaymentVarious extends CommonObject
$this->error = $langs->trans("ErrorFieldRequired", $langs->transnoentities("Amount"));
return -5;
}
- if (!empty($conf->banque->enabled) && (empty($this->fk_account) || $this->fk_account <= 0)) {
+ if (isModEnabled("banque") && (empty($this->fk_account) || $this->fk_account <= 0)) {
$this->error = $langs->trans("ErrorFieldRequired", $langs->transnoentities("BankAccount"));
return -6;
}
- if (!empty($conf->banque->enabled) && (empty($this->type_payment) || $this->type_payment <= 0)) {
+ if (isModEnabled("banque") && (empty($this->type_payment) || $this->type_payment <= 0)) {
$this->error = $langs->trans("ErrorFieldRequired", $langs->transnoentities("PaymentMode"));
return -7;
}
@@ -481,7 +481,7 @@ class PaymentVarious extends CommonObject
$this->ref = $this->id;
if ($this->id > 0) {
- if (!empty($conf->banque->enabled) && !empty($this->amount)) {
+ if (isModEnabled("banque") && !empty($this->amount)) {
// Insert into llx_bank
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
diff --git a/htdocs/compta/bank/info.php b/htdocs/compta/bank/info.php
index 1bbab933e7b..729ccc53fdc 100644
--- a/htdocs/compta/bank/info.php
+++ b/htdocs/compta/bank/info.php
@@ -16,23 +16,29 @@
*/
/**
- * \file htdocs/compta/bank/info.php
- * \ingroup banque
- * \brief Onglet info d'une ecriture bancaire
+ * \file htdocs/compta/bank/info.php
+ * \ingroup compta/bank
+ * \brief Info tab of bank statement
*/
+
+// Load Dolibarr environment
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/compta/paiement/class/paiement.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
+require_once DOL_DOCUMENT_ROOT.'/compta/paiement/class/paiement.class.php';
+
// Load translation files required by the page
$langs->loadLangs(array('banks', 'categories', 'companies'));
+
+// Get Parameters
$id = GETPOST("rowid", 'int');
$accountid = (GETPOST('id', 'int') ? GETPOST('id', 'int') : GETPOST('account', 'int'));
$ref = GETPOST('ref', 'alpha');
+
// Security check
$fieldvalue = (!empty($id) ? $id : (!empty($ref) ? $ref : ''));
diff --git a/htdocs/compta/bank/line.php b/htdocs/compta/bank/line.php
index 3cde5212e2d..a22e32b2595 100644
--- a/htdocs/compta/bank/line.php
+++ b/htdocs/compta/bank/line.php
@@ -37,16 +37,16 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/payments.lib.php';
// Load translation files required by the page
$langs->loadLangs(array('banks', 'categories', 'compta', 'bills', 'other'));
-if (!empty($conf->adherent->enabled)) {
+if (isModEnabled('adherent')) {
$langs->load("members");
}
-if (!empty($conf->don->enabled)) {
+if (isModEnabled('don')) {
$langs->load("donations");
}
-if (!empty($conf->loan->enabled)) {
+if (isModEnabled('loan')) {
$langs->load("loan");
}
-if (!empty($conf->salaries->enabled)) {
+if (isModEnabled('salaries')) {
$langs->load("salaries");
}
@@ -580,7 +580,7 @@ if ($result) {
print "";
// Categories
- if (!empty($conf->categorie->enabled) && !empty($user->rights->categorie->lire)) {
+ if (isModEnabled('categorie') && !empty($user->rights->categorie->lire)) {
$langs->load('categories');
// Bank line
diff --git a/htdocs/compta/bank/list.php b/htdocs/compta/bank/list.php
index 238b9919ef1..362ca3d488f 100644
--- a/htdocs/compta/bank/list.php
+++ b/htdocs/compta/bank/list.php
@@ -32,13 +32,13 @@ require_once DOL_DOCUMENT_ROOT.'/compta/tva/class/tva.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/sociales/class/chargesociales.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcategory.class.php';
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php';
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingjournal.class.php';
}
-if (!empty($conf->categorie->enabled)) {
+if (isModEnabled('categorie')) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
}
@@ -58,7 +58,7 @@ $search_number = GETPOST('search_number', 'alpha');
$search_status = GETPOST('search_status') ?GETPOST('search_status', 'alpha') : 'opened'; // 'all' or ''='opened'
$optioncss = GETPOST('optioncss', 'alpha');
-if (!empty($conf->categorie->enabled)) {
+if (isModEnabled('categorie')) {
$search_category_list = GETPOST("search_category_".Categorie::TYPE_ACCOUNT."_list", "array");
}
@@ -116,8 +116,8 @@ $arrayfields = array(
'b.label'=>array('label'=>$langs->trans("Label"), 'checked'=>1, 'position'=>12),
'accountype'=>array('label'=>$langs->trans("Type"), 'checked'=>1, 'position'=>14),
'b.number'=>array('label'=>$langs->trans("AccountIdShort"), 'checked'=>1, 'position'=>16),
- 'b.account_number'=>array('label'=>$langs->trans("AccountAccounting"), 'checked'=>(!empty($conf->accounting->enabled) || !empty($conf->accounting->enabled)), 'position'=>18),
- 'b.fk_accountancy_journal'=>array('label'=>$langs->trans("AccountancyJournal"), 'checked'=>(!empty($conf->accounting->enabled) || !empty($conf->accounting->enabled)), 'position'=>20),
+ 'b.account_number'=>array('label'=>$langs->trans("AccountAccounting"), 'checked'=>(isModEnabled('accounting')), 'position'=>18),
+ 'b.fk_accountancy_journal'=>array('label'=>$langs->trans("AccountancyJournal"), 'checked'=>(isModEnabled('accounting')), 'position'=>20),
'toreconcile'=>array('label'=>$langs->trans("TransactionsToConciliate"), 'checked'=>1, 'position'=>50),
'b.currency_code'=>array('label'=>$langs->trans("Currency"), 'checked'=>0, 'position'=>22),
'b.datec'=>array('label'=>$langs->trans("DateCreation"), 'checked'=>0, 'position'=>500),
@@ -197,7 +197,7 @@ if (!empty($extrafields->attributes[$object->table_element]['label']) && is_arra
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX.$object->table_element."_extrafields as ef on (b.rowid = ef.fk_object)";
}
-if (!empty($conf->categorie->enabled)) {
+if (isModEnabled('categorie')) {
$sql .= Categorie::getFilterJoinQuery(Categorie::TYPE_ACCOUNT, "b.rowid");
}
@@ -209,7 +209,7 @@ if ($search_status == 'closed') {
$sql .= " AND clos = 1";
}
-if (!empty($conf->categorie->enabled)) {
+if (isModEnabled('categorie')) {
$sql .= Categorie::getFilterSelectQuery(Categorie::TYPE_ACCOUNT, "b.rowid", $search_category_list);
}
@@ -344,7 +344,7 @@ include DOL_DOCUMENT_ROOT.'/core/tpl/massactions_pre.tpl.php';
$moreforfilter = '';
-if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire) {
+if (isModEnabled('categorie') && $user->rights->categorie->lire) {
$moreforfilter .= $form->getFilterBox(Categorie::TYPE_ACCOUNT, $search_category_list);
}
@@ -569,7 +569,7 @@ foreach ($accounts as $key => $type) {
// Account number
if (!empty($arrayfields['b.account_number']['checked'])) {
print '';
- if (!empty($conf->accounting->enabled) && !empty($objecttmp->account_number)) {
+ if (isModEnabled('accounting') && !empty($objecttmp->account_number)) {
$accountingaccount = new AccountingAccount($db);
$accountingaccount->fetch('', $objecttmp->account_number, 1);
print '';
@@ -587,7 +587,7 @@ foreach ($accounts as $key => $type) {
// Accountancy journal
if (!empty($arrayfields['b.fk_accountancy_journal']['checked'])) {
print ' ';
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
if (empty($objecttmp->fk_accountancy_journal)) {
print img_warning($langs->trans("Mandatory"));
} else {
diff --git a/htdocs/compta/bank/releve.php b/htdocs/compta/bank/releve.php
index c08336841e2..ea80f1caab3 100644
--- a/htdocs/compta/bank/releve.php
+++ b/htdocs/compta/bank/releve.php
@@ -223,6 +223,17 @@ if ($id > 0) {
$param .= '&id='.urlencode($id);
}
+if (empty($numref)) {
+ $title = $object->ref.' - '.$langs->trans("AccountStatements");
+ $helpurl = "";
+} else {
+ $title = $langs->trans("FinancialAccount").' - '.$langs->trans("AccountStatements");
+ $helpurl = "";
+}
+
+
+llxHeader('', $title, $helpurl);
+
if (empty($numref)) {
$sortfield = 'numr';
@@ -248,10 +259,6 @@ if (empty($numref)) {
$numrows = $db->num_rows($result);
$i = 0;
- $title = $object->ref.' - '.$langs->trans("AccountStatements");
- $helpurl = "";
- llxHeader('', $title, $helpurl);
-
// Onglets
$head = bank_prepare_head($object);
print dol_get_fiche_head($head, 'statement', $langs->trans("FinancialAccount"), 0, 'account');
@@ -387,10 +394,6 @@ if (empty($numref)) {
* Show list of record into a bank statement
*/
- $title = $langs->trans("FinancialAccount").' - '.$langs->trans("AccountStatements");
- $helpurl = "";
- llxHeader('', $title, $helpurl);
-
// Onglets
$head = account_statement_prepare_head($object, $numref);
print dol_get_fiche_head($head, 'statement', $langs->trans("AccountStatement"), -1, 'account');
diff --git a/htdocs/compta/bank/transfer.php b/htdocs/compta/bank/transfer.php
index f728dc74f4e..ff38abb32d4 100644
--- a/htdocs/compta/bank/transfer.php
+++ b/htdocs/compta/bank/transfer.php
@@ -270,12 +270,12 @@ print '';
print ' ';
print img_picto('', 'bank_account', 'class="paddingright"');
-$form->select_comptes($account_from, 'account_from', 0, '', 1, '', empty($conf->multicurrency->enabled) ? 0 : 1);
+$form->select_comptes($account_from, 'account_from', 0, '', 1, '', !isModEnabled('multicurrency') ? 0 : 1);
print " ";
print "\n";
print img_picto('', 'bank_account', 'class="paddingright"');
-$form->select_comptes($account_to, 'account_to', 0, '', 1, '', empty($conf->multicurrency->enabled) ? 0 : 1);
+$form->select_comptes($account_to, 'account_to', 0, '', 1, '', !isModEnabled('multicurrency') ? 0 : 1);
print " \n";
print "";
diff --git a/htdocs/compta/bank/various_payment/card.php b/htdocs/compta/bank/various_payment/card.php
index cbcb2fd5417..804efd010e3 100644
--- a/htdocs/compta/bank/various_payment/card.php
+++ b/htdocs/compta/bank/various_payment/card.php
@@ -30,7 +30,7 @@ require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingjournal.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -52,7 +52,7 @@ $amount = price2num(GETPOST("amount", "alpha"));
$paymenttype = GETPOST("paymenttype", "aZ09");
$accountancy_code = GETPOST("accountancy_code", "alpha");
$projectid = (GETPOST('projectid', 'int') ? GETPOST('projectid', 'int') : GETPOST('fk_project', 'int'));
-if (!empty($conf->accounting->enabled) && !empty($conf->global->ACCOUNTANCY_COMBO_FOR_AUX)) {
+if (isModEnabled('accounting') && !empty($conf->global->ACCOUNTANCY_COMBO_FOR_AUX)) {
$subledger_account = GETPOST("subledger_account", "alpha") > 0 ? GETPOST("subledger_account", "alpha") : '';
} else {
$subledger_account = GETPOST("subledger_account", "alpha");
@@ -139,7 +139,7 @@ if (empty($reshook)) {
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Amount")), null, 'errors');
$error++;
}
- if (!empty($conf->banque->enabled) && !$object->accountid > 0) {
+ if (isModEnabled("banque") && !$object->accountid > 0) {
$langs->load('errors');
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("BankAccount")), null, 'errors');
$error++;
@@ -149,7 +149,7 @@ if (empty($reshook)) {
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("PaymentMode")), null, 'errors');
$error++;
}
- if (!empty($conf->accounting->enabled) && !$object->accountancy_code) {
+ if (isModEnabled('accounting') && !$object->accountancy_code) {
$langs->load('errors');
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("AccountAccounting")), null, 'errors');
$error++;
@@ -305,10 +305,10 @@ if ($action == 'confirm_clone' && $confirm == 'yes' && ($user->rights->banque->m
* View
*/
$form = new Form($db);
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$formaccounting = new FormAccounting($db);
}
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -413,7 +413,7 @@ if ($action == 'create') {
print ' ';
// Bank
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print '';
print $form->editfieldkey('BankAccount', 'selectaccountid', '', $object, 0, 'string', '', 1).' ';
print img_picto('', 'bank_account', 'class="pictofixedwidth"');
@@ -428,7 +428,7 @@ if ($action == 'create') {
print ' ';
// Number
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ''.$langs->trans('Numero');
print ' ('.$langs->trans("ChequeOrTransferNumber").') ';
print ' ';
@@ -448,7 +448,7 @@ if ($action == 'create') {
}
// Accountancy account
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
// TODO Remove the fieldrequired and allow instead to edit a various payment to enter accounting code
print ''.$langs->trans("AccountAccounting").' ';
print '';
@@ -461,7 +461,7 @@ if ($action == 'create') {
}
// Subledger account
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
print ' '.$langs->trans("SubledgerAccount").' ';
print '';
if (!empty($conf->global->ACCOUNTANCY_COMBO_FOR_AUX)) {
@@ -485,7 +485,7 @@ if ($action == 'create') {
print ' ';
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$formproject = new FormProjets($db);
// Associated project
@@ -557,7 +557,7 @@ if ($id) {
$morehtmlref = '';
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= $langs->trans('Project').' ';
if ($user->rights->banque->modifier) {
@@ -625,7 +625,7 @@ if ($id) {
print '
';
print $langs->trans("AccountAccounting");
print ' ';
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$accountingaccount = new AccountingAccount($db);
$accountingaccount->fetch('', $object->accountancy_code, 1);
@@ -642,7 +642,7 @@ if ($id) {
print $form->editfieldval('SubledgerAccount', 'subledger_account', $object->subledger_account, $object, (!$alreadyaccounted && $user->rights->banque->modifier), 'string', '', 0);
print ' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
if ($object->fk_account > 0) {
$bankline = new AccountLine($db);
$bankline->fetch($object->fk_bank);
diff --git a/htdocs/compta/bank/various_payment/document.php b/htdocs/compta/bank/various_payment/document.php
index b7cb8ee6bbf..6cbfd596c44 100644
--- a/htdocs/compta/bank/various_payment/document.php
+++ b/htdocs/compta/bank/various_payment/document.php
@@ -97,7 +97,7 @@ if ($object->id) {
$morehtmlref = '
';
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= $langs->trans('Project').' : ';
if ($user->rights->banque->modifier && 0) {
diff --git a/htdocs/compta/bank/various_payment/info.php b/htdocs/compta/bank/various_payment/info.php
index b46ab36ddf6..51442fd20a1 100644
--- a/htdocs/compta/bank/various_payment/info.php
+++ b/htdocs/compta/bank/various_payment/info.php
@@ -57,7 +57,7 @@ print dol_get_fiche_head($head, 'info', $langs->trans("VariousPayment"), -1, $ob
$morehtmlref = '
';
// Project
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= $langs->trans('Project').' : ';
if ($user->rights->banque->modifier && 0) {
diff --git a/htdocs/compta/bank/various_payment/list.php b/htdocs/compta/bank/various_payment/list.php
index fdebf7f795c..fe9bb032fa8 100644
--- a/htdocs/compta/bank/various_payment/list.php
+++ b/htdocs/compta/bank/various_payment/list.php
@@ -151,11 +151,11 @@ $arrayfields = array(
'datep' =>array('label'=>"DatePayment", 'checked'=>1, 'position'=>120),
'datev' =>array('label'=>"DateValue", 'checked'=>-1, 'position'=>130),
'type' =>array('label'=>"PaymentMode", 'checked'=>1, 'position'=>140),
- 'project' =>array('label'=>"Project", 'checked'=>1, 'position'=>200, "enabled"=>!empty($conf->project->enabled)),
- 'bank' =>array('label'=>"BankAccount", 'checked'=>1, 'position'=>300, "enabled"=>!empty($conf->banque->enabled)),
- 'entry' =>array('label'=>"BankTransactionLine", 'checked'=>1, 'position'=>310, "enabled"=>!empty($conf->banque->enabled)),
- 'account' =>array('label'=>"AccountAccountingShort", 'checked'=>1, 'position'=>400, "enabled"=>!empty($conf->accounting->enabled)),
- 'subledger' =>array('label'=>"SubledgerAccount", 'checked'=>1, 'position'=>410, "enabled"=>!empty($conf->accounting->enabled)),
+ 'project' =>array('label'=>"Project", 'checked'=>1, 'position'=>200, "enabled"=>isModEnabled('project')),
+ 'bank' =>array('label'=>"BankAccount", 'checked'=>1, 'position'=>300, "enabled"=>isModEnabled("banque")),
+ 'entry' =>array('label'=>"BankTransactionLine", 'checked'=>1, 'position'=>310, "enabled"=>isModEnabled("banque")),
+ 'account' =>array('label'=>"AccountAccountingShort", 'checked'=>1, 'position'=>400, "enabled"=>isModEnabled('accounting')),
+ 'subledger' =>array('label'=>"SubledgerAccount", 'checked'=>1, 'position'=>410, "enabled"=>isModEnabled('accounting')),
'debit' =>array('label'=>"Debit", 'checked'=>1, 'position'=>500),
'credit' =>array('label'=>"Credit", 'checked'=>1, 'position'=>510),
);
@@ -190,7 +190,7 @@ $form = new Form($db);
if ($arrayfields['account']['checked'] || $arrayfields['subledger']['checked']) {
$formaccounting = new FormAccounting($db);
}
-if ($arrayfields['bank']['checked'] && !empty($conf->accounting->enabled)) {
+if ($arrayfields['bank']['checked'] && isModEnabled('accounting')) {
$accountingjournal = new AccountingJournal($db);
}
if ($arrayfields['ref']['checked']) {
@@ -621,7 +621,7 @@ if ($resql) {
$accountstatic->ref = $obj->bref;
$accountstatic->number = $obj->bnumber;
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$accountstatic->account_number = $obj->bank_account_number;
$accountingjournal->fetch($obj->accountancy_journal);
$accountstatic->accountancy_journal = $accountingjournal->getNomUrl(0, 1, 1, '', 1);
diff --git a/htdocs/compta/cashcontrol/cashcontrol_card.php b/htdocs/compta/cashcontrol/cashcontrol_card.php
index 0130cfe10f0..97bca312645 100644
--- a/htdocs/compta/cashcontrol/cashcontrol_card.php
+++ b/htdocs/compta/cashcontrol/cashcontrol_card.php
@@ -70,10 +70,10 @@ if ($contextpage == 'takepos') {
$arrayofpaymentmode = array('cash'=>'Cash', 'cheque'=>'Cheque', 'card'=>'CreditCard');
$arrayofposavailable = array();
-if (!empty($conf->cashdesk->enabled)) {
+if (isModEnabled('cashdesk')) {
$arrayofposavailable['cashdesk'] = $langs->trans('CashDesk').' (cashdesk)';
}
-if (!empty($conf->takepos->enabled)) {
+if (isModEnabled('takepos')) {
$arrayofposavailable['takepos'] = $langs->trans('TakePOS').' (takepos)';
}
// TODO Add hook here to allow other POS to add themself
@@ -265,6 +265,10 @@ $initialbalanceforterminal = array();
$theoricalamountforterminal = array();
$theoricalnbofinvoiceforterminal = array();
+
+llxHeader('', $langs->trans("CashControl"));
+
+
if ($action == "create" || $action == "start" || $action == 'close') {
if ($action == 'close') {
$posmodule = $object->posmodule;
@@ -376,8 +380,6 @@ if ($action == "create" || $action == "start" || $action == 'close') {
//var_dump($theoricalamountforterminal); var_dump($theoricalnbofinvoiceforterminal);
if ($action != 'close') {
- llxHeader('', $langs->trans("NewCashFence"));
-
print load_fiche_titre($langs->trans("CashControl")." - ".$langs->trans("New"), '', 'cash-register');
print '
';
@@ -597,8 +599,6 @@ if ($action == "create" || $action == "start" || $action == 'close') {
if (empty($action) || $action == "view" || $action == "close") {
$result = $object->fetch($id);
- llxHeader('', $langs->trans("CashControl"));
-
if ($result <= 0) {
print $langs->trans("ErrorRecordNotFound");
} else {
diff --git a/htdocs/compta/cashcontrol/cashcontrol_list.php b/htdocs/compta/cashcontrol/cashcontrol_list.php
index 2315f12757a..4e86cb21141 100644
--- a/htdocs/compta/cashcontrol/cashcontrol_list.php
+++ b/htdocs/compta/cashcontrol/cashcontrol_list.php
@@ -269,7 +269,7 @@ foreach($object->fields as $key => $val) {
$sql .= "t.".$key.", ";
}
// Add fields from extrafields
-if (! empty($extrafields->attributes[$object->table_element]['label'])) {
+if (!empty($extrafields->attributes[$object->table_element]['label'])) {
foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) $sql.=($extrafields->attributes[$object->table_element]['type'][$key] != 'separate' ? "ef.".$key.', ' : '');
}
// Add where from hooks
diff --git a/htdocs/compta/cashcontrol/class/cashcontrol.class.php b/htdocs/compta/cashcontrol/class/cashcontrol.class.php
index d7744f777fe..bc45f3b417d 100644
--- a/htdocs/compta/cashcontrol/class/cashcontrol.class.php
+++ b/htdocs/compta/cashcontrol/class/cashcontrol.class.php
@@ -258,7 +258,7 @@ class CashControl extends CommonObject
/*
$posmodule = $this->posmodule;
- if (! empty($user->rights->$posmodule->use))
+ if (!empty($user->rights->$posmodule->use))
{
$this->error='NotEnoughPermissions';
dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR);
diff --git a/htdocs/compta/charges/index.php b/htdocs/compta/charges/index.php
index 169666477f4..71ab6dd4961 100644
--- a/htdocs/compta/charges/index.php
+++ b/htdocs/compta/charges/index.php
@@ -133,7 +133,7 @@ if ($year) {
print ''.$langs->trans("DescTaxAndDividendsArea").' ';
print " ";
-if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
+if (isModEnabled('tax') && $user->rights->tax->charges->lire) {
// Social contributions only
print load_fiche_titre($langs->trans("SocialContributions").($year ? ' ('.$langs->trans("Year").' '.$year.')' : ''), '', '');
@@ -146,7 +146,7 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
print_liste_field_titre("RefPayment", $_SERVER["PHP_SELF"], "pc.rowid", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("DatePayment", $_SERVER["PHP_SELF"], "pc.datep", "", $param, 'align="center"', $sortfield, $sortorder);
print_liste_field_titre("Type", $_SERVER["PHP_SELF"], "pct.code", "", $param, '', $sortfield, $sortorder);
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print_liste_field_titre("Account", $_SERVER["PHP_SELF"], "ba.label", "", $param, "", $sortfield, $sortorder);
}
print_liste_field_titre("PayedByThisPayment", $_SERVER["PHP_SELF"], "pc.amount", "", $param, 'class="right"', $sortfield, $sortorder);
@@ -220,7 +220,7 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
}
print $obj->num_payment.'';
// Account
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print '';
if ($obj->fk_bank > 0) {
//$accountstatic->fetch($obj->fk_bank);
@@ -254,7 +254,7 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
print ' ';
print ' ';
print ' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ' ';
}
print ''.price($totalpaid)." ";
@@ -266,7 +266,7 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
}
// VAT
-if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
+if (isModEnabled('tax') && $user->rights->tax->charges->lire) {
print " ";
$tva = new Tva($db);
@@ -304,7 +304,7 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
print_liste_field_titre("RefPayment", $_SERVER["PHP_SELF"], "ptva.rowid", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("DatePayment", $_SERVER["PHP_SELF"], "ptva.datep", "", $param, 'align="center"', $sortfield, $sortorder);
print_liste_field_titre("Type", $_SERVER["PHP_SELF"], "pct.code", "", $param, '', $sortfield, $sortorder);
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print_liste_field_titre("Account", $_SERVER["PHP_SELF"], "ba.label", "", $param, "", $sortfield, $sortorder);
}
print_liste_field_titre("PayedByThisPayment", $_SERVER["PHP_SELF"], "ptva.amount", "", $param, 'class="right"', $sortfield, $sortorder);
@@ -341,7 +341,7 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
print $obj->num_payment.'';
// Account
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print '';
if ($obj->fk_bank > 0) {
//$accountstatic->fetch($obj->fk_bank);
diff --git a/htdocs/compta/deplacement/card.php b/htdocs/compta/deplacement/card.php
index 029c5b5f223..8259d40f694 100644
--- a/htdocs/compta/deplacement/card.php
+++ b/htdocs/compta/deplacement/card.php
@@ -29,7 +29,7 @@ require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/trip.lib.php';
require_once DOL_DOCUMENT_ROOT.'/compta/deplacement/class/deplacement.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -422,7 +422,7 @@ if ($action == 'create') {
print ' ';
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load('projects');
print '';
print '';
diff --git a/htdocs/compta/facture/card-rec.php b/htdocs/compta/facture/card-rec.php
index 18a935cedb4..031247951e9 100644
--- a/htdocs/compta/facture/card-rec.php
+++ b/htdocs/compta/facture/card-rec.php
@@ -34,7 +34,7 @@ require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture-rec.class.php';
require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
include_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
//include_once DOL_DOCUMENT_ROOT . '/core/class/html.formprojet.class.php';
}
@@ -650,9 +650,9 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id','aZ09')) $newlang = GETPOST('lang_id','aZ09');
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang = $object->thirdparty->default_lang;
- if (! empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id','aZ09')) $newlang = GETPOST('lang_id','aZ09');
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) $newlang = $object->thirdparty->default_lang;
+ if (!empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
}
@@ -857,11 +857,11 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id','aZ09'))
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id','aZ09'))
$newlang = GETPOST('lang_id','aZ09');
- if ($conf->global->MAIN_MULTILANGS && empty($newlang))
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang))
$newlang = $object->thirdparty->default_lang;
- if (! empty($newlang)) {
+ if (!empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
}
@@ -924,7 +924,7 @@ llxHeader('', $langs->trans("RepeatableInvoices"), $help_url);
$form = new Form($db);
$formother = new FormOther($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
$companystatic = new Societe($db);
@@ -954,7 +954,7 @@ if ($action == 'create') {
print dol_get_fiche_head(null, '', '', 0);
$rowspan = 4;
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$rowspan++;
}
if ($object->fk_account > 0) {
@@ -990,8 +990,8 @@ if ($action == 'create') {
$substitutionarray['__INVOICE_YEAR__'] = $langs->trans("YearOfInvoice").' ('.$langs->trans("Example").': '.dol_print_date($object->date, '%Y').')';
$substitutionarray['__INVOICE_NEXT_YEAR__'] = $langs->trans("NextYearOfInvoice").' ('.$langs->trans("Example").': '.dol_print_date(dol_time_plus_duree($object->date, 1, 'y'), '%Y').')';
// Only on template invoices
- $substitutionarray['__INVOICE_DATE_NEXT_INVOICE_BEFORE_GEN__'] = $langs->trans("DateNextInvoiceBeforeGen").' ('.$langs->trans("Example").': '.dol_print_date($object->date_when, 'dayhour').')';
- $substitutionarray['__INVOICE_DATE_NEXT_INVOICE_AFTER_GEN__'] = $langs->trans("DateNextInvoiceAfterGen").' ('.$langs->trans("Example").': '.dol_print_date(dol_time_plus_duree($object->date_when, $object->frequency, $object->unit_frequency), 'dayhour').')';
+ $substitutionarray['__INVOICE_DATE_NEXT_INVOICE_BEFORE_GEN__'] = $langs->trans("DateNextInvoiceBeforeGen").' ('.$langs->trans("Example").': '.dol_print_date(dol_time_plus_duree($object->date, 1, 'm'), 'dayhour').')';
+ $substitutionarray['__INVOICE_DATE_NEXT_INVOICE_AFTER_GEN__'] = $langs->trans("DateNextInvoiceAfterGen").' ('.$langs->trans("Example").': '.dol_print_date(dol_time_plus_duree($object->date, 2, 'm'), 'dayhour').')';
$substitutionarray['__INVOICE_COUNTER_CURRENT__'] = $langs->trans("Count");
$substitutionarray['__INVOICE_COUNTER_MAX__'] = $langs->trans("MaxPeriodNumber");
@@ -1047,7 +1047,7 @@ if ($action == 'create') {
}
// Project
- if (!empty($conf->project->enabled) && is_object($object->thirdparty) && $object->thirdparty->id > 0) {
+ if (isModEnabled('project') && is_object($object->thirdparty) && $object->thirdparty->id > 0) {
$projectid = GETPOST('projectid') ?GETPOST('projectid') : $object->fk_project;
$langs->load('projects');
print ' '.$langs->trans('Project').' ';
@@ -1117,9 +1117,9 @@ if ($action == 'create') {
$title = $langs->trans("ProductsAndServices");
- if (empty($conf->service->enabled)) {
+ if (!isModEnabled('service')) {
$title = $langs->trans("Products");
- } elseif (empty($conf->product->enabled)) {
+ } elseif (!isModEnabled('product')) {
$title = $langs->trans("Services");
}
@@ -1203,7 +1203,7 @@ if ($action == 'create') {
// Thirdparty
$morehtmlref .= $langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->facture->creer) {
@@ -1310,7 +1310,7 @@ if ($action == 'create') {
print ' ';
// Multicurrency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
// Multicurrency code
print '';
print '';
@@ -1573,7 +1573,7 @@ if ($action == 'create') {
if ($object->frequency > 0) {
print ' ';
- if (empty($conf->cron->enabled)) {
+ if (!isModEnabled('cron')) {
print info_admin($langs->trans("EnableAndSetupModuleCron", $langs->transnoentitiesnoconv("Module2300Name")));
}
diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php
index ffa8b97b7bd..aadaf3895e9 100644
--- a/htdocs/compta/facture/card.php
+++ b/htdocs/compta/facture/card.php
@@ -37,11 +37,13 @@
* \brief Page to create/see an invoice
*/
+// Libraries
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture-rec.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/paiement/class/paiement.class.php';
+
require_once DOL_DOCUMENT_ROOT.'/core/modules/facture/modules_facture.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/discount.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
@@ -51,34 +53,36 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
-if (!empty($conf->commande->enabled)) {
+
+if (isModEnabled('commande')) {
require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
}
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
-if (!empty($conf->variants->enabled)) {
+if (isModEnabled('variants')) {
require_once DOL_DOCUMENT_ROOT.'/variants/class/ProductCombination.class.php';
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingjournal.class.php';
}
// Load translation files required by the page
$langs->loadLangs(array('bills', 'companies', 'compta', 'products', 'banks', 'main', 'withdrawals'));
-if (!empty($conf->incoterm->enabled)) {
+if (isModEnabled('incoterm')) {
$langs->load('incoterm');
}
-if (!empty($conf->margin->enabled)) {
+if (isModEnabled('margin')) {
$langs->load('margins');
}
+// General $Variables
$projectid = (GETPOST('projectid', 'int') ? GETPOST('projectid', 'int') : 0);
-$id = (GETPOST('id', 'int') ? GETPOST('id', 'int') : GETPOST('facid', 'int')); // For backward compatibility
+$id = (GETPOST('id', 'int') ? GETPOST('id', 'int') : GETPOST('facid', 'int')); // For backward compatibility
$ref = GETPOST('ref', 'alpha');
$socid = GETPOST('socid', 'int');
$action = GETPOST('action', 'aZ09');
@@ -102,7 +106,7 @@ $hidedetails = (GETPOST('hidedetails', 'int') ? GETPOST('hidedetails', 'int') :
$hidedesc = (GETPOST('hidedesc', 'int') ? GETPOST('hidedesc', 'int') : (!empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DESC) ? 1 : 0));
$hideref = (GETPOST('hideref', 'int') ? GETPOST('hideref', 'int') : (!empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_REF) ? 1 : 0));
-// Nombre de ligne pour choix de produit/service predefinis
+// Number of lines for predefined product/service choices
$NBLINES = 4;
$usehm = (!empty($conf->global->MAIN_USE_HOURMIN_IN_DATE_RANGE) ? $conf->global->MAIN_USE_HOURMIN_IN_DATE_RANGE : 0);
@@ -128,11 +132,14 @@ if ($id > 0 || !empty($ref)) {
// Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context
$hookmanager->initHooks(array('invoicecard', 'globalcard'));
+// Permissions
$usercanread = $user->hasRight("facture", "lire");
$usercancreate = $user->hasRight("facture", "creer");
$usercanissuepayment = $user->hasRight("facture", "paiement");
$usercandelete = $user->hasRight("facture", "supprimer");
$usercancreatecontract = $user->hasRight("contrat", "creer");
+
+// Advanced Permissions
$usercanvalidate = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $usercancreate) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->facture->invoice_advance->validate)));
$usercansend = (empty($conf->global->MAIN_USE_ADVANCED_PERMS) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->facture->invoice_advance->send)));
$usercanreopen = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $usercancreate) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->facture->invoice_advance->reopen)));
@@ -272,10 +279,10 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id')) {
$newlang = GETPOST('lang_id');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -520,10 +527,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -540,7 +547,7 @@ if (empty($reshook)) {
}
}
}
- } elseif ($action == 'set_incoterms' && !empty($conf->incoterm->enabled)) { // Set incoterm
+ } elseif ($action == 'set_incoterms' && isModEnabled('incoterm')) { // Set incoterm
$result = $object->setIncoterms(GETPOST('incoterm_id', 'int'), GETPOST('location_incoterms', 'alpha'));
} elseif ($action == 'setbankaccount' && $usercancreate) { // bank account
$result = $object->setBankAccount(GETPOST('fk_account', 'int'));
@@ -604,10 +611,10 @@ if (empty($reshook)) {
if (empty($error) && empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -659,10 +666,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -749,10 +756,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -1780,7 +1787,7 @@ if (empty($reshook)) {
// Now we create same links to contact than the ones found on origin object
/* Useless, already into the create
- if (! empty($conf->global->MAIN_PROPAGATE_CONTACTS_FROM_ORIGIN))
+ if (!empty($conf->global->MAIN_PROPAGATE_CONTACTS_FROM_ORIGIN))
{
$originforcontact = $object->origin;
$originidforcontact = $object->origin_id;
@@ -1956,10 +1963,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE) && count($object->lines)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -2008,22 +2015,39 @@ if (empty($reshook)) {
// Set if we used free entry or predefined product
$predef = '';
$product_desc =(GETPOSTISSET('dp_desc') ? GETPOST('dp_desc', 'restricthtml') : '');
- $price_ht = price2num(GETPOST('price_ht'), 'MU', 2);
- $price_ht_devise = price2num(GETPOST('multicurrency_price_ht'), 'CU', 2);
- $price_ttc = price2num(GETPOST('price_ttc'), 'MU', 2);
- $price_ttc_devise = price2num(GETPOST('multicurrency_price_ttc'), 'CU', 2);
- $prod_entry_mode = GETPOST('prod_entry_mode', 'alpha');
+ $price_ht = '';
+ $price_ht_devise = '';
+ $price_ttc = '';
+ $price_ttc_devise = '';
+
+ if (GETPOST('price_ht') !== '') {
+ $price_ht = price2num(GETPOST('price_ht'), 'MU', 2);
+ }
+ if (GETPOST('multicurrency_price_ht') !== '') {
+ $price_ht_devise = price2num(GETPOST('multicurrency_price_ht'), 'CU', 2);
+ }
+ if (GETPOST('price_ttc') !== '') {
+ $price_ttc = price2num(GETPOST('price_ttc'), 'MU', 2);
+ }
+ if (GETPOST('multicurrency_price_ttc') !== '') {
+ $price_ttc_devise = price2num(GETPOST('multicurrency_price_ttc'), 'CU', 2);
+ }
+
+ $prod_entry_mode = GETPOST('prod_entry_mode', 'aZ09');
if ($prod_entry_mode == 'free') {
$idprod = 0;
- $tva_tx = (GETPOST('tva_tx', 'alpha') ? GETPOST('tva_tx', 'alpha') : 0);
+ $tva_tx = (GETPOST('tva_tx', 'alpha') ? price2num(preg_replace('/\s*\(.*\)/', '', GETPOST('tva_tx', 'alpha'))) : 0);
} else {
$idprod = GETPOST('idprod', 'int');
$tva_tx = '';
}
- $qty = price2num(GETPOST('qty'.$predef), 'MS', 2);
- $remise_percent = price2num(GETPOST('remise_percent'.$predef), '', 2);
+ $qty = price2num(GETPOST('qty'.$predef, 'alpha'), 'MS', 2);
+ $remise_percent = (GETPOSTISSET('remise_percent'.$predef) ? price2num(GETPOST('remise_percent'.$predef, 'alpha'), '', 2) : 0);
+ if (empty($remise_percent)) {
+ $remise_percent = 0;
+ }
// Extrafields
$extralabelsline = $extrafields->fetch_name_optionals_label($object->table_element_line);
@@ -2050,8 +2074,8 @@ if (empty($reshook)) {
setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv('Type')), null, 'errors');
$error++;
}
- if (($prod_entry_mode == 'free' && (empty($idprod) || $idprod < 0) && (($price_ht < 0 && empty($conf->global->FACTURE_ENABLE_NEGATIVE_LINES)) || $price_ht == '') && $price_ht_devise == '') && $object->type != Facture::TYPE_CREDIT_NOTE) { // Unit price can be 0 but not ''
- if ($price_ht < 0 && empty($conf->global->FACTURE_ENABLE_NEGATIVE_LINES)) {
+ if ($prod_entry_mode == 'free' && (empty($idprod) || $idprod < 0) && (($price_ht < 0 && empty($conf->global->FACTURE_ENABLE_NEGATIVE_LINES)) || $price_ht == '') && (($price_ht_devise < 0 && empty($conf->global->FACTURE_ENABLE_NEGATIVE_LINES)) || $price_ht_devise == '') && $price_ttc === '' && $price_ttc_devise === '' && $object->type != Facture::TYPE_CREDIT_NOTE) { // Unit price can be 0 but not ''
+ if (($price_ht < 0 || $price_ttc < 0) && empty($conf->global->FACTURE_ENABLE_NEGATIVE_LINES)) {
$langs->load("errors");
if ($object->type == $object::TYPE_DEPOSIT) {
// Using negative lines on deposit lead to headach and blocking problems when you want to consume them.
@@ -2079,7 +2103,7 @@ if (empty($reshook)) {
$error++;
}
- if (!$error && !empty($conf->variants->enabled) && $prod_entry_mode != 'free') {
+ if (!$error && isModEnabled('variants') && $prod_entry_mode != 'free') {
if ($combinations = GETPOST('combinations', 'array')) {
//Check if there is a product with the given combination
$prodcomb = new ProductCombination($db);
@@ -2131,19 +2155,22 @@ if (empty($reshook)) {
$price_min = $datapriceofproduct['price_min'];
$price_min_ttc = $datapriceofproduct['price_min_ttc'];
$price_base_type = $datapriceofproduct['price_base_type'];
+
$tva_tx = $datapriceofproduct['tva_tx'];
$tva_npr = $datapriceofproduct['tva_npr'];
$tmpvat = price2num(preg_replace('/\s*\(.*\)/', '', $tva_tx));
$tmpprodvat = price2num(preg_replace('/\s*\(.*\)/', '', $prod->tva_tx));
- // if price ht was forced (ie: from gui when calculated by margin rate and cost price). TODO Why this ?
+ // Set unit price to use
if (!empty($price_ht) || $price_ht === '0') {
$pu_ht = price2num($price_ht, 'MU');
$pu_ttc = price2num($pu_ht * (1 + ($tmpvat / 100)), 'MU');
+ } elseif (!empty($price_ttc) || $price_ttc === '0') {
+ $pu_ttc = price2num($price_ttc, 'MU');
+ $pu_ht = price2num($pu_ttc / (1 + ($tmpvat / 100)), 'MU');
} elseif ($tmpvat != $tmpprodvat) {
- // On reevalue prix selon taux tva car taux tva transaction peut etre different
- // de ceux du produit par defaut (par exemple si pays different entre vendeur et acheteur).
+ // Is this still used ?
if ($price_base_type != 'HT') {
$pu_ht = price2num($pu_ttc / (1 + ($tmpvat / 100)), 'MU');
} else {
@@ -2231,7 +2258,7 @@ if (empty($reshook)) {
$fk_unit = $prod->fk_unit;
} else {
$pu_ht = price2num($price_ht, 'MU');
- $pu_ttc = price2num(GETPOST('price_ttc'), 'MU');
+ $pu_ttc = price2num($price_ttc, 'MU');
$tva_npr = (preg_match('/\*/', $tva_tx) ? 1 : 0);
$tva_tx = str_replace('*', '', $tva_tx);
if (empty($tva_tx)) {
@@ -2241,10 +2268,17 @@ if (empty($reshook)) {
$desc = $product_desc;
$type = GETPOST('type');
$fk_unit = GETPOST('units', 'alpha');
+
$pu_ht_devise = price2num($price_ht_devise, 'MU');
$pu_ttc_devise = price2num($price_ttc_devise, 'MU');
+
+ if ($pu_ttc && !$pu_ht) {
+ $price_base_type = 'TTC';
+ }
}
+ $pu_ht_devise = price2num($price_ht_devise, 'MU');
+
// Margin
$fournprice = price2num(GETPOST('fournprice'.$predef) ? GETPOST('fournprice'.$predef) : '');
$buyingprice = price2num(GETPOST('buying_price'.$predef) != '' ? GETPOST('buying_price'.$predef) : ''); // If buying_price is '0', we must keep this value
@@ -2290,7 +2324,7 @@ if (empty($reshook)) {
if (!$error) {
// Add batchinfo if the detail_batch array is defined
- if (!empty($conf->productbatch->enabled) && !empty($lines[$i]->detail_batch) && is_array($lines[$i]->detail_batch) && !empty($conf->global->INVOICE_INCUDE_DETAILS_OF_LOTS_SERIALS)) {
+ if (isModEnabled('productbatch') && !empty($lines[$i]->detail_batch) && is_array($lines[$i]->detail_batch) && !empty($conf->global->INVOICE_INCUDE_DETAILS_OF_LOTS_SERIALS)) {
$langs->load('productbatch');
foreach ($lines[$i]->detail_batch as $batchline) {
$desc .= ' '.$langs->trans('Batch').' '.$batchline->batch.' '.$langs->trans('printQty', $batchline->qty).' ';
@@ -2305,10 +2339,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -2381,12 +2415,14 @@ if (empty($reshook)) {
$description = dol_htmlcleanlastbr(GETPOST('product_desc', 'restricthtml') ? GETPOST('product_desc', 'restricthtml') : GETPOST('desc', 'restricthtml'));
$vat_rate = (GETPOST('tva_tx') ? GETPOST('tva_tx') : 0);
$vat_rate = str_replace('*', '', $vat_rate);
+
$pu_ht = price2num(GETPOST('price_ht'), '', 2);
$pu_ttc = price2num(GETPOST('price_ttc'), '', 2);
- $pu_ht_devise = price2num(GETPOST('multicurrency_subprice'), '', 2);
- //$pu_ttc_devise = price2num(GETPOST('multicurrency_subprice_ttc'), '', 2);
- $qty = GETPOST('qty');
+ $pu_ht_devise = price2num(GETPOST('multicurrency_subprice'), '', 2);
+ $pu_ttc_devise = price2num(GETPOST('multicurrency_subprice_ttc'), '', 2);
+
+ $qty = price2num(GETPOST('qty', 'alpha'), 'MS');
// Define info_bits
$info_bits = 0;
@@ -2495,8 +2531,8 @@ if (empty($reshook)) {
setEventMessages($langs->trans('ErrorQtyForCustomerInvoiceCantBeNegative'), null, 'errors');
$error++;
}
- if ((empty($productid) && (($pu_ht < 0 && empty($conf->global->FACTURE_ENABLE_NEGATIVE_LINES)) || $pu_ht == '') && $pu_ht_devise == '') && $object->type != Facture::TYPE_CREDIT_NOTE) { // Unit price can be 0 but not ''
- if ($pu_ht < 0 && empty($conf->global->FACTURE_ENABLE_NEGATIVE_LINES)) {
+ if (empty($productid) && (($pu_ht < 0 && empty($conf->global->FACTURE_ENABLE_NEGATIVE_LINES)) || $pu_ht == '') && (($pu_ht_devise < 0 && empty($conf->global->FACTURE_ENABLE_NEGATIVE_LINES)) || $pu_ht_devise == '') && $pu_ttc === '' && $pu_ttc_devise === '' && $object->type != Facture::TYPE_CREDIT_NOTE) { // Unit price can be 0 but not ''
+ if (($pu_ht < 0 || $pu_ttc < 0) && empty($conf->global->FACTURE_ENABLE_NEGATIVE_LINES)) {
$langs->load("errors");
if ($object->type == $object::TYPE_DEPOSIT) {
// Using negative lines on deposit lead to headach and blocking problems when you want to consume them.
@@ -2524,10 +2560,17 @@ if (empty($reshook)) {
}
}
+ $price_base_type = 'HT';
+ $pu = $pu_ht;
+ if (empty($pu) && !empty($pu_ttc)) {
+ $pu = $pu_ttc;
+ $price_base_type = 'TTC';
+ }
+
$result = $object->updateline(
GETPOST('lineid', 'int'),
$description,
- $pu_ht,
+ $pu,
$qty,
$remise_percent,
$date_start,
@@ -2535,7 +2578,7 @@ if (empty($reshook)) {
$vat_rate,
$localtax1_rate,
$localtax2_rate,
- 'HT',
+ $price_base_type,
$info_bits,
$type,
GETPOST('fk_parent_line', 'int'),
@@ -2555,10 +2598,10 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -2910,7 +2953,7 @@ $formmargin = new FormMargin($db);
$soc = new Societe($db);
$paymentstatic = new Paiement($db);
$bankaccountstatic = new Account($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -3032,7 +3075,7 @@ if ($action == 'create') {
$remise_percent = (!empty($objectsrc->remise_percent) ? $objectsrc->remise_percent : (!empty($soc->remise_percent) ? $soc->remise_percent : 0));
$remise_absolue = (!empty($objectsrc->remise_absolue) ? $objectsrc->remise_absolue : (!empty($soc->remise_absolue) ? $soc->remise_absolue : 0));
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
if (!empty($objectsrc->multicurrency_code)) {
$currency_code = $objectsrc->multicurrency_code;
}
@@ -3054,7 +3097,7 @@ if ($action == 'create') {
$remise_absolue = 0;
$dateinvoice = (empty($dateinvoice) ? (empty($conf->global->MAIN_AUTOFILL_DATE) ?-1 : '') : $dateinvoice); // Do not set 0 here (0 for a date is 1970)
- if (!empty($conf->multicurrency->enabled) && !empty($soc->multicurrency_code)) {
+ if (isModEnabled('multicurrency') && !empty($soc->multicurrency_code)) {
$currency_code = $soc->multicurrency_code;
}
}
@@ -3327,13 +3370,13 @@ if ($action == 'create') {
);
$typedeposit = GETPOST('typedeposit', 'aZ09');
$valuedeposit = GETPOST('valuedeposit', 'int');
- if (empty($typedeposit) && ! empty($objectsrc->deposit_percent)) {
+ if (empty($typedeposit) && !empty($objectsrc->deposit_percent)) {
$origin_payment_conditions_deposit_percent = getDictionaryValue('c_payment_term', 'deposit_percent', $objectsrc->cond_reglement_id);
- if (! empty($origin_payment_conditions_deposit_percent)) {
+ if (!empty($origin_payment_conditions_deposit_percent)) {
$typedeposit = 'variable';
}
}
- if (empty($valuedeposit) && $typedeposit == 'variable' && ! empty($objectsrc->deposit_percent)) {
+ if (empty($valuedeposit) && $typedeposit == 'variable' && !empty($objectsrc->deposit_percent)) {
$valuedeposit = $objectsrc->deposit_percent;
}
print $form->selectarray('typedeposit', $arraylist, $typedeposit, 0, 0, 0, '', 1);
@@ -3688,7 +3731,7 @@ if ($action == 'create') {
print ' ';
// Bank Account
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ''.$langs->trans('BankAccount').' ';
print img_picto('', 'bank_account', 'class="pictofixedwidth"');
print $form->select_comptes(($fk_account < 0 ? '' : $fk_account), 'fk_account', 0, '', 1, '', 0, 'maxwidth200 widthcentpercentminusx', 1);
@@ -3696,7 +3739,7 @@ if ($action == 'create') {
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load('projects');
print ' '.$langs->trans('Project').' ';
print img_picto('', 'project').$formproject->select_projects(($socid > 0 ? $socid : -1), $projectid, 'projectid', 0, 0, 1, 1, 0, 0, 0, '', 1, 0, 'maxwidth500 widthcentpercentminusxx');
@@ -3705,7 +3748,7 @@ if ($action == 'create') {
}
// Incoterms
- if (!empty($conf->incoterm->enabled)) {
+ if (isModEnabled('incoterm')) {
print ' ';
print ''.$form->textwithpicto($langs->trans("IncotermLabel"), !empty($objectsrc->label_incoterms) ? $objectsrc->label_incoterms : '', 1).' ';
print '';
@@ -3753,7 +3796,7 @@ if ($action == 'create') {
print " ";
// Multicurrency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
print '';
print ''.$form->editfieldkey('Currency', 'multicurrency_code', '', $object, 0).' ';
print '';
@@ -3874,7 +3917,7 @@ if ($action == 'create') {
}
print ' '.$langs->trans('AmountTTC').' '.price($objectsrc->total_ttc)." ";
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
print ''.$langs->trans('MulticurrencyAmountHT').' '.price($objectsrc->multicurrency_total_ht).' ';
print ''.$langs->trans('MulticurrencyAmountVAT').' '.price($objectsrc->multicurrency_total_tva)." ";
print ''.$langs->trans('MulticurrencyAmountTTC').' '.price($objectsrc->multicurrency_total_ttc)." ";
@@ -3950,7 +3993,7 @@ if ($action == 'create') {
$resteapayer = price2num($object->total_ttc - $totalpaid - $totalcreditnotes - $totaldeposits, 'MT');
// Multicurrency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
$multicurrency_totalpaid = $object->getSommePaiement(1);
$multicurrency_totalcreditnotes = $object->getSumCreditNotesUsed(1);
$multicurrency_totaldeposits = $object->getSumDepositsUsed(1);
@@ -4322,7 +4365,7 @@ if ($action == 'create') {
$morehtmlref .= ' ('.$langs->trans("OtherBills").' )';
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($usercancreate) {
@@ -4542,7 +4585,7 @@ if ($action == 'create') {
print '';
// Multicurrency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
// Multicurrency code
print '';
print '';
@@ -4588,7 +4631,7 @@ if ($action == 'create') {
}
// Bank Account
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ' ';
print '';
print $langs->trans('BankAccount');
@@ -4608,7 +4651,7 @@ if ($action == 'create') {
}
// Incoterms
- if (!empty($conf->incoterm->enabled)) {
+ if (isModEnabled('incoterm')) {
print ' ';
print '';
print $langs->trans('IncotermLabel');
@@ -4746,7 +4789,7 @@ if ($action == 'create') {
$sign = -1; // We invert sign for output
}
- if (!empty($conf->multicurrency->enabled) && ($object->multicurrency_code != $conf->currency)) {
+ if (isModEnabled('multicurrency') && ($object->multicurrency_code != $conf->currency)) {
// Multicurrency Amount HT
print ' '.$form->editfieldkey('MulticurrencyAmountHT', 'multicurrency_total_ht', '', $object, 0).' ';
print ''.price($sign * $object->multicurrency_total_ht, '', $langs, 0, -1, -1, (!empty($object->multicurrency_code) ? $object->multicurrency_code : $conf->currency)).' ';
@@ -4841,10 +4884,10 @@ if ($action == 'create') {
$nbrows = 8;
$nbcols = 3;
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$nbrows++;
}
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$nbrows++;
$nbcols++;
}
@@ -4857,10 +4900,10 @@ if ($action == 'create') {
if ($selleruserevenustamp) {
$nbrows++;
}
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
$nbrows += 5;
}
- if (!empty($conf->incoterm->enabled)) {
+ if (isModEnabled('incoterm')) {
$nbrows += 1;
}
@@ -4873,7 +4916,7 @@ if ($action == 'create') {
print ''.$langs->trans('ListOfSituationInvoices').' ';
print ' ';
print ''.$langs->trans('Situation').' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ' ';
}
print ''.$langs->trans('AmountHT').' ';
@@ -4897,7 +4940,7 @@ if ($action == 'create') {
print ''.$prev_invoice->getNomUrl(1).' ';
print ' ';
print ''.(($prev_invoice->type == Facture::TYPE_CREDIT_NOTE) ? $langs->trans('situationInvoiceShortcode_AS') : $langs->trans('situationInvoiceShortcode_S')).$prev_invoice->situation_counter.' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ' ';
}
print ''.price($prev_invoice->total_ht).' ';
@@ -4917,7 +4960,7 @@ if ($action == 'create') {
print ''.$object->getNomUrl(1).' ';
print ' ';
print ''.(($object->type == Facture::TYPE_CREDIT_NOTE) ? $langs->trans('situationInvoiceShortcode_AS') : $langs->trans('situationInvoiceShortcode_S')).$object->situation_counter.' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ' ';
}
print ''.price($object->total_ht).' ';
@@ -4940,7 +4983,7 @@ if ($action == 'create') {
$i++;
}
print '';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ' ';
}
print ''.price($total_global_ht).' ';
@@ -4955,7 +4998,7 @@ if ($action == 'create') {
print '' . $langs->trans('ListOfNextSituationInvoices') . ' ';
print ' ';
print ' ';
- if (! empty($conf->banque->enabled)) print ' ';
+ if (isModEnabled('banque')) print ' ';
print '' . $langs->trans('AmountHT') . ' ';
print '' . $langs->trans('AmountTTC') . ' ';
print ' ';
@@ -4972,7 +5015,7 @@ if ($action == 'create') {
print ''.$next_invoice->getNomUrl(1).' ';
print ' ';
print ''.(($next_invoice->type == Facture::TYPE_CREDIT_NOTE) ? $langs->trans('situationInvoiceShortcode_AS') : $langs->trans('situationInvoiceShortcode_S')).$next_invoice->situation_counter.' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ' ';
}
print ''.price($next_invoice->total_ht).' ';
@@ -4986,7 +5029,7 @@ if ($action == 'create') {
print '';
print ' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ' ';
}
print ''.price($total_global_ht).' ';
@@ -5013,7 +5056,7 @@ if ($action == 'create') {
print ''.($object->type == Facture::TYPE_CREDIT_NOTE ? $langs->trans("PaymentsBack") : $langs->trans('Payments')).' ';
print ''.$langs->trans('Date').' ';
print ''.$langs->trans('Type').' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ''.$langs->trans('BankAccount').' ';
}
print ''.$langs->trans('Amount').' ';
@@ -5062,14 +5105,14 @@ if ($action == 'create') {
print '';
$label = ($langs->trans("PaymentType".$objp->payment_code) != ("PaymentType".$objp->payment_code)) ? $langs->trans("PaymentType".$objp->payment_code) : $objp->payment_label;
print ''.$label.' '.$objp->num_payment.' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$bankaccountstatic->id = $objp->baid;
$bankaccountstatic->ref = $objp->baref;
$bankaccountstatic->label = $objp->baref;
$bankaccountstatic->number = $objp->banumber;
$bankaccountstatic->currency_code = $objp->bacurrency_code;
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$bankaccountstatic->account_number = $objp->account_number;
$accountingjournal = new AccountingJournal($db);
@@ -5297,7 +5340,7 @@ if ($action == 'create') {
print '';
// Margin Infos
- if (!empty($conf->margin->enabled)) {
+ if (isModEnabled('margin')) {
$formmargin->displayMarginInfos($object);
}
@@ -5318,10 +5361,15 @@ if ($action == 'create') {
include DOL_DOCUMENT_ROOT.'/core/tpl/bloc_showhide.tpl.php';
}
- // Lines
+ // Get object lines
$result = $object->getLinesArray();
- // Show global modifiers
+ // Add products/services form
+ //$forceall = 1;
+ global $inputalsopricewithtax;
+ $inputalsopricewithtax = 1;
+
+ // Show global modifiers for situation invoices
if (!empty($conf->global->INVOICE_USE_SITUATION)) {
if ($object->situation_cycle_ref && $object->statut == 0) {
print ''."\n";
@@ -5363,7 +5411,7 @@ if ($action == 'create') {
}
}
- print ' id.(($action != 'editline') ? '' : '#line_'.GETPOST('lineid', 'int')).'" method="POST">
+ print ' id.'" method="POST">
@@ -5466,7 +5514,7 @@ if ($action == 'create') {
// Create contract
if (!empty($conf->global->CONTRACT_CREATE_FROM_INVOICE)) {
- if (!empty($conf->contrat->enabled) && $object->statut == Facture::STATUS_VALIDATED) {
+ if (isModEnabled('contrat') && $object->statut == Facture::STATUS_VALIDATED) {
$langs->load("contracts");
if ($usercancreatecontract) {
@@ -5515,7 +5563,7 @@ if ($action == 'create') {
}
// POS Ticket
- if (!empty($conf->takepos->enabled) && $object->module_source == 'takepos') {
+ if (isModEnabled('takepos') && $object->module_source == 'takepos') {
$langs->load("cashdesk");
$receipt_url = DOL_URL_ROOT."/takepos/receipt.php";
print ''.$langs->trans('POSTicket').' ';
diff --git a/htdocs/compta/facture/class/api_invoices.class.php b/htdocs/compta/facture/class/api_invoices.class.php
index 285d9d366f7..51c094d898e 100644
--- a/htdocs/compta/facture/class/api_invoices.class.php
+++ b/htdocs/compta/facture/class/api_invoices.class.php
@@ -1410,7 +1410,7 @@ class Invoices extends DolibarrApi
throw new RestException(403, 'Access not allowed for login '.DolibarrApiAccess::$user->login);
}
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
if (empty($accountid)) {
throw new RestException(400, 'Account ID is mandatory');
}
@@ -1469,7 +1469,7 @@ class Invoices extends DolibarrApi
throw new RestException(400, 'Payment error : '.$paymentobj->error);
}
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$label = '(CustomerInvoicePayment)';
if ($paymentobj->paiementcode == 'CHQ' && empty($chqemetteur)) {
@@ -1533,7 +1533,7 @@ class Invoices extends DolibarrApi
}
}
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
if (empty($accountid)) {
throw new RestException(400, 'Account ID is mandatory');
}
@@ -1617,7 +1617,7 @@ class Invoices extends DolibarrApi
$this->db->rollback();
throw new RestException(400, 'Payment error : '.$paymentobj->error);
}
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$label = '(CustomerInvoicePayment)';
if ($paymentobj->paiementcode == 'CHQ' && empty($chqemetteur)) {
throw new RestException(400, 'Emetteur is mandatory when payment code is '.$paymentobj->paiementcode);
diff --git a/htdocs/compta/facture/class/facture-rec.class.php b/htdocs/compta/facture/class/facture-rec.class.php
index f15f65954cf..a2d675c3c73 100644
--- a/htdocs/compta/facture/class/facture-rec.class.php
+++ b/htdocs/compta/facture/class/facture-rec.class.php
@@ -25,7 +25,7 @@
/**
* \file htdocs/compta/facture/class/facture-rec.class.php
* \ingroup facture
- * \brief Fichier de la classe des factures recurentes
+ * \brief File of class to manage recurring invoices
*/
require_once DOL_DOCUMENT_ROOT.'/core/class/notify.class.php';
@@ -181,7 +181,7 @@ class FactureRec extends CommonInvoice
'total_ht' =>array('type'=>'double(24,8)', 'label'=>'Total', 'enabled'=>1, 'visible'=>-1, 'position'=>70, 'isameasure'=>1),
'total_ttc' =>array('type'=>'double(24,8)', 'label'=>'Total ttc', 'enabled'=>1, 'visible'=>-1, 'position'=>75, 'isameasure'=>1),
'fk_user_author' =>array('type'=>'integer:User:user/class/user.class.php', 'label'=>'Fk user author', 'enabled'=>1, 'visible'=>-1, 'position'=>80),
- 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Fk projet', 'enabled'=>'$conf->project->enabled', 'visible'=>-1, 'position'=>85),
+ 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Fk projet', 'enabled'=>"isModEnabled('project')", 'visible'=>-1, 'position'=>85),
'fk_cond_reglement' =>array('type'=>'integer', 'label'=>'Fk cond reglement', 'enabled'=>1, 'visible'=>-1, 'position'=>90),
'fk_mode_reglement' =>array('type'=>'integer', 'label'=>'Fk mode reglement', 'enabled'=>1, 'visible'=>-1, 'position'=>95),
'date_lim_reglement' =>array('type'=>'date', 'label'=>'Date lim reglement', 'enabled'=>1, 'visible'=>-1, 'position'=>100),
@@ -462,7 +462,7 @@ class FactureRec extends CommonInvoice
/**
- * Update a line to invoice_rec.
+ * Update a line invoice_rec.
*
* @param User $user User
* @param int $notrigger No trigger
@@ -470,8 +470,6 @@ class FactureRec extends CommonInvoice
*/
public function update(User $user, $notrigger = 0)
{
- global $conf;
-
$error = 0;
$sql = "UPDATE ".MAIN_DB_PREFIX."facture_rec SET";
@@ -480,8 +478,8 @@ class FactureRec extends CommonInvoice
$sql .= " suspended = ".((int) $this->suspended).",";
$sql .= " fk_soc = ".((int) $this->socid).",";
$sql .= " total_tva = ".((float) $this->total_tva).",";
- $sql .= " localtax1 = ".((float) $this->localtax1).",";
- $sql .= " localtax2 = ".((float) $this->localtax2).",";
+ $sql .= " localtax1 = ".((float) $this->total_localtax1).",";
+ $sql .= " localtax2 = ".((float) $this->total_localtax2).",";
$sql .= " total_ht = ".((float) $this->total_ht).",";
$sql .= " total_ttc = ".((float) $this->total_ttc).",";
$sql .= " remise_percent = ".((float) $this->remise_percent);
diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php
index 91b5df73a00..c6281e77e67 100644
--- a/htdocs/compta/facture/class/facture.class.php
+++ b/htdocs/compta/facture/class/facture.class.php
@@ -47,10 +47,10 @@ require_once DOL_DOCUMENT_ROOT.'/societe/class/client.class.php';
require_once DOL_DOCUMENT_ROOT.'/margin/lib/margins.lib.php';
require_once DOL_DOCUMENT_ROOT.'/multicurrency/class/multicurrency.class.php';
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formaccounting.class.php';
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php';
}
@@ -348,12 +348,12 @@ class Facture extends CommonInvoice
'fk_incoterms' =>array('type'=>'integer', 'label'=>'IncotermCode', 'enabled'=>'$conf->incoterm->enabled', 'visible'=>-1, 'position'=>260),
'location_incoterms' =>array('type'=>'varchar(255)', 'label'=>'IncotermLabel', 'enabled'=>'$conf->incoterm->enabled', 'visible'=>-1, 'position'=>265),
'date_pointoftax' =>array('type'=>'date', 'label'=>'DatePointOfTax', 'enabled'=>'$conf->global->INVOICE_POINTOFTAX_DATE', 'visible'=>-1, 'position'=>270),
- 'fk_multicurrency' =>array('type'=>'integer', 'label'=>'MulticurrencyID', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>275),
- 'multicurrency_code' =>array('type'=>'varchar(255)', 'label'=>'Currency', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>280),
- 'multicurrency_tx' =>array('type'=>'double(24,8)', 'label'=>'CurrencyRate', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>285, 'isameasure'=>1),
- 'multicurrency_total_ht' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountHT', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>290, 'isameasure'=>1),
- 'multicurrency_total_tva' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountVAT', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>291, 'isameasure'=>1),
- 'multicurrency_total_ttc' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountTTC', 'enabled'=>'$conf->multicurrency->enabled', 'visible'=>-1, 'position'=>292, 'isameasure'=>1),
+ 'fk_multicurrency' =>array('type'=>'integer', 'label'=>'MulticurrencyID', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>275),
+ 'multicurrency_code' =>array('type'=>'varchar(255)', 'label'=>'Currency', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>280),
+ 'multicurrency_tx' =>array('type'=>'double(24,8)', 'label'=>'CurrencyRate', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>285, 'isameasure'=>1),
+ 'multicurrency_total_ht' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountHT', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>290, 'isameasure'=>1),
+ 'multicurrency_total_tva' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountVAT', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>291, 'isameasure'=>1),
+ 'multicurrency_total_ttc' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountTTC', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>292, 'isameasure'=>1),
'fk_fac_rec_source' =>array('type'=>'integer', 'label'=>'RecurringInvoiceSource', 'enabled'=>1, 'visible'=>-1, 'position'=>305),
'last_main_doc' =>array('type'=>'varchar(255)', 'label'=>'LastMainDoc', 'enabled'=>1, 'visible'=>-1, 'position'=>310),
'module_source' =>array('type'=>'varchar(32)', 'label'=>'POSModule', 'enabled'=>1, 'visible'=>-1, 'position'=>315),
@@ -598,10 +598,10 @@ class Facture extends CommonInvoice
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && isset($this->thirdparty->default_lang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && isset($this->thirdparty->default_lang)) {
$newlang = $this->thirdparty->default_lang; // for proposal, order, invoice, ...
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && isset($this->default_lang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && isset($this->default_lang)) {
$newlang = $this->default_lang; // for thirdparty
}
if (!empty($newlang)) {
@@ -1587,7 +1587,7 @@ class Facture extends CommonInvoice
$amountdeposit = array();
$descriptions = array();
- if (! empty($conf->global->MAIN_DEPOSIT_MULTI_TVA)) {
+ if (!empty($conf->global->MAIN_DEPOSIT_MULTI_TVA)) {
$amount = $origin->total_ttc * ($origin->deposit_percent / 100);
$TTotalByTva = array();
@@ -1596,8 +1596,8 @@ class Facture extends CommonInvoice
continue;
}
$TTotalByTva[$line->tva_tx] += $line->total_ttc;
- $descriptions[$line->tva_tx] .= '' . (! empty($line->product_ref) ? $line->product_ref . ' - ' : '');
- $descriptions[$line->tva_tx] .= (! empty($line->product_label) ? $line->product_label . ' - ' : '');
+ $descriptions[$line->tva_tx] .= ' ' . (!empty($line->product_ref) ? $line->product_ref . ' - ' : '');
+ $descriptions[$line->tva_tx] .= (!empty($line->product_label) ? $line->product_label . ' - ' : '');
$descriptions[$line->tva_tx] .= $langs->trans('Qty') . ' : ' . $line->qty;
$descriptions[$line->tva_tx] .= ' - ' . $langs->trans('TotalHT') . ' : ' . price($line->total_ht) . ' ';
}
@@ -1623,8 +1623,8 @@ class Facture extends CommonInvoice
$totalamount += $lines[$i]->total_ht; // Fixme : is it not for the customer ? Shouldn't we take total_ttc ?
$tva_tx = $lines[$i]->tva_tx;
$amountdeposit[$tva_tx] += ($lines[$i]->total_ht * $origin->deposit_percent) / 100;
- $descriptions[$tva_tx] .= '' . (! empty($lines[$i]->product_ref) ? $lines[$i]->product_ref . ' - ' : '');
- $descriptions[$tva_tx] .= (! empty($lines[$i]->product_label) ? $lines[$i]->product_label . ' - ' : '');
+ $descriptions[$tva_tx] .= ' ' . (!empty($lines[$i]->product_ref) ? $lines[$i]->product_ref . ' - ' : '');
+ $descriptions[$tva_tx] .= (!empty($lines[$i]->product_label) ? $lines[$i]->product_label . ' - ' : '');
$descriptions[$tva_tx] .= $langs->trans('Qty') . ' : ' . $lines[$i]->qty;
$descriptions[$tva_tx] .= ' - ' . $langs->trans('TotalHT') . ' : ' . price($lines[$i]->total_ht) . ' ';
}
@@ -1644,7 +1644,7 @@ class Facture extends CommonInvoice
$descline = '(DEPOSIT) ('. $origin->deposit_percent .'%) - '.$origin->ref;
// Hidden conf
- if (! empty($conf->global->INVOICE_DEPOSIT_VARIABLE_MODE_DETAIL_LINES_IN_DESCRIPTION) && ! empty($descriptions[$tva])) {
+ if (!empty($conf->global->INVOICE_DEPOSIT_VARIABLE_MODE_DETAIL_LINES_IN_DESCRIPTION) && !empty($descriptions[$tva])) {
$descline .= '' . $descriptions[$tva] . ' ';
}
@@ -1739,7 +1739,7 @@ class Facture extends CommonInvoice
return null;
}
- if (! empty($autoValidateDeposit)) {
+ if (!empty($autoValidateDeposit)) {
$validateReturn = $deposit->validate($user, '', 0, $notrigger);
if ($validateReturn < 0) {
diff --git a/htdocs/compta/facture/contact.php b/htdocs/compta/facture/contact.php
index 78d1aaaa1cc..6b7d8108bda 100644
--- a/htdocs/compta/facture/contact.php
+++ b/htdocs/compta/facture/contact.php
@@ -31,7 +31,7 @@ require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/discount.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -137,7 +137,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1, 'customer');
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->facture->creer) {
diff --git a/htdocs/compta/facture/document.php b/htdocs/compta/facture/document.php
index 5c57f89f51b..36ed546ab41 100644
--- a/htdocs/compta/facture/document.php
+++ b/htdocs/compta/facture/document.php
@@ -34,7 +34,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
include_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -92,20 +92,24 @@ include DOL_DOCUMENT_ROOT.'/core/actions_linkedfiles.inc.php';
* View
*/
-if (empty($object->id)) {
- llxHeader();
- $langs->load('errors');
- echo ''.$langs->trans("ErrorRecordNotFound").'
';
- llxFooter();
- exit;
-}
+$form = new Form($db);
-$title = $object->ref." - ".$langs->trans('Documents');
+if (empty($object->id)) {
+ $title = $langs->trans('Documents');
+} else {
+ $title = $object->ref." - ".$langs->trans('Documents');
+}
$help_url = "EN:Customers_Invoices|FR:Factures_Clients|ES:Facturas_a_clientes";
llxHeader('', $title, $help_url);
-$form = new Form($db);
+if (empty($object->id)) {
+ $langs->load('errors');
+ echo ''.$langs->trans("ErrorRecordNotFound").'
';
+
+ llxFooter();
+ exit;
+}
if ($id > 0 || !empty($ref)) {
if ($object->fetch($id, $ref) > 0) {
@@ -137,7 +141,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1, 'customer');
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->facture->creer) {
diff --git a/htdocs/compta/facture/info.php b/htdocs/compta/facture/info.php
index ddd74de0211..de08730d2c5 100644
--- a/htdocs/compta/facture/info.php
+++ b/htdocs/compta/facture/info.php
@@ -28,7 +28,7 @@ require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/discount.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
include_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -97,7 +97,7 @@ $morehtmlref .= $form->editfieldval("RefCustomer", 'ref_client', $object->ref_cl
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1, 'customer');
// Project
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->facture->creer) {
diff --git a/htdocs/compta/facture/invoicetemplate_list.php b/htdocs/compta/facture/invoicetemplate_list.php
index 1f516c31795..71573505a7f 100644
--- a/htdocs/compta/facture/invoicetemplate_list.php
+++ b/htdocs/compta/facture/invoicetemplate_list.php
@@ -257,7 +257,7 @@ llxHeader('', $langs->trans("RepeatableInvoices"), 'ch-facture.html#s-fac-factur
$form = new Form($db);
$formother = new FormOther($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
$companystatic = new Societe($db);
diff --git a/htdocs/compta/facture/list.php b/htdocs/compta/facture/list.php
index 5442fd1704a..309ec6fdae6 100644
--- a/htdocs/compta/facture/list.php
+++ b/htdocs/compta/facture/list.php
@@ -39,7 +39,7 @@ require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php';
-if (!empty($conf->margin->enabled)) {
+if (isModEnabled('margin')) {
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formmargin.class.php';
}
require_once DOL_DOCUMENT_ROOT.'/core/modules/facture/modules_facture.php';
@@ -53,7 +53,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
}
@@ -215,8 +215,8 @@ $arrayfields = array(
'f.date_valid'=>array('label'=>"DateValidation", 'checked'=>0, 'position'=>22),
'f.date_lim_reglement'=>array('label'=>"DateDue", 'checked'=>1, 'position'=>25),
'f.date_closing'=>array('label'=>"DateClosing", 'checked'=>0, 'position'=>30),
- 'p.ref'=>array('label'=>"ProjectRef", 'checked'=>1, 'enabled'=>(empty($conf->project->enabled) ? 0 : 1), 'position'=>40),
- 'p.title'=>array('label'=>"ProjectLabel", 'checked'=>0, 'enabled'=>(empty($conf->project->enabled) ? 0 : 1), 'position'=>41),
+ 'p.ref'=>array('label'=>"ProjectRef", 'checked'=>1, 'enabled'=>(!isModEnabled('project') ? 0 : 1), 'position'=>40),
+ 'p.title'=>array('label'=>"ProjectLabel", 'checked'=>0, 'enabled'=>(!isModEnabled('project') ? 0 : 1), 'position'=>41),
's.nom'=>array('label'=>"ThirdParty", 'checked'=>1, 'position'=>50),
's.name_alias'=>array('label'=>"AliasNameShort", 'checked'=>1, 'position'=>51),
's.town'=>array('label'=>"Town", 'checked'=>-1, 'position'=>55),
@@ -237,13 +237,13 @@ $arrayfields = array(
'rtp'=>array('label'=>"Rest", 'checked'=>0, 'position'=>150), // Not enabled by default because slow
'u.login'=>array('label'=>"Author", 'checked'=>1, 'position'=>165),
'sale_representative'=>array('label'=>"SaleRepresentativesOfThirdParty", 'checked'=>0, 'position'=>166),
- 'f.multicurrency_code'=>array('label'=>'Currency', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1), 'position'=>280),
- 'f.multicurrency_tx'=>array('label'=>'CurrencyRate', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1), 'position'=>285),
- 'f.multicurrency_total_ht'=>array('label'=>'MulticurrencyAmountHT', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1), 'position'=>290),
- 'f.multicurrency_total_vat'=>array('label'=>'MulticurrencyAmountVAT', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1), 'position'=>291),
- 'f.multicurrency_total_ttc'=>array('label'=>'MulticurrencyAmountTTC', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1), 'position'=>292),
- 'multicurrency_dynamount_payed'=>array('label'=>'MulticurrencyAlreadyPaid', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1), 'position'=>295),
- 'multicurrency_rtp'=>array('label'=>'MulticurrencyRemainderToPay', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1), 'position'=>296), // Not enabled by default because slow
+ 'f.multicurrency_code'=>array('label'=>'Currency', 'checked'=>0, 'enabled'=>(!isModEnabled('multicurrency') ? 0 : 1), 'position'=>280),
+ 'f.multicurrency_tx'=>array('label'=>'CurrencyRate', 'checked'=>0, 'enabled'=>(!isModEnabled('multicurrency') ? 0 : 1), 'position'=>285),
+ 'f.multicurrency_total_ht'=>array('label'=>'MulticurrencyAmountHT', 'checked'=>0, 'enabled'=>(!isModEnabled('multicurrency') ? 0 : 1), 'position'=>290),
+ 'f.multicurrency_total_vat'=>array('label'=>'MulticurrencyAmountVAT', 'checked'=>0, 'enabled'=>(!isModEnabled('multicurrency') ? 0 : 1), 'position'=>291),
+ 'f.multicurrency_total_ttc'=>array('label'=>'MulticurrencyAmountTTC', 'checked'=>0, 'enabled'=>(!isModEnabled('multicurrency') ? 0 : 1), 'position'=>292),
+ 'multicurrency_dynamount_payed'=>array('label'=>'MulticurrencyAlreadyPaid', 'checked'=>0, 'enabled'=>(!isModEnabled('multicurrency') ? 0 : 1), 'position'=>295),
+ 'multicurrency_rtp'=>array('label'=>'MulticurrencyRemainderToPay', 'checked'=>0, 'enabled'=>(!isModEnabled('multicurrency') ? 0 : 1), 'position'=>296), // Not enabled by default because slow
'total_pa' => array('label' => ((isset($conf->global->MARGIN_TYPE) && $conf->global->MARGIN_TYPE == '1') ? 'BuyingPrice' : 'CostPrice'), 'checked' => 0, 'position' => 300, 'enabled' => (empty($conf->margin->enabled) || empty($user->rights->margins->liretous) ? 0 : 1)),
'total_margin' => array('label' => 'Margin', 'checked' => 0, 'position' => 301, 'enabled' => (empty($conf->margin->enabled) || empty($user->rights->margins->liretous) ? 0 : 1)),
'total_margin_rate' => array('label' => 'MarginRate', 'checked' => 0, 'position' => 302, 'enabled' => (empty($conf->margin->enabled) || empty($user->rights->margins->liretous) || empty($conf->global->DISPLAY_MARGIN_RATES) ? 0 : 1)),
@@ -545,7 +545,7 @@ $form = new Form($db);
$formother = new FormOther($db);
$formfile = new FormFile($db);
$formmargin = null;
-if (!empty($conf->margin->enabled)) {
+if (isModEnabled('margin')) {
$formmargin = new FormMargin($db);
}
$bankaccountstatic = new Account($db);
@@ -1200,7 +1200,7 @@ if ($resql) {
$moreforfilter .= '';
}
// Filter on product tags
- if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire && ($user->rights->produit->lire || $user->rights->service->lire)) {
+ if (isModEnabled('categorie') && $user->rights->categorie->lire && ($user->rights->produit->lire || $user->rights->service->lire)) {
include_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
$moreforfilter .= '';
$tmptitle = $langs->trans('IncludingProductWithTag');
@@ -1208,7 +1208,7 @@ if ($resql) {
$moreforfilter .= img_picto($tmptitle, 'category', 'class="pictofixedwidth"').$form->selectarray('search_product_category', $cate_arbo, $search_product_category, $tmptitle, 0, 0, '', 0, 0, 0, 0, 'maxwidth250', 1);
$moreforfilter .= '
';
}
- if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire) {
+ if (isModEnabled('categorie') && $user->rights->categorie->lire) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
$moreforfilter .= '';
$tmptitle = $langs->trans('CustomersProspectsCategoriesShort');
@@ -1721,7 +1721,7 @@ if ($resql) {
$totalarray['val']['f.total_ttc'] = 0;
$with_margin_info = false;
- if (!empty($conf->margin->enabled) && (
+ if (isModEnabled('margin') && (
!empty($arrayfields['total_pa']['checked'])
|| !empty($arrayfields['total_margin']['checked'])
|| !empty($arrayfields['total_margin_rate']['checked'])
@@ -2356,7 +2356,7 @@ if ($resql) {
print $hookmanager->resPrint;
// Date creation
if (!empty($arrayfields['f.datec']['checked'])) {
- print '
';
+ print ' ';
print dol_print_date($db->jdate($obj->date_creation), 'dayhour', 'tzuser');
print ' ';
if (!$i) {
@@ -2365,7 +2365,7 @@ if ($resql) {
}
// Date modification
if (!empty($arrayfields['f.tms']['checked'])) {
- print '
';
+ print ' ';
print dol_print_date($db->jdate($obj->date_update), 'dayhour', 'tzuser');
print ' ';
if (!$i) {
@@ -2374,7 +2374,7 @@ if ($resql) {
}
// Date closing
if (!empty($arrayfields['f.date_closing']['checked'])) {
- print '
';
+ print ' ';
print dol_print_date($db->jdate($obj->date_closing), 'dayhour', 'tzuser');
print ' ';
if (!$i) {
diff --git a/htdocs/compta/facture/note.php b/htdocs/compta/facture/note.php
index 711921ee08e..b15e11dc614 100644
--- a/htdocs/compta/facture/note.php
+++ b/htdocs/compta/facture/note.php
@@ -29,7 +29,7 @@ require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/discount.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -77,19 +77,24 @@ if (empty($reshook)) {
* View
*/
+$form = new Form($db);
+
+if (empty($object->id)) {
+ $title = $object->ref." - ".$langs->trans('Notes');
+} else {
+ $title = $langs->trans('Notes');
+}
+$helpurl = "EN:Customers_Invoices|FR:Factures_Clients|ES:Facturas_a_clientes";
+
+llxHeader('', $title, $helpurl);
+
if (empty($object->id)) {
- llxHeader();
$langs->load('errors');
echo '
'.$langs->trans("ErrorRecordNotFound").'
';
llxFooter();
exit;
}
-$title = $object->ref." - ".$langs->trans('Notes');
-$helpurl = "EN:Customers_Invoices|FR:Factures_Clients|ES:Facturas_a_clientes";
-llxHeader('', $title, $helpurl);
-
-$form = new Form($db);
if ($id > 0 || !empty($ref)) {
$object = new Facture($db);
@@ -114,7 +119,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= '
'.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1, 'customer');
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' ';
if ($user->rights->facture->creer) {
diff --git a/htdocs/compta/facture/prelevement.php b/htdocs/compta/facture/prelevement.php
index 8bd953f98b5..5a10c2055c0 100644
--- a/htdocs/compta/facture/prelevement.php
+++ b/htdocs/compta/facture/prelevement.php
@@ -349,7 +349,7 @@ if ($object->id > 0) {
}
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' ';
if ($usercancreate) {
@@ -616,7 +616,7 @@ if ($object->id > 0) {
print '
';
- if (!empty($conf->multicurrency->enabled) && ($object->multicurrency_code != $conf->currency)) {
+ if (isModEnabled('multicurrency') && ($object->multicurrency_code != $conf->currency)) {
// Multicurrency Amount HT
print ''.$form->editfieldkey('MulticurrencyAmountHT', 'multicurrency_total_ht', '', $object, 0).' ';
print ''.price($object->multicurrency_total_ht, '', $langs, 0, - 1, - 1, (!empty($object->multicurrency_code) ? $object->multicurrency_code : $conf->currency)).' ';
diff --git a/htdocs/compta/facture/stats/index.php b/htdocs/compta/facture/stats/index.php
index cb0e38b7a34..73b9d94bdda 100644
--- a/htdocs/compta/facture/stats/index.php
+++ b/htdocs/compta/facture/stats/index.php
@@ -32,7 +32,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facturestats.class.php';
-if (!empty($conf->category->enabled)) {
+if (isModEnabled('categorie')) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
}
@@ -72,7 +72,7 @@ $endyear = $year;
/*
* View
*/
-if (!empty($conf->category->enabled)) {
+if (isModEnabled('categorie')) {
$langs->load('categories');
}
$form = new Form($db);
@@ -299,7 +299,7 @@ if ($user->admin) {
print ' ';
// Category
-if (!empty($conf->category->enabled)) {
+if (isModEnabled('categorie')) {
if ($mode == 'customer') {
$cat_type = Categorie::TYPE_CUSTOMER;
$cat_label = $langs->trans("Category").' '.lcfirst($langs->trans("Customer"));
diff --git a/htdocs/compta/index.php b/htdocs/compta/index.php
index 55ee99f4cb6..c22b1925dbb 100644
--- a/htdocs/compta/index.php
+++ b/htdocs/compta/index.php
@@ -31,6 +31,8 @@
* \brief Main page of accountancy area
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php';
@@ -50,10 +52,11 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/invoice.lib.php';
// Load translation files required by the page
$langs->loadLangs(array('compta', 'bills'));
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
$langs->load("orders");
}
+// Get parameters
$action = GETPOST('action', 'aZ09');
$bid = GETPOST('bid', 'int');
diff --git a/htdocs/compta/journal/purchasesjournal.php b/htdocs/compta/journal/purchasesjournal.php
index fda83a75668..ea320007f4d 100644
--- a/htdocs/compta/journal/purchasesjournal.php
+++ b/htdocs/compta/journal/purchasesjournal.php
@@ -48,10 +48,10 @@ $date_endyear = GETPOST('date_endyear');
if ($user->socid > 0) {
$socid = $user->socid;
}
-if (!empty($conf->comptabilite->enabled)) {
+if (isModEnabled('comptabilite')) {
$result = restrictedArea($user, 'compta', '', '', 'resultat');
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$result = restrictedArea($user, 'accounting', '', '', 'comptarapport');
}
diff --git a/htdocs/compta/journal/sellsjournal.php b/htdocs/compta/journal/sellsjournal.php
index 367ffffbdea..44cdcde6778 100644
--- a/htdocs/compta/journal/sellsjournal.php
+++ b/htdocs/compta/journal/sellsjournal.php
@@ -50,10 +50,10 @@ $date_endyear = GETPOST('date_endyear');
if ($user->socid > 0) {
$socid = $user->socid;
}
-if (!empty($conf->comptabilite->enabled)) {
+if (isModEnabled('comptabilite')) {
$result = restrictedArea($user, 'compta', '', '', 'resultat');
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$result = restrictedArea($user, 'accounting', '', '', 'comptarapport');
}
diff --git a/htdocs/compta/localtax/card.php b/htdocs/compta/localtax/card.php
index 9bd37eafa36..84f40f5cd19 100644
--- a/htdocs/compta/localtax/card.php
+++ b/htdocs/compta/localtax/card.php
@@ -174,7 +174,7 @@ if ($action == 'create') {
// Amount
print ''.$langs->trans("Amount").' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
// Type payment
print ''.$langs->trans("PaymentMode").' ';
$form->select_types_paiements(GETPOST("paiementtype"), "paiementtype", '', 0, 1, 0, 0, 1, 'maxwidth500 widthcentpercentminusx');
@@ -243,7 +243,7 @@ if ($id) {
print ' '.$langs->trans("Amount").' '.price($object->amount).' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
if ($object->fk_account > 0) {
$bankline = new AccountLine($db);
$bankline->fetch($object->fk_bank);
diff --git a/htdocs/compta/localtax/class/localtax.class.php b/htdocs/compta/localtax/class/localtax.class.php
index 63b4f982316..ed467ec91f4 100644
--- a/htdocs/compta/localtax/class/localtax.class.php
+++ b/htdocs/compta/localtax/class/localtax.class.php
@@ -467,11 +467,11 @@ class Localtax extends CommonObject
$this->error = $langs->trans("ErrorFieldRequired", $langs->transnoentities("Amount"));
return -4;
}
- if (!empty($conf->banque->enabled) && (empty($this->accountid) || $this->accountid <= 0)) {
+ if (isModEnabled("banque") && (empty($this->accountid) || $this->accountid <= 0)) {
$this->error = $langs->trans("ErrorFieldRequired", $langs->transnoentities("Account"));
return -5;
}
- if (!empty($conf->banque->enabled) && (empty($this->paymenttype) || $this->paymenttype <= 0)) {
+ if (isModEnabled("banque") && (empty($this->paymenttype) || $this->paymenttype <= 0)) {
$this->error = $langs->trans("ErrorFieldRequired", $langs->transnoentities("PaymentMode"));
return -5;
}
@@ -503,7 +503,7 @@ class Localtax extends CommonObject
$this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."localtax"); // TODO devrait s'appeler paiementlocaltax
if ($this->id > 0) {
$ok = 1;
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
// Insertion dans llx_bank
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
diff --git a/htdocs/compta/localtax/index.php b/htdocs/compta/localtax/index.php
index 28d095715c2..e9aab173337 100644
--- a/htdocs/compta/localtax/index.php
+++ b/htdocs/compta/localtax/index.php
@@ -244,7 +244,7 @@ $description .= $langs->trans($LT);
$calcmode = $langs->trans("LTReportBuildWithOptionDefinedInModule").' ';
$calcmode .= ' ('.$langs->trans("TaxModuleSetupToModifyRulesLT", DOL_URL_ROOT.'/admin/company.php').') ';
-//if (! empty($conf->global->MAIN_MODULE_ACCOUNTING)) $description.=' '.$langs->trans("ThisIsAnEstimatedValue");
+//if (!empty($conf->global->MAIN_MODULE_ACCOUNTING)) $description.=' '.$langs->trans("ThisIsAnEstimatedValue");
$period = $form->selectDate($date_start, 'date_start', 0, 0, 0, '', 1, 0).' - '.$form->selectDate($date_end, 'date_end', 0, 0, 0, '', 1, 0);
diff --git a/htdocs/compta/localtax/quadri_detail.php b/htdocs/compta/localtax/quadri_detail.php
index 969376209eb..696e70ab40d 100644
--- a/htdocs/compta/localtax/quadri_detail.php
+++ b/htdocs/compta/localtax/quadri_detail.php
@@ -190,7 +190,7 @@ $builddate = dol_now();
if ($conf->global->TAX_MODE_SELL_PRODUCT == 'payment') $description.=$langs->trans("RulesVATInProducts");
if ($conf->global->TAX_MODE_SELL_SERVICE == 'invoice') $description.=' '.$langs->trans("RulesVATDueServices");
if ($conf->global->TAX_MODE_SELL_SERVICE == 'payment') $description.=' '.$langs->trans("RulesVATInServices");
-if (! empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) {
+if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) {
$description.=' '.$langs->trans("DepositsAreNotIncluded");
}
*/
diff --git a/htdocs/compta/paiement.php b/htdocs/compta/paiement.php
index aea9f917dab..46a01e4ba70 100644
--- a/htdocs/compta/paiement.php
+++ b/htdocs/compta/paiement.php
@@ -170,7 +170,7 @@ if (empty($reshook)) {
$error++;
}
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
// If bank module is on, account is required to enter a payment
if (GETPOST('accountid') <= 0) {
setEventMessages($langs->transnoentities('ErrorFieldRequired', $langs->transnoentities('AccountToCredit')), null, 'errors');
@@ -244,7 +244,7 @@ if (empty($reshook)) {
$multicurrency_code[$key] = $tmpinvoice->multicurrency_code;
}
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
// If the bank module is active, an account is required to input a payment
if (GETPOST('accountid', 'int') <= 0) {
setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentities('AccountToCredit')), null, 'errors');
@@ -492,7 +492,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
// Bank account
print '';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
if ($facture->type != 2) {
print ''.$langs->trans('AccountToCredit').' ';
}
@@ -597,7 +597,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
print ''.$arraytitle.' ';
print ''.$langs->trans('Date').' ';
print ''.$langs->trans('DateMaxPayment').' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
print ''.$langs->trans('Currency').' ';
print ''.$langs->trans('MulticurrencyAmountTTC').' ';
print ''.$multicurrencyalreadypayedlabel.' ';
@@ -640,7 +640,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
$remaintopay = price2num($invoice->total_ttc - $paiement - $creditnotes - $deposits, 'MT');
// Multicurrency Price
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
$multicurrency_payment = $invoice->getSommePaiement(1);
$multicurrency_creditnotes = $invoice->getSumCreditNotesUsed(1);
$multicurrency_deposits = $invoice->getSumDepositsUsed(1);
@@ -676,12 +676,12 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
}
// Currency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
print ''.$objp->multicurrency_code." \n";
}
// Multicurrency Price
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
print '';
if ($objp->multicurrency_code && $objp->multicurrency_code != $conf->currency) {
print price($sign * $objp->multicurrency_total_ttc);
@@ -814,7 +814,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
// Print total
print ' ';
print ''.$langs->trans('TotalTTC').' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
print ' ';
print ' ';
print ' ';
@@ -858,10 +858,10 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
print '';
print ' '.$checkboxlabel;
- /*if (! empty($conf->prelevement->enabled))
+ /*if (!empty($conf->prelevement->enabled))
{
$langs->load("withdrawals");
- if (! empty($conf->global->WITHDRAW_DISABLE_AUTOCREATE_ONPAYMENTS)) print ' '.$langs->trans("IfInvoiceNeedOnWithdrawPaymentWontBeClosed");
+ if (!empty($conf->global->WITHDRAW_DISABLE_AUTOCREATE_ONPAYMENTS)) print ' '.$langs->trans("IfInvoiceNeedOnWithdrawPaymentWontBeClosed");
}*/
print ' ';
print '
';
diff --git a/htdocs/compta/paiement/card.php b/htdocs/compta/paiement/card.php
index bd5c114e983..1b2a8dcfc34 100644
--- a/htdocs/compta/paiement/card.php
+++ b/htdocs/compta/paiement/card.php
@@ -32,7 +32,7 @@ require_once DOL_DOCUMENT_ROOT.'/compta/paiement/class/paiement.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/modules/facture/modules_facture.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/payments.lib.php';
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
}
@@ -119,8 +119,8 @@ if ($action == 'confirm_validate' && $confirm == 'yes' && $user->rights->facture
$outputlangs->setDefaultLang(GETPOST('lang_id', 'aZ09'));
}
- $hidedetails = ! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DETAILS) ? 1 : 0;
- $hidedesc = ! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DESC) ? 1 : 0;
+ $hidedetails = !empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DETAILS) ? 1 : 0;
+ $hidedesc = !empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DESC) ? 1 : 0;
$hideref = !empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_REF) ? 1 : 0;
$sql = 'SELECT f.rowid as facid';
@@ -285,7 +285,7 @@ print ' '.$langs->trans('Amount').' '.price($object->amount, '',
$disable_delete = 0;
// Bank account
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
$bankline = new AccountLine($db);
if ($object->fk_account > 0) {
@@ -327,7 +327,7 @@ print ' ';
*/
// Bank account
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
if ($object->fk_account > 0) {
if ($object->type_code == 'CHQ' && $bankline->fk_bordereau > 0) {
include_once DOL_DOCUMENT_ROOT.'/compta/paiement/cheque/class/remisecheque.class.php';
@@ -425,7 +425,7 @@ if ($resql) {
print '';
print ''.$langs->trans('Bill').' ';
print ''.$langs->trans('Company').' ';
- if (!empty($conf->multicompany->enabled) && !empty($conf->global->MULTICOMPANY_INVOICE_SHARING_ENABLED)) {
+ if (isModEnabled('multicompany') && !empty($conf->global->MULTICOMPANY_INVOICE_SHARING_ENABLED)) {
print ''.$langs->trans('Entity').' ';
}
print ''.$langs->trans('ExpectedToPay').' ';
@@ -462,7 +462,7 @@ if ($resql) {
print '';
// Expected to pay
- if (!empty($conf->multicompany->enabled) && !empty($conf->global->MULTICOMPANY_INVOICE_SHARING_ENABLED)) {
+ if (isModEnabled('multicompany') && !empty($conf->global->MULTICOMPANY_INVOICE_SHARING_ENABLED)) {
print '';
$mc->getInfo($objp->entity);
print $mc->label;
diff --git a/htdocs/compta/paiement/cheque/card.php b/htdocs/compta/paiement/cheque/card.php
index f41ecd820ad..5409d3c381e 100644
--- a/htdocs/compta/paiement/cheque/card.php
+++ b/htdocs/compta/paiement/cheque/card.php
@@ -138,10 +138,10 @@ if ($action == 'create' && GETPOST("accountid", "int") > 0 && $user->rights->ban
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- //if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang=$object->client->default_lang;
+ //if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) $newlang=$object->client->default_lang;
if (!empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@@ -189,10 +189,10 @@ if ($action == 'confirm_validate' && $confirm == 'yes' && $user->rights->banque-
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- //if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang=$object->client->default_lang;
+ //if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) $newlang=$object->client->default_lang;
if (!empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@@ -231,10 +231,10 @@ if ($action == 'builddoc' && $user->rights->banque->cheque) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- //if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang=$object->client->default_lang;
+ //if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) $newlang=$object->client->default_lang;
if (!empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
diff --git a/htdocs/compta/paiement/class/paiement.class.php b/htdocs/compta/paiement/class/paiement.class.php
index 25543ed9d82..310388b9e87 100644
--- a/htdocs/compta/paiement/class/paiement.class.php
+++ b/htdocs/compta/paiement/class/paiement.class.php
@@ -8,7 +8,7 @@
* Copyright (C) 2015 Juanjo Menent
* Copyright (C) 2018 Ferran Marcet
* Copyright (C) 2018 Thibault FOUCART
- * Copyright (C) 2018 Frédéric France
+ * Copyright (C) 2018-2022 Frédéric France
* Copyright (C) 2020 Andreu Bisquerra Gaya
* Copyright (C) 2021 OpenDsi
*
@@ -455,7 +455,7 @@ class Paiement extends CommonObject
$newlang = '';
$outputlangs = $langs;
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$invoice->fetch_thirdparty();
$newlang = $invoice->thirdparty->default_lang;
}
@@ -464,8 +464,8 @@ class Paiement extends CommonObject
$outputlangs->setDefaultLang($newlang);
}
- $hidedetails = ! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DETAILS) ? 1 : 0;
- $hidedesc = ! empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DESC) ? 1 : 0;
+ $hidedetails = !empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DETAILS) ? 1 : 0;
+ $hidedesc = !empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_DESC) ? 1 : 0;
$hideref = !empty($conf->global->MAIN_GENERATE_DOCUMENTS_HIDE_REF) ? 1 : 0;
$ret = $invoice->fetch($facid); // Reload to get new records
@@ -628,7 +628,7 @@ class Paiement extends CommonObject
$error = 0;
$bank_line_id = 0;
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
if ($accountid <= 0) {
$this->error = 'Bad value for parameter accountid='.$accountid;
dol_syslog(get_class($this).'::addPaymentToBank '.$this->error, LOG_ERR);
@@ -656,7 +656,7 @@ class Paiement extends CommonObject
}
// if dolibarr currency != bank currency then we received an amount in customer currency (currently I don't manage the case : my currency is USD, the customer currency is EUR and he paid me in GBP. Seems no sense for me)
- if (!empty($conf->multicurrency->enabled) && $conf->currency != $acc->currency_code) {
+ if (isModEnabled('multicurrency') && $conf->currency != $acc->currency_code) {
$totalamount = $this->multicurrency_amount; // We will insert into llx_bank.amount in foreign currency
$totalamount_main_currency = $this->amount; // We will also save the amount in main currency into column llx_bank.amount_main_currency
}
@@ -1165,7 +1165,7 @@ class Paiement extends CommonObject
global $conf;
$way = 'dolibarr';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
foreach ($this->multicurrency_amounts as $value) {
if (!empty($value)) { // one value found then payment is in invoice currency
$way = 'customer';
diff --git a/htdocs/compta/paiement/list.php b/htdocs/compta/paiement/list.php
index 988d6e041be..e6b57137df8 100644
--- a/htdocs/compta/paiement/list.php
+++ b/htdocs/compta/paiement/list.php
@@ -104,8 +104,8 @@ $arrayfields = array(
'p.datep' => array('label'=>"Date", 'checked'=>1, 'position'=>20),
's.nom' => array('label'=>"ThirdParty", 'checked'=>1, 'position'=>30),
'c.libelle' => array('label'=>"Type", 'checked'=>1, 'position'=>40),
- 'transaction' => array('label'=>"BankTransactionLine", 'checked'=>1, 'position'=>50, 'enabled'=>(!empty($conf->banque->enabled))),
- 'ba.label' => array('label'=>"Account", 'checked'=>1, 'position'=>60, 'enabled'=>(!empty($conf->banque->enabled))),
+ 'transaction' => array('label'=>"BankTransactionLine", 'checked'=>1, 'position'=>50, 'enabled'=>(isModEnabled("banque"))),
+ 'ba.label' => array('label'=>"Account", 'checked'=>1, 'position'=>60, 'enabled'=>(isModEnabled("banque"))),
'p.num_paiement' => array('label'=>"Numero", 'checked'=>1, 'position'=>70, 'tooltip'=>"ChequeOrTransferNumber"),
'p.amount' => array('label'=>"Amount", 'checked'=>1, 'position'=>80),
'p.statut' => array('label'=>"Status", 'checked'=>1, 'position'=>90, 'enabled'=>(!empty($conf->global->BILL_ADD_PAYMENT_VALIDATION))),
diff --git a/htdocs/compta/paiement_charge.php b/htdocs/compta/paiement_charge.php
index 99940ecffcb..50236a29e64 100644
--- a/htdocs/compta/paiement_charge.php
+++ b/htdocs/compta/paiement_charge.php
@@ -71,7 +71,7 @@ if ($action == 'add_payment' || ($action == 'confirm_paiement' && $confirm == 'y
$error++;
$action = 'create';
}
- if (!empty($conf->banque->enabled) && !(GETPOST("accountid") > 0)) {
+ if (isModEnabled("banque") && !(GETPOST("accountid") > 0)) {
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("AccountToCredit")), null, 'errors');
$error++;
$action = 'create';
diff --git a/htdocs/compta/paiement_vat.php b/htdocs/compta/paiement_vat.php
index 645fd36bc2a..f1f243bc06d 100644
--- a/htdocs/compta/paiement_vat.php
+++ b/htdocs/compta/paiement_vat.php
@@ -69,7 +69,7 @@ if ($action == 'add_payment' || ($action == 'confirm_paiement' && $confirm == 'y
$error++;
$action = 'create';
}
- if (!empty($conf->banque->enabled) && !(GETPOST("accountid", 'int') > 0)) {
+ if (isModEnabled("banque") && !(GETPOST("accountid", 'int') > 0)) {
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("AccountToDebit")), null, 'errors');
$error++;
$action = 'create';
diff --git a/htdocs/compta/payment_sc/card.php b/htdocs/compta/payment_sc/card.php
index f5ff5a101f2..1b2bbe63525 100644
--- a/htdocs/compta/payment_sc/card.php
+++ b/htdocs/compta/payment_sc/card.php
@@ -31,7 +31,7 @@ require_once DOL_DOCUMENT_ROOT.'/compta/sociales/class/chargesociales.class.php'
require_once DOL_DOCUMENT_ROOT.'/compta/sociales/class/paymentsocialcontribution.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/modules/facture/modules_facture.php';
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
}
@@ -141,7 +141,7 @@ print ''.$langs->trans('Amount').' '.price($object->
print ' '.$langs->trans('Note').' '.nl2br($object->note).' ';
// Bank account
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
if ($object->bank_account) {
$bankline = new AccountLine($db);
$bankline->fetch($object->bank_line);
@@ -237,7 +237,7 @@ if ($resql) {
print '';
/*
-if (! empty($conf->global->BILL_ADD_PAYMENT_VALIDATION))
+if (!empty($conf->global->BILL_ADD_PAYMENT_VALIDATION))
{
if ($user->socid == 0 && $object->statut == 0 && $_GET['action'] == '')
{
diff --git a/htdocs/compta/payment_vat/card.php b/htdocs/compta/payment_vat/card.php
index 94dd817900e..ae3e1a201fa 100644
--- a/htdocs/compta/payment_vat/card.php
+++ b/htdocs/compta/payment_vat/card.php
@@ -31,7 +31,7 @@ require_once DOL_DOCUMENT_ROOT.'/compta/tva/class/tva.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/tva/class/paymentvat.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/modules/facture/modules_facture.php';
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
}
@@ -95,7 +95,7 @@ if ($action == 'confirm_valide' && $confirm == 'yes' && $user->rights->tax->char
$fac->fetch($id);
$outputlangs = $langs;
- if (! empty($_REQUEST['lang_id']))
+ if (!empty($_REQUEST['lang_id']))
{
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($_REQUEST['lang_id']);
@@ -194,7 +194,7 @@ print '
'.$langs->trans('Amount').' '.price($object->
print ' '.$langs->trans('Note').' '.nl2br($object->note).' ';
// Bank account
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
if ($object->bank_account) {
$bankline = new AccountLine($db);
$bankline->fetch($object->bank_line);
@@ -292,7 +292,7 @@ if ($resql) {
print '
';
/*
-if (! empty($conf->global->BILL_ADD_PAYMENT_VALIDATION))
+if (!empty($conf->global->BILL_ADD_PAYMENT_VALIDATION))
{
if ($user->socid == 0 && $object->statut == 0 && $_GET['action'] == '')
{
diff --git a/htdocs/compta/resultat/clientfourn.php b/htdocs/compta/resultat/clientfourn.php
index 2be668fac5c..87d548ee94f 100644
--- a/htdocs/compta/resultat/clientfourn.php
+++ b/htdocs/compta/resultat/clientfourn.php
@@ -38,7 +38,9 @@ require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/report.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/tax.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
+require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountancycategory.class.php';
+require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php';
// Load translation files required by the page
$langs->loadLangs(array('compta', 'bills', 'donation', 'salaries', 'accountancy', 'loan'));
@@ -69,12 +71,12 @@ if (!$sortorder) {
// Date range
$year = GETPOST('year', 'int');
if (empty($year)) {
- $year_current = strftime("%Y", dol_now());
- $month_current = strftime("%m", dol_now());
+ $year_current = dol_print_date(dol_now(), "%Y");
+ $month_current = dol_print_date(dol_now(), "%m");
$year_start = $year_current;
} else {
$year_current = $year;
- $month_current = strftime("%m", dol_now());
+ $month_current = dol_print_date(dol_now(), "%m");
$year_start = $year;
}
$date_start = dol_mktime(0, 0, 0, $date_startmonth, $date_startday, $date_startyear);
@@ -132,7 +134,7 @@ $nbofyear = ($year_end - $year_start) + 1;
// Define modecompta ('CREANCES-DETTES' or 'RECETTES-DEPENSES' or 'BOOKKEEPING')
$modecompta = $conf->global->ACCOUNTING_MODE;
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$modecompta = 'BOOKKEEPING';
}
if (GETPOST("modecompta", 'alpha')) {
@@ -146,10 +148,10 @@ $socid = GETPOST('socid', 'int');
if ($user->socid > 0) {
$socid = $user->socid;
}
-if (!empty($conf->comptabilite->enabled)) {
+if (isModEnabled('comptabilite')) {
$result = restrictedArea($user, 'compta', '', '', 'resultat');
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$result = restrictedArea($user, 'accounting', '', '', 'comptarapport');
}
@@ -174,7 +176,7 @@ if ($modecompta == "CREANCES-DETTES") {
$calcmode = $langs->trans("CalcModeDebt");
$calcmode .= '
('.$langs->trans("SeeReportInInputOutputMode", '{s1}', '{s2}').')';
$calcmode = str_replace(array('{s1}', '{s2}'), array('
', ' '), $calcmode);
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$calcmode .= '
('.$langs->trans("SeeReportInBookkeepingMode", '{s1}', '{s2}').')';
$calcmode = str_replace(array('{s1}', '{s2}'), array('
', ' '), $calcmode);
}
@@ -193,7 +195,7 @@ if ($modecompta == "CREANCES-DETTES") {
$calcmode = $langs->trans("CalcModeEngagement");
$calcmode .= '
('.$langs->trans("SeeReportInDueDebtMode", '{s1}', '{s2}').')';
$calcmode = str_replace(array('{s1}', '{s2}'), array('
', ' '), $calcmode);
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$calcmode .= '
('.$langs->trans("SeeReportInBookkeepingMode", '{s1}', '{s2}').')';
$calcmode = str_replace(array('{s1}', '{s2}'), array('
', ' '), $calcmode);
}
@@ -223,7 +225,7 @@ $hselected = 'report';
report_header($name, '', $period, $periodlink, $description, $builddate, $exportlink, array('modecompta'=>$modecompta, 'showaccountdetail'=>$showaccountdetail), $calcmode);
-if (!empty($conf->accounting->enabled) && $modecompta != 'BOOKKEEPING') {
+if (isModEnabled('accounting') && $modecompta != 'BOOKKEEPING') {
print info_admin($langs->trans("WarningReportNotReliable"), 0, 0, 1);
}
@@ -537,7 +539,7 @@ if ($modecompta == 'BOOKKEEPING') {
* Donations
*/
- if (!empty($conf->don->enabled)) {
+ if (isModEnabled('don')) {
print '
'.$langs->trans("Donations").' ';
if ($modecompta == 'CREANCES-DETTES' || $modecompta == 'RECETTES-DEPENSES') {
@@ -932,7 +934,7 @@ if ($modecompta == 'BOOKKEEPING') {
* Salaries
*/
- if (!empty($conf->salaries->enabled)) {
+ if (isModEnabled('salaries')) {
print '
'.$langs->trans("Salaries").' ';
if ($modecompta == 'CREANCES-DETTES' || $modecompta == 'RECETTES-DEPENSES') {
@@ -1035,11 +1037,11 @@ if ($modecompta == 'BOOKKEEPING') {
* Expense report
*/
- if (!empty($conf->expensereport->enabled)) {
+ if (isModEnabled('expensereport')) {
if ($modecompta == 'CREANCES-DETTES' || $modecompta == 'RECETTES-DEPENSES') {
$langs->load('trips');
if ($modecompta == 'CREANCES-DETTES') {
- $sql = "SELECT p.rowid, p.ref, u.rowid as userid, u.firstname, u.lastname, date_format(date_valid,'%Y-%m') as dm, sum(p.total_ht) as amount_ht,sum(p.total_ttc) as amount_ttc";
+ $sql = "SELECT p.rowid, p.ref, u.rowid as userid, u.firstname, u.lastname, date_format(date_valid,'%Y-%m') as dm, p.total_ht as amount_ht, p.total_ttc as amount_ttc";
$sql .= " FROM ".MAIN_DB_PREFIX."expensereport as p";
$sql .= " INNER JOIN ".MAIN_DB_PREFIX."user as u ON u.rowid=p.fk_user_author";
$sql .= " WHERE p.entity IN (".getEntity('expensereport').")";
@@ -1047,7 +1049,7 @@ if ($modecompta == 'BOOKKEEPING') {
$column = 'p.date_valid';
} else {
- $sql = "SELECT p.rowid, p.ref, u.rowid as userid, u.firstname, u.lastname, date_format(pe.datep,'%Y-%m') as dm, sum(p.total_ht) as amount_ht, sum(p.total_ttc) as amount_ttc";
+ $sql = "SELECT p.rowid, p.ref, u.rowid as userid, u.firstname, u.lastname, date_format(pe.datep,'%Y-%m') as dm, sum(pe.amount) as amount_ht, sum(pe.amount) as amount_ttc";
$sql .= " FROM ".MAIN_DB_PREFIX."expensereport as p";
$sql .= " INNER JOIN ".MAIN_DB_PREFIX."user as u ON u.rowid=p.fk_user_author";
$sql .= " INNER JOIN ".MAIN_DB_PREFIX."payment_expensereport as pe ON pe.fk_expensereport = p.rowid";
@@ -1127,7 +1129,7 @@ if ($modecompta == 'BOOKKEEPING') {
*/
//$conf->global->ACCOUNTING_REPORTS_INCLUDE_VARPAY = 1;
- if (!empty($conf->global->ACCOUNTING_REPORTS_INCLUDE_VARPAY) && !empty($conf->banque->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
+ if (!empty($conf->global->ACCOUNTING_REPORTS_INCLUDE_VARPAY) && isModEnabled("banque") && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
$subtotal_ht = 0;
$subtotal_ttc = 0;
@@ -1206,7 +1208,7 @@ if ($modecompta == 'BOOKKEEPING') {
* Payment Loan
*/
- if (!empty($conf->global->ACCOUNTING_REPORTS_INCLUDE_LOAN) && !empty($conf->loan->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
+ if (!empty($conf->global->ACCOUNTING_REPORTS_INCLUDE_LOAN) && isModEnabled('don') && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
$subtotal_ht = 0;
$subtotal_ttc = 0;
diff --git a/htdocs/compta/resultat/index.php b/htdocs/compta/resultat/index.php
index 719b1deb29a..e9706e9216f 100644
--- a/htdocs/compta/resultat/index.php
+++ b/htdocs/compta/resultat/index.php
@@ -47,12 +47,12 @@ $nbofyear = 4;
// Date range
$year = GETPOST('year', 'int');
if (empty($year)) {
- $year_current = strftime("%Y", dol_now());
- $month_current = strftime("%m", dol_now());
+ $year_current = dol_print_date(dol_now(), "%Y");
+ $month_current = dol_print_date(dol_now(), "%m");
$year_start = $year_current - ($nbofyear - 1);
} else {
$year_current = $year;
- $month_current = strftime("%m", dol_now());
+ $month_current = dol_print_date(dol_now(), "%m");
$year_start = $year - ($nbofyear - 1);
}
$date_start = dol_mktime(0, 0, 0, $date_startmonth, $date_startday, $date_startyear);
@@ -110,7 +110,7 @@ $nbofyear = ($year_end - $year_start) + 1;
// Define modecompta ('CREANCES-DETTES' or 'RECETTES-DEPENSES' or 'BOOKKEEPING')
$modecompta = $conf->global->ACCOUNTING_MODE;
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$modecompta = 'BOOKKEEPING';
}
if (GETPOST("modecompta", 'alpha')) {
@@ -122,10 +122,10 @@ $socid = GETPOST('socid', 'int');
if ($user->socid > 0) {
$socid = $user->socid;
}
-if (!empty($conf->comptabilite->enabled)) {
+if (isModEnabled('comptabilite')) {
$result = restrictedArea($user, 'compta', '', '', 'resultat');
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$result = restrictedArea($user, 'accounting', '', '', 'comptarapport');
}
@@ -151,7 +151,7 @@ if ($modecompta == 'CREANCES-DETTES') {
$calcmode = $langs->trans("CalcModeDebt");
$calcmode .= '
('.$langs->trans("SeeReportInInputOutputMode", '{s1}', '{s2}').')';
$calcmode = str_replace(array('{s1}', '{s2}'), array('
', ' '), $calcmode);
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$calcmode .= '
('.$langs->trans("SeeReportInBookkeepingMode", '{s1}', '{s2}').')';
$calcmode = str_replace(array('{s1}', '{s2}'), array('
', ' '), $calcmode);
}
@@ -171,7 +171,7 @@ if ($modecompta == 'CREANCES-DETTES') {
$calcmode = $langs->trans("CalcModeEngagement");
$calcmode .= '
('.$langs->trans("SeeReportInDueDebtMode", '{s1}', '{s2}').')';
$calcmode = str_replace(array('{s1}', '{s2}'), array('
', ' '), $calcmode);
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$calcmode .= '
('.$langs->trans("SeeReportInBookkeepingMode", '{s1}', '{s2}').')';
$calcmode = str_replace(array('{s1}', '{s2}'), array('
', ' '), $calcmode);
}
@@ -200,7 +200,7 @@ $hselected = 'report';
report_header($name, '', $period, $periodlink, $description, $builddate, $exportlink, array('modecompta'=>$modecompta), $calcmode);
-if (!empty($conf->accounting->enabled) && $modecompta != 'BOOKKEEPING') {
+if (isModEnabled('accounting') && $modecompta != 'BOOKKEEPING') {
print info_admin($langs->trans("WarningReportNotReliable"), 0, 0, 1);
}
@@ -391,7 +391,7 @@ if (isModEnabled('facture') && ($modecompta == 'CREANCES-DETTES' || $modecompta
$subtotal_ht = 0;
$subtotal_ttc = 0;
-if (!empty($conf->tax->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
+if (isModEnabled('tax') && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
if ($modecompta == 'CREANCES-DETTES') {
// TVA collected to pay
$sql = "SELECT sum(f.total_tva) as amount, date_format(f.datef,'%Y-%m') as dm";
@@ -555,7 +555,7 @@ if (!empty($conf->tax->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecom
$subtotal_ht = 0;
$subtotal_ttc = 0;
-if (!empty($conf->tax->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
+if (isModEnabled('tax') && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
if ($modecompta == 'CREANCES-DETTES') {
$sql = "SELECT c.libelle as nom, date_format(cs.date_ech,'%Y-%m') as dm, sum(cs.amount) as amount";
$sql .= " FROM ".MAIN_DB_PREFIX."c_chargesociales as c";
@@ -613,7 +613,7 @@ if (!empty($conf->tax->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecom
* Salaries
*/
-if (!empty($conf->salaries->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
+if (isModEnabled('salaries') && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
if ($modecompta == 'CREANCES-DETTES') {
$column = 's.dateep'; // we use the date of end of period of salary
@@ -675,7 +675,7 @@ if (!empty($conf->salaries->enabled) && ($modecompta == 'CREANCES-DETTES' || $mo
* Expense reports
*/
-if (!empty($conf->expensereport->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
+if (!isModEnabled('expensereport') && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
$langs->load('trips');
if ($modecompta == 'CREANCES-DETTES') {
@@ -737,7 +737,7 @@ if (!empty($conf->expensereport->enabled) && ($modecompta == 'CREANCES-DETTES' |
* Donation get dunning payments
*/
-if (!empty($conf->don->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
+if (isModEnabled('don') && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
$subtotal_ht = 0;
$subtotal_ttc = 0;
@@ -796,7 +796,7 @@ if (!empty($conf->don->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecom
* Various Payments
*/
-if (!empty($conf->global->ACCOUNTING_REPORTS_INCLUDE_VARPAY) && !empty($conf->banque->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
+if (!empty($conf->global->ACCOUNTING_REPORTS_INCLUDE_VARPAY) && isModEnabled("banque") && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
// decaiss
$sql = "SELECT date_format(p.datep, '%Y-%m') AS dm, SUM(p.amount) AS amount FROM ".MAIN_DB_PREFIX."payment_various as p";
@@ -867,7 +867,7 @@ if (!empty($conf->global->ACCOUNTING_REPORTS_INCLUDE_VARPAY) && !empty($conf->ba
* Payement Loan
*/
-if (!empty($conf->global->ACCOUNTING_REPORTS_INCLUDE_LOAN) && !empty($conf->loan->enabled) && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
+if (!empty($conf->global->ACCOUNTING_REPORTS_INCLUDE_LOAN) && isModEnabled('loan') && ($modecompta == 'CREANCES-DETTES' || $modecompta == "RECETTES-DEPENSES")) {
$sql = "SELECT date_format(p.datep, '%Y-%m') AS dm, SUM(p.amount_capital + p.amount_insurance + p.amount_interest) AS amount";
$sql .= " FROM ".MAIN_DB_PREFIX."payment_loan AS p, ".MAIN_DB_PREFIX."loan as l";
$sql .= " WHERE l.entity IN (".getEntity('variouspayment').")";
@@ -907,7 +907,7 @@ if (!empty($conf->global->ACCOUNTING_REPORTS_INCLUDE_LOAN) && !empty($conf->loan
* Request in mode BOOKKEEPING
*/
-if (!empty($conf->accounting->enabled) && ($modecompta == 'BOOKKEEPING')) {
+if (isModEnabled('accounting') && ($modecompta == 'BOOKKEEPING')) {
$predefinedgroupwhere = "(";
$predefinedgroupwhere .= " (aa.pcg_type = 'EXPENSE')";
$predefinedgroupwhere .= " OR ";
diff --git a/htdocs/compta/resultat/result.php b/htdocs/compta/resultat/result.php
index c296d4037e5..bbe32d0cbc1 100644
--- a/htdocs/compta/resultat/result.php
+++ b/htdocs/compta/resultat/result.php
@@ -1,6 +1,6 @@
- * Copyright (C) 2016 Alexandre Spangaro
+ * Copyright (C) 2016-2022 Alexandre Spangaro
* Copyright (C) 2018-2020 Laurent Destailleur
* Copyright (C) 2018 Frédéric France
*
@@ -137,7 +137,7 @@ if ($cat_id == 0) {
// Define modecompta ('CREANCES-DETTES' or 'RECETTES-DEPENSES' or 'BOOKKEEPING')
$modecompta = $conf->global->ACCOUNTING_MODE;
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$modecompta = 'BOOKKEEPING';
}
if (GETPOST("modecompta")) {
@@ -151,10 +151,10 @@ $socid = GETPOST('socid', 'int');
if ($user->socid > 0) {
$socid = $user->socid;
}
-if (!empty($conf->comptabilite->enabled)) {
+if (isModEnabled('comptabilite')) {
$result = restrictedArea($user, 'compta', '', '', 'resultat');
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$result = restrictedArea($user, 'accounting', '', '', 'comptarapport');
}
@@ -193,7 +193,7 @@ if ($modecompta == "CREANCES-DETTES") {
$name = $langs->trans("AnnualByAccountDueDebtMode");
$calcmode = $langs->trans("CalcModeDebt");
$calcmode .= ' ('.$langs->trans("SeeReportInInputOutputMode", ' 0 ? '&month='.GETPOST("month") : '').'&modecompta=RECETTES-DEPENSES">', ' ').')';
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$calcmode .= ' ('.$langs->trans("SeeReportInBookkeepingMode", '', ' ').')';
}
$period = $form->selectDate($date_start, 'date_start', 0, 0, 0, '', 1, 0).' - '.$form->selectDate($date_end, 'date_end', 0, 0, 0, '', 1, 0);
@@ -210,7 +210,7 @@ if ($modecompta == "CREANCES-DETTES") {
$name = $langs->trans("AnnualByAccountInputOutputMode");
$calcmode = $langs->trans("CalcModeEngagement");
$calcmode .= ' ('.$langs->trans("SeeReportInDueDebtMode", ' 0 ? '&month='.GETPOST("month") : '').'&modecompta=CREANCES-DETTES">', ' ').')';
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$calcmode .= ' ('.$langs->trans("SeeReportInBookkeepingMode", '', ' ').')';
}
$period = $form->selectDate($date_start, 'date_start', 0, 0, 0, '', 1, 0).' - '.$form->selectDate($date_end, 'date_end', 0, 0, 0, '', 1, 0);
@@ -228,9 +228,9 @@ if ($modecompta == "CREANCES-DETTES") {
$period .= ' '.$langs->trans("DetailByAccount").' '.$form->selectarray('showaccountdetail', $arraylist, $showaccountdetail, 0);
$periodlink = $textprevyear.$textnextyear;
$exportlink = '';
- $description = $langs->trans("RulesResultBookkeepingPersonalized").
+ $description = $langs->trans("RulesResultBookkeepingPersonalized");
$description .= ' ('.$langs->trans("SeePageForSetup", DOL_URL_ROOT.'/accountancy/admin/categories_list.php?search_country_id='.$mysoc->country_id.'&mainmenu=accountancy&leftmenu=accountancy_admin', $langs->transnoentitiesnoconv("Accountancy").' / '.$langs->transnoentitiesnoconv("Setup").' / '.$langs->transnoentitiesnoconv("AccountingCategory")).')';
- //if (! empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $description.= $langs->trans("DepositsAreNotIncluded");
+ //if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) $description.= $langs->trans("DepositsAreNotIncluded");
//else $description.= $langs->trans("DepositsAreIncluded");
$builddate = dol_now();
}
@@ -238,7 +238,7 @@ if ($modecompta == "CREANCES-DETTES") {
report_header($name, '', $period, $periodlink, $description, $builddate, $exportlink, array('modecompta'=>$modecompta, 'action' => ''), $calcmode);
-if (!empty($conf->accounting->enabled) && $modecompta != 'BOOKKEEPING') {
+if (isModEnabled('accounting') && $modecompta != 'BOOKKEEPING') {
print info_admin($langs->trans("WarningReportNotReliable"), 0, 0, 1);
}
@@ -266,10 +266,10 @@ foreach ($months as $k => $v) {
print ' ';
if ($modecompta == 'CREANCES-DETTES') {
- //if (! empty($date_start) && ! empty($date_end))
+ //if (!empty($date_start) && !empty($date_end))
// $sql.= " AND f.datef >= '".$db->idate($date_start)."' AND f.datef <= '".$db->idate($date_end)."'";
} elseif ($modecompta == "RECETTES-DEPENSES") {
- //if (! empty($date_start) && ! empty($date_end))
+ //if (!empty($date_start) && !empty($date_end))
// $sql.= " AND p.datep >= '".$db->idate($date_start)."' AND p.datep <= '".$db->idate($date_end)."'";
} elseif ($modecompta == "BOOKKEEPING") {
// Get array of all report groups that are active
@@ -278,9 +278,9 @@ if ($modecompta == 'CREANCES-DETTES') {
/*
$sql = 'SELECT DISTINCT t.numero_compte as nb FROM '.MAIN_DB_PREFIX.'accounting_bookkeeping as t, '.MAIN_DB_PREFIX.'accounting_account as aa';
$sql.= " WHERE t.numero_compte = aa.account_number AND aa.fk_accounting_category = 0";
- if (! empty($date_start) && ! empty($date_end))
+ if (!empty($date_start) && !empty($date_end))
$sql.= " AND t.doc_date >= '".$db->idate($date_start)."' AND t.doc_date <= '".$db->idate($date_end)."'";
- if (! empty($month)) {
+ if (!empty($month)) {
$sql .= " AND MONTH(t.doc_date) = " . ((int) $month);
}
$resql = $db->query($sql);
diff --git a/htdocs/compta/sociales/card.php b/htdocs/compta/sociales/card.php
index 0bb69c444ba..945bd4a3771 100644
--- a/htdocs/compta/sociales/card.php
+++ b/htdocs/compta/sociales/card.php
@@ -34,11 +34,11 @@ require_once DOL_DOCUMENT_ROOT.'/compta/sociales/class/paymentsocialcontribution
require_once DOL_DOCUMENT_ROOT.'/core/lib/tax.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
include_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
include_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
include_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingjournal.class.php';
}
@@ -333,7 +333,7 @@ $form = new Form($db);
$formfile = new FormFile($db);
$formsocialcontrib = new FormSocialContrib($db);
$bankaccountstatic = new Account($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -407,7 +407,7 @@ if ($action == 'create') {
print ''.img_picto('', 'user', 'class="pictofixedwidth"').$form->select_dolusers($fk_user, 'userid', 1).' ';
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$formproject = new FormProjets($db);
// Associated project
@@ -426,7 +426,7 @@ if ($action == 'create') {
print '';
// Bank Account
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ''.$langs->trans('DefaultBankAccount').' ';
print img_picto('', 'bank_account', 'class="pictofixedwidth"').$form->select_comptes(GETPOST('fk_account', 'int'), 'fk_account', 0, '', 2, '', 0, '', 1);
print ' ';
@@ -540,7 +540,7 @@ if ($id > 0) {
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->tax->charges->creer) {
@@ -638,7 +638,7 @@ if ($id > 0) {
print '';
// Bank account
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print '';
print '';
print $langs->trans('DefaultBankAccount');
@@ -668,7 +668,7 @@ if ($id > 0) {
print '';
$nbcols = 3;
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$nbcols++;
}
@@ -703,7 +703,7 @@ if ($id > 0) {
print '
'.$langs->trans("RefPayment").' ';
print '
'.$langs->trans("Date").' ';
print '
'.$langs->trans("Type").' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print '
'.$langs->trans('BankAccount').' ';
}
print '
'.$langs->trans("Amount").' ';
@@ -726,14 +726,14 @@ if ($id > 0) {
print '
'.dol_print_date($db->jdate($objp->dp), 'day')." \n";
$labeltype = $langs->trans("PaymentType".$objp->type_code) != ("PaymentType".$objp->type_code) ? $langs->trans("PaymentType".$objp->type_code) : $objp->paiement_type;
print "
".$labeltype.' '.$objp->num_payment." \n";
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$bankaccountstatic->id = $objp->baid;
$bankaccountstatic->ref = $objp->baref;
$bankaccountstatic->label = $objp->baref;
$bankaccountstatic->number = $objp->banumber;
$bankaccountstatic->currency_code = $objp->bacurrency_code;
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$bankaccountstatic->account_number = $objp->account_number;
$accountingjournal = new AccountingJournal($db);
diff --git a/htdocs/compta/sociales/class/paymentsocialcontribution.class.php b/htdocs/compta/sociales/class/paymentsocialcontribution.class.php
index 318e7fcd96b..0bf402c6c21 100644
--- a/htdocs/compta/sociales/class/paymentsocialcontribution.class.php
+++ b/htdocs/compta/sociales/class/paymentsocialcontribution.class.php
@@ -552,7 +552,7 @@ class PaymentSocialContribution extends CommonObject
$error = 0;
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
include_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
$acc = new Account($this->db);
diff --git a/htdocs/compta/sociales/document.php b/htdocs/compta/sociales/document.php
index 2b0d17337a5..741100a53a3 100644
--- a/htdocs/compta/sociales/document.php
+++ b/htdocs/compta/sociales/document.php
@@ -33,7 +33,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/tax.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
include_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
include_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -101,7 +101,7 @@ if ($action == 'setlib' && $user->rights->tax->charges->creer) {
*/
$form = new Form($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -121,7 +121,7 @@ if ($object->id) {
$morehtmlref .= $form->editfieldkey("Label", 'lib', $object->label, $object, $user->rights->tax->charges->creer, 'string', '', 0, 1);
$morehtmlref .= $form->editfieldval("Label", 'lib', $object->label, $object, $user->rights->tax->charges->creer, 'string', '', null, null, '', 1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' : ';
if (!empty($object->fk_project)) {
diff --git a/htdocs/compta/sociales/info.php b/htdocs/compta/sociales/info.php
index 0976a76c26d..98440da6486 100644
--- a/htdocs/compta/sociales/info.php
+++ b/htdocs/compta/sociales/info.php
@@ -25,7 +25,7 @@ require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/compta/sociales/class/chargesociales.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/tax.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
include_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
include_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -68,7 +68,7 @@ if ($action == 'setlib' && $user->rights->tax->charges->creer) {
$form = new Form($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -90,7 +90,7 @@ $morehtmlref = '
';
$morehtmlref .= $form->editfieldkey("Label", 'lib', $object->label, $object, $user->rights->tax->charges->creer, 'string', '', 0, 1);
$morehtmlref .= $form->editfieldval("Label", 'lib', $object->label, $object, $user->rights->tax->charges->creer, 'string', '', null, null, '', 1);
// Project
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' : ';
if (!empty($object->fk_project)) {
diff --git a/htdocs/compta/sociales/list.php b/htdocs/compta/sociales/list.php
index 14b8bfa043f..f36694bb3b2 100644
--- a/htdocs/compta/sociales/list.php
+++ b/htdocs/compta/sociales/list.php
@@ -34,7 +34,7 @@ require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formsocialcontrib.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -100,14 +100,14 @@ $arrayfields = array(
'cs.fk_type' =>array('label'=>"Type", 'checked'=>1, 'position'=>30),
'cs.date_ech' =>array('label'=>"Date", 'checked'=>1, 'position'=>40),
'cs.periode' =>array('label'=>"PeriodEndDate", 'checked'=>1, 'position'=>50),
- 'p.ref' =>array('label'=>"ProjectRef", 'checked'=>1, 'position'=>60, 'enable'=>(!empty($conf->project->enabled))),
+ 'p.ref' =>array('label'=>"ProjectRef", 'checked'=>1, 'position'=>60, 'enable'=>(isModEnabled('project'))),
'cs.fk_user' =>array('label'=>"Employee", 'checked'=>1, 'position'=>70),
'cs.fk_mode_reglement' =>array('checked'=>-1, 'position'=>80, 'label'=>"DefaultPaymentMode"),
'cs.amount' =>array('label'=>"Amount", 'checked'=>1, 'position'=>100),
'cs.paye' =>array('label'=>"Status", 'checked'=>1, 'position'=>110),
);
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
$arrayfields['cs.fk_account'] = array('checked'=>-1, 'position'=>90, 'label'=>"DefaultBankAccount");
}
@@ -179,7 +179,7 @@ $formother = new FormOther($db);
$bankstatic = new Account($db);
$formsocialcontrib = new FormSocialContrib($db);
$chargesociale_static = new ChargeSociales($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$projectstatic = new Project($db);
}
@@ -187,7 +187,7 @@ llxHeader('', $langs->trans("SocialContributions"));
$sql = "SELECT cs.rowid, cs.fk_type as type, cs.fk_user,";
$sql .= " cs.amount, cs.date_ech, cs.libelle as label, cs.paye, cs.periode, cs.fk_account,";
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$sql .= " p.rowid as project_id, p.ref as project_ref, p.title as project_label,";
}
$sql .= " c.libelle as type_label, c.accountancy_code as type_accountancy_code,";
@@ -197,7 +197,7 @@ $sql .= " FROM ".MAIN_DB_PREFIX."c_chargesociales as c,";
$sql .= " ".MAIN_DB_PREFIX."chargesociales as cs";
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."bank_account as ba ON (cs.fk_account = ba.rowid)";
$sql .= ' LEFT JOIN '.MAIN_DB_PREFIX.'c_paiement as pay ON (cs.fk_mode_reglement = pay.id)';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."projet as p ON p.rowid = cs.fk_projet";
}
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."paiementcharge as pc ON pc.fk_charge = cs.rowid";
@@ -211,7 +211,7 @@ if ($search_ref) {
if ($search_label) {
$sql .= natural_search("cs.libelle", $search_label);
}
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
if ($search_project_ref != '') {
$sql .= natural_search("p.ref", $search_project_ref);
}
@@ -247,7 +247,7 @@ if ($search_typeid > 0) {
$sql .= " AND cs.fk_type = ".((int) $search_typeid);
}
$sql .= " GROUP BY cs.rowid, cs.fk_type, cs.fk_user, cs.amount, cs.date_ech, cs.libelle, cs.paye, cs.periode, cs.fk_account, c.libelle, c.accountancy_code, ba.label, ba.ref, ba.number, ba.account_number, ba.iban_prefix, ba.bic, ba.currency_code, ba.clos, pay.code, u.lastname";
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$sql .= ", p.rowid, p.ref, p.title";
}
$sql .= $db->order($sortfield, $sortorder);
@@ -553,7 +553,7 @@ while ($i < min($num, $limit)) {
$chargesociale_static->label = $obj->label;
$chargesociale_static->type_label = $obj->type_label;
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$projectstatic->id = $obj->project_id;
$projectstatic->ref = $obj->project_ref;
$projectstatic->title = $obj->project_label;
@@ -589,7 +589,7 @@ while ($i < min($num, $limit)) {
if (!empty($arrayfields['cs.fk_type']['checked'])) {
$typelabeltoshow = $obj->type_label;
$typelabelpopup = $obj->type_label;
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$typelabelpopup .= ' - '.$langs->trans("AccountancyCode").': '.$obj->type_accountancy_code;
}
print '
'.dol_escape_htmltag($typelabeltoshow).' ';
diff --git a/htdocs/compta/sociales/note.php b/htdocs/compta/sociales/note.php
index 8ede1c3b502..59af7a36870 100644
--- a/htdocs/compta/sociales/note.php
+++ b/htdocs/compta/sociales/note.php
@@ -25,7 +25,7 @@ require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/compta/sociales/class/chargesociales.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/tax.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
include_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
include_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -93,7 +93,7 @@ if ($id > 0 || !empty($ref)) {
$morehtmlref .= $form->editfieldkey("Label", 'lib', $object->label, $object, $user->rights->tax->charges->creer, 'string', '', 0, 1);
$morehtmlref .= $form->editfieldval("Label", 'lib', $object->label, $object, $user->rights->tax->charges->creer, 'string', '', null, null, '', 1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' : ';
if (!empty($object->fk_project)) {
diff --git a/htdocs/compta/sociales/payments.php b/htdocs/compta/sociales/payments.php
index 843dbd58a50..0d1482d53ec 100644
--- a/htdocs/compta/sociales/payments.php
+++ b/htdocs/compta/sociales/payments.php
@@ -37,7 +37,7 @@ require_once DOL_DOCUMENT_ROOT.'/salaries/class/salary.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formsocialcontrib.class.php';
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
include_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingjournal.class.php';
}
@@ -225,7 +225,7 @@ print '
';
print '
';
print '
';
print '
';
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
print '
';
print '
';
}
@@ -245,7 +245,7 @@ print_liste_field_titre("DatePayment", $_SERVER["PHP_SELF"], "pc.datep", "", $pa
print_liste_field_titre("Employee", $_SERVER["PHP_SELF"], "u.rowid", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("PaymentMode", $_SERVER["PHP_SELF"], "pct.code", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("Numero", $_SERVER["PHP_SELF"], "pc.num_paiement", "", $param, '', $sortfield, $sortorder, '', 'ChequeOrTransferNumber');
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
print_liste_field_titre("BankTransactionLine", $_SERVER["PHP_SELF"], "pc.fk_bank", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("Account", $_SERVER["PHP_SELF"], "ba.label", "", $param, "", $sortfield, $sortorder);
}
@@ -323,7 +323,7 @@ while ($i < min($num, $limit)) {
print '
'.$obj->num_payment.' ';
// Account
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
// Bank transaction
print '
';
$accountlinestatic->id = $obj->fk_bank;
@@ -341,7 +341,7 @@ while ($i < min($num, $limit)) {
$accountstatic->currency_code = $langs->trans("Currency".$obj->currency_code);
$accountstatic->clos = $obj->clos;
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$accountstatic->account_number = $obj->account_number;
$accountstatic->accountancy_journal = $obj->account_journal;
}
@@ -379,7 +379,7 @@ print ' ';
print '
';
print '
';
print '
';
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
print '
';
print '
';
}
diff --git a/htdocs/compta/stats/byratecountry.php b/htdocs/compta/stats/byratecountry.php
index afc56532fdf..86a547204f7 100644
--- a/htdocs/compta/stats/byratecountry.php
+++ b/htdocs/compta/stats/byratecountry.php
@@ -1,6 +1,7 @@
* Copyright (C) 2018-2021 Frédéric France
+ * Copyright (C) 2022 Alexandre Spangaro
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -54,7 +55,9 @@ if (empty($year)) {
}
$date_start = dol_mktime(0, 0, 0, GETPOST("date_startmonth"), GETPOST("date_startday"), GETPOST("date_startyear"), 'tzserver'); // We use timezone of server so report is same from everywhere
$date_end = dol_mktime(23, 59, 59, GETPOST("date_endmonth"), GETPOST("date_endday"), GETPOST("date_endyear"), 'tzserver'); // We use timezone of server so report is same from everywhere
+
// Quarter
+$q = '';
if (empty($date_start) || empty($date_end)) { // We define date_start and date_end
$q = GETPOST("q", "int");
if (empty($q)) {
@@ -155,10 +158,12 @@ foreach ($listofparams as $param) {
llxHeader('', $langs->trans("TurnoverReport"), '', '', 0, 0, '', '', $morequerystring);
-
+$exportlink="";
+$namelink="";
//print load_fiche_titre($langs->trans("VAT"),"");
//$fsearch.=' ';
+$fsearch = '';
$fsearch .= ' ';
$fsearch .= ' ';
//$fsearch.=' '.$langs->trans("SalesTurnoverMinimum").': ';
@@ -198,14 +203,17 @@ if ($nextquarter < 4) {
$nextquarter = 1;
$nextyear++;
}
-$description .= $fsearch;
+$description = $fsearch;
$builddate = dol_now();
+if (!empty($conf->global->MAIN_MODULE_ACCOUNTING)) {
+ $description .= ' '.$langs->trans("ThisIsAnEstimatedValue");
+}
if ($conf->global->TAX_MODE_SELL_PRODUCT == 'invoice') {
- $description .= $langs->trans("RulesVATDueProducts");
+ $description .= ' '.$langs->trans("RulesVATDueProducts");
}
if ($conf->global->TAX_MODE_SELL_PRODUCT == 'payment') {
- $description .= $langs->trans("RulesVATInProducts");
+ $description .= ' '.$langs->trans("RulesVATInProducts");
}
if ($conf->global->TAX_MODE_SELL_SERVICE == 'invoice') {
$description .= ' '.$langs->trans("RulesVATDueServices");
@@ -216,9 +224,6 @@ if ($conf->global->TAX_MODE_SELL_SERVICE == 'payment') {
if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) {
$description .= ' '.$langs->trans("DepositsAreNotIncluded");
}
-if (!empty($conf->global->MAIN_MODULE_ACCOUNTING)) {
- $description .= ' '.$langs->trans("ThisIsAnEstimatedValue");
-}
// Customers invoices
$elementcust = $langs->trans("CustomersInvoices");
@@ -229,9 +234,6 @@ $amountcust = $langs->trans("AmountHT");
$elementsup = $langs->trans("SuppliersInvoices");
$productsup = $productcust;
$amountsup = $amountcust;
-$namesup = $namecust;
-
-
// TODO Report from bookkeeping not yet available, so we switch on report on business events
if ($modecompta == "BOOKKEEPING") {
@@ -247,7 +249,7 @@ if ($modecompta == "CREANCES-DETTES") {
$calcmode = $langs->trans("CalcModeDebt");
//$calcmode.=' ('.$langs->trans("SeeReportInInputOutputMode",'',' ').')';
- $description = $langs->trans("RulesCADue");
+ $description .= ' '.$langs->trans("RulesCADue");
if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) {
$description .= $langs->trans("DepositsAreNotIncluded");
} else {
@@ -260,7 +262,7 @@ if ($modecompta == "CREANCES-DETTES") {
$calcmode = $langs->trans("CalcModeEngagement");
//$calcmode.=' ('.$langs->trans("SeeReportInDueDebtMode",'',' ').')';
- $description = $langs->trans("RulesCAIn");
+ $description .= $langs->trans("RulesCAIn");
$description .= $langs->trans("DepositsAreIncluded");
$builddate = dol_now();
@@ -280,7 +282,7 @@ $description .= '
* Copyright (C) 2015 Raphaël Doursenaud
* Copyright (C) 2018 Frédéric France
+ * Copyright (C) 2022 Alexandre Spangaro
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -39,10 +40,10 @@ $socid = GETPOST('socid', 'int');
if ($user->socid > 0) {
$socid = $user->socid;
}
-if (!empty($conf->comptabilite->enabled)) {
+if (isModEnabled('comptabilite')) {
$result = restrictedArea($user, 'compta', '', '', 'resultat');
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$result = restrictedArea($user, 'accounting', '', '', 'comptarapport');
}
@@ -186,7 +187,9 @@ if (!empty($year)) {
if (!empty($month)) {
$headerparams['month'] = $month;
}
-$headerparams['q'] = $q;
+if (!empty($q)) {
+ $headerparams['q'] = $q;
+}
$tableparams = array();
if (!empty($selected_cat)) {
@@ -205,6 +208,7 @@ $allparams = array_merge($commonparams, $headerparams, $tableparams);
$headerparams = array_merge($commonparams, $headerparams);
$tableparams = array_merge($commonparams, $tableparams);
+$paramslink="";
foreach ($allparams as $key => $value) {
$paramslink .= '&'.$key.'='.$value;
}
@@ -227,6 +231,9 @@ if ($modecompta == "BOOKKEEPINGCOLLECTED") {
$modecompta = "RECETTES-DEPENSES";
}
+$exportlink="";
+$namelink="";
+
// Show report header
if ($modecompta == "CREANCES-DETTES") {
$name = $langs->trans("Turnover").', '.$langs->trans("ByProductsAndServices");
@@ -265,7 +272,7 @@ if ($date_end == dol_time_plus_duree($date_start, 1, 'y') - 1) {
report_header($name, $namelink, $period, $periodlink, $description, $builddate, $exportlink, $tableparams, $calcmode);
-if (!empty($conf->accounting->enabled) && $modecompta != 'BOOKKEEPING') {
+if (isModEnabled('accounting') && $modecompta != 'BOOKKEEPING') {
print info_admin($langs->trans("WarningReportNotReliable"), 0, 0, 1);
}
diff --git a/htdocs/compta/stats/cabyuser.php b/htdocs/compta/stats/cabyuser.php
index 2b8f40b3aba..611ee74eae4 100644
--- a/htdocs/compta/stats/cabyuser.php
+++ b/htdocs/compta/stats/cabyuser.php
@@ -4,6 +4,7 @@
* Copyright (C) 2005-2009 Regis Houssin
* Copyright (C) 2013 Antoine Iauch
* Copyright (C) 2018 Frédéric France
+ * Copyright (C) 2022 Alexandre Spangaro
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -38,10 +39,10 @@ $socid = GETPOST('socid', 'int');
if ($user->socid > 0) {
$socid = $user->socid;
}
-if (!empty($conf->comptabilite->enabled)) {
+if (isModEnabled('comptabilite')) {
$result = restrictedArea($user, 'compta', '', '', 'resultat');
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$result = restrictedArea($user, 'accounting', '', '', 'comptarapport');
}
@@ -135,23 +136,36 @@ $commonparams['sortorder'] = $sortorder;
$commonparams['sortfield'] = $sortfield;
$headerparams = array();
-$headerparams['date_startyear'] = $date_startyear;
-$headerparams['date_startmonth'] = $date_startmonth;
-$headerparams['date_startday'] = $date_startday;
-$headerparams['date_endyear'] = $date_endyear;
-$headerparams['date_endmonth'] = $date_endmonth;
-$headerparams['date_endday'] = $date_endday;
-$headerparams['q'] = $q;
+if (!empty($date_startyear)) {
+ $headerparams['date_startyear'] = $date_startyear;
+}
+if (!empty($date_startmonth)) {
+ $headerparams['date_startmonth'] = $date_startmonth;
+}
+if (!empty($date_startday)) {
+ $headerparams['date_startday'] = $date_startday;
+}
+if (!empty($date_endyear)) {
+ $headerparams['date_endyear'] = $date_endyear;
+}
+if (!empty($date_endmonth)) {
+ $headerparams['date_endmonth'] = $date_endmonth;
+}
+if (!empty($date_endday)) {
+ $headerparams['date_endday'] = $date_endday;
+}
+if (!empty($q)) {
+ $headerparams['q'] = $q;
+}
$tableparams = array();
-$tableparams['search_categ'] = $selected_cat;
-$tableparams['subcat'] = ($subcat === true) ? 'yes' : '';
// Adding common parameters
$allparams = array_merge($commonparams, $headerparams, $tableparams);
$headerparams = array_merge($commonparams, $headerparams);
$tableparams = array_merge($commonparams, $tableparams);
+$paramslink="";
foreach ($allparams as $key => $value) {
$paramslink .= '&'.$key.'='.$value;
}
@@ -172,6 +186,9 @@ if ($modecompta == "BOOKKEEPINGCOLLECTED") {
$modecompta = "RECETTES-DEPENSES";
}
+$exportlink="";
+$namelink="";
+
// Show report header
if ($modecompta == "CREANCES-DETTES") {
$name = $langs->trans("Turnover").', '.$langs->trans("ByUserAuthorOfInvoice");
@@ -214,7 +231,7 @@ if (!empty($modecompta)) {
report_header($name, $namelink, $period, $periodlink, $description, $builddate, $exportlink, $moreparam, $calcmode);
-if (!empty($conf->accounting->enabled) && $modecompta != 'BOOKKEEPING') {
+if (isModEnabled('accounting') && $modecompta != 'BOOKKEEPING') {
print info_admin($langs->trans("WarningReportNotReliable"), 0, 0, 1);
}
@@ -230,6 +247,8 @@ foreach ($headerparams as $key => $value) {
}
$catotal = 0;
+$catotal_ht = 0;
+
if ($modecompta == 'CREANCES-DETTES') {
$sql = "SELECT u.rowid as rowid, u.lastname as name, u.firstname as firstname, sum(f.total_ht) as amount, sum(f.total_ttc) as amount_ttc";
$sql .= " FROM ".MAIN_DB_PREFIX."user as u";
@@ -245,8 +264,8 @@ if ($modecompta == 'CREANCES-DETTES') {
}
} elseif ($modecompta == "RECETTES-DEPENSES") {
/*
- * Liste des paiements (les anciens paiements ne sont pas vus par cette requete car, sur les
- * vieilles versions, ils n'etaient pas lies via paiement_facture. On les ajoute plus loin)
+ * List of payments (old payments are not seen by this query because on older versions,
+ * they were not linked via the table llx_paiement_facture. They are added later)
*/
$sql = "SELECT u.rowid as rowid, u.lastname as name, u.firstname as firstname, sum(pf.amount) as amount_ttc";
$sql .= " FROM ".MAIN_DB_PREFIX."user as u";
@@ -287,7 +306,7 @@ if ($result) {
dol_print_error($db);
}
-// Adding old-version payments, non-bound by "paiement_facture" then without User
+// Adding old-version payments, non-bound by table llx_paiement_facture then without User
if ($modecompta == 'RECETTES-DEPENSES') {
$sql = "SELECT -1 as rowidx, '' as name, '' as firstname, sum(DISTINCT p.amount) as amount_ttc";
$sql .= " FROM ".MAIN_DB_PREFIX."bank as b";
@@ -478,10 +497,10 @@ if (count($amount)) {
// Other stats
print '';
- if (!empty($conf->propal->enabled) && $key > 0) {
+ if (isModEnabled("propal") && $key > 0) {
print ' '.img_picto($langs->trans("ProposalStats"), "stats").' ';
}
- if (!empty($conf->commande->enabled) && $key > 0) {
+ if (isModEnabled('commande') && $key > 0) {
print ' '.img_picto($langs->trans("OrderStats"), "stats").' ';
}
if (isModEnabled('facture') && $key > 0) {
diff --git a/htdocs/compta/stats/casoc.php b/htdocs/compta/stats/casoc.php
index 320efa36ed6..24f832c552d 100644
--- a/htdocs/compta/stats/casoc.php
+++ b/htdocs/compta/stats/casoc.php
@@ -6,6 +6,7 @@
* Copyright (C) 2013 Antoine Iauch
* Copyright (C) 2015 Raphaël Doursenaud
* Copyright (C) 2018 Frédéric France
+ * Copyright (C) 2022 Alexandre Spangaro
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -67,10 +68,10 @@ if (GETPOST('subcat', 'alpha') === 'yes') {
if ($user->socid > 0) {
$socid = $user->socid;
}
-if (!empty($conf->comptabilite->enabled)) {
+if (isModEnabled('comptabilite')) {
$result = restrictedArea($user, 'compta', '', '', 'resultat');
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$result = restrictedArea($user, 'accounting', '', '', 'comptarapport');
}
@@ -158,13 +159,27 @@ $commonparams['sortorder'] = $sortorder;
$commonparams['sortfield'] = $sortfield;
$headerparams = array();
-$headerparams['date_startyear'] = $date_startyear;
-$headerparams['date_startmonth'] = $date_startmonth;
-$headerparams['date_startday'] = $date_startday;
-$headerparams['date_endyear'] = $date_endyear;
-$headerparams['date_endmonth'] = $date_endmonth;
-$headerparams['date_endday'] = $date_endday;
-$headerparams['q'] = $q;
+if (!empty($date_startyear)) {
+ $headerparams['date_startyear'] = $date_startyear;
+}
+if (!empty($date_startmonth)) {
+ $headerparams['date_startmonth'] = $date_startmonth;
+}
+if (!empty($date_startday)) {
+ $headerparams['date_startday'] = $date_startday;
+}
+if (!empty($date_endyear)) {
+ $headerparams['date_endyear'] = $date_endyear;
+}
+if (!empty($date_endmonth)) {
+ $headerparams['date_endmonth'] = $date_endmonth;
+}
+if (!empty($date_endday)) {
+ $headerparams['date_endday'] = $date_endday;
+}
+if (!empty($q)) {
+ $headerparams['q'] = $q;
+}
$tableparams = array();
$tableparams['search_categ'] = $selected_cat;
@@ -241,7 +256,7 @@ if ($date_end == dol_time_plus_duree($date_start, 1, 'y') - 1) {
report_header($name, $namelink, $period, $periodlink, $description, $builddate, $exportlink, $tableparams, $calcmode);
-if (!empty($conf->accounting->enabled) && $modecompta != 'BOOKKEEPING') {
+if (isModEnabled('accounting') && $modecompta != 'BOOKKEEPING') {
print info_admin($langs->trans("WarningReportNotReliable"), 0, 0, 1);
}
@@ -250,8 +265,10 @@ $name = array();
// Show Array
$catotal = 0;
+$catotal_ht = 0;
+
if ($modecompta == 'CREANCES-DETTES') {
- $sql = "SELECT DISTINCT s.rowid as socid, s.nom as name, s.zip, s.town, s.fk_pays,";
+ $sql = "SELECT DISTINCT s.rowid as socid, s.nom as name, s.name_alias, s.zip, s.town, s.fk_pays,";
$sql .= " sum(f.total_ht) as amount, sum(f.total_ttc) as amount_ttc";
$sql .= " FROM ".MAIN_DB_PREFIX."facture as f, ".MAIN_DB_PREFIX."societe as s";
if ($selected_cat === -2) { // Without any category
@@ -281,10 +298,10 @@ if ($modecompta == 'CREANCES-DETTES') {
}
} elseif ($modecompta == "RECETTES-DEPENSES") {
/*
- * Liste des paiements (les anciens paiements ne sont pas vus par cette requete car, sur les
- * vieilles versions, ils n'etaient pas lies via paiement_facture. On les ajoute plus loin)
+ * List of payments (old payments are not seen by this query because on older versions,
+ * they were not linked via the table llx_paiement_facture. They are added later)
*/
- $sql = "SELECT s.rowid as socid, s.nom as name, s.zip, s.town, s.fk_pays, sum(pf.amount) as amount_ttc";
+ $sql = "SELECT s.rowid as socid, s.nom as name, s.name_alias, s.zip, s.town, s.fk_pays, sum(pf.amount) as amount_ttc";
$sql .= " FROM ".MAIN_DB_PREFIX."facture as f";
$sql .= ", ".MAIN_DB_PREFIX."paiement_facture as pf";
$sql .= ", ".MAIN_DB_PREFIX."paiement as p";
@@ -329,7 +346,7 @@ $sql .= " AND f.entity IN (".getEntity('invoice').")";
if ($socid) {
$sql .= " AND f.fk_soc = ".((int) $socid);
}
-$sql .= " GROUP BY s.rowid, s.nom, s.zip, s.town, s.fk_pays";
+$sql .= " GROUP BY s.rowid, s.nom, s.name_alias, s.zip, s.town, s.fk_pays";
$sql .= " ORDER BY s.rowid";
//echo $sql;
@@ -344,7 +361,11 @@ if ($result) {
$obj = $db->fetch_object($result);
$amount_ht[$obj->socid] = $obj->amount;
$amount[$obj->socid] = $obj->amount_ttc;
- $name[$obj->socid] = $obj->name.' '.$obj->firstname;
+ $fullname = $obj->name;
+ if (!empty($obj->name_alias)) {
+ $fullname .= ' ('.$obj->name_alias.')';
+ }
+ $name[$obj->socid] = $fullname;
$address_zip[$obj->socid] = $obj->zip;
$address_town[$obj->socid] = $obj->town;
$address_pays[$obj->socid] = getCountry($obj->fk_pays);
@@ -356,7 +377,7 @@ if ($result) {
dol_print_error($db);
}
-// On ajoute les paiements anciennes version, non lies par paiement_facture
+// We add the old versions of payments, not linked by table llx_paiement_facture
if ($modecompta == "RECETTES-DEPENSES") {
$sql = "SELECT '0' as socid, 'Autres' as name, sum(p.amount) as amount_ttc";
$sql .= " FROM ".MAIN_DB_PREFIX."bank as b";
@@ -409,7 +430,7 @@ print '';
-print '';
+print ' ';
print img_picto('', 'category', 'class="paddingrightonly"');
print $formother->select_categories(Categorie::TYPE_CUSTOMER, $selected_cat, 'search_categ', 0, $langs->trans("Category"));
print ' ';
@@ -435,7 +456,7 @@ print ' ';
print ' ';
print ' ';
print '';
-print $form->select_country($search_country, 'search_country');
+print $form->select_country($search_country, 'search_country', '', 0, 'minwidth100imp maxwidth100');
//print ' ';
print ' ';
print ' ';
@@ -652,10 +673,10 @@ if (count($amount)) {
// Other stats
print '';
- if (!empty($conf->propal->enabled) && $key > 0) {
+ if (isModEnabled("propal") && $key > 0) {
print ' '.img_picto($langs->trans("ProposalStats"), "stats").' ';
}
- if (!empty($conf->commande->enabled) && $key > 0) {
+ if (isModEnabled('commande') && $key > 0) {
print ' '.img_picto($langs->trans("OrderStats"), "stats").' ';
}
if (isModEnabled('facture') && $key > 0) {
diff --git a/htdocs/compta/stats/index.php b/htdocs/compta/stats/index.php
index b99002fe609..a81c732017f 100644
--- a/htdocs/compta/stats/index.php
+++ b/htdocs/compta/stats/index.php
@@ -69,6 +69,8 @@ if (empty($date_start) || empty($date_end)) { // We define date_start and date_e
$month_end = $month_start - 1;
if ($month_end < 1) {
$month_end = 12;
+ } else {
+ $year_end++;
}
} else {
$month_end = $month_start;
@@ -107,7 +109,7 @@ $nbofyear = ($year_end - $year_start) + 1;
// Define modecompta ('CREANCES-DETTES' or 'RECETTES-DEPENSES' or 'BOOKKEEPING')
$modecompta = $conf->global->ACCOUNTING_MODE;
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$modecompta = 'BOOKKEEPING';
}
if (GETPOST("modecompta")) {
@@ -118,10 +120,10 @@ if (GETPOST("modecompta")) {
if ($user->socid > 0) {
$socid = $user->socid;
}
-if (!empty($conf->comptabilite->enabled)) {
+if (isModEnabled('comptabilite')) {
$result = restrictedArea($user, 'compta', '', '', 'resultat');
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$result = restrictedArea($user, 'accounting', '', '', 'comptarapport');
}
@@ -151,7 +153,7 @@ if ($modecompta == "CREANCES-DETTES") {
$name = $langs->trans("Turnover");
$calcmode = $langs->trans("CalcModeDebt");
//$calcmode.=' ('.$langs->trans("SeeReportInInputOutputMode",'',' ').')';
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$calcmode .= ' ('.$langs->trans("SeeReportInBookkeepingMode", '{link1}', '{link2}').')';
$calcmode = str_replace('{link1}', '', $calcmode);
$calcmode = str_replace('{link2}', ' ', $calcmode);
@@ -169,7 +171,7 @@ if ($modecompta == "CREANCES-DETTES") {
$name = $langs->trans("TurnoverCollected");
$calcmode = $langs->trans("CalcModeEngagement");
//$calcmode .= ' ('.$langs->trans("SeeReportInDueDebtMode",'',' ').')';
- //if (!empty($conf->accounting->enabled)) {
+ //if (isModEnabled('accounting')) {
//$calcmode.=' ('.$langs->trans("SeeReportInBookkeepingMode",'',' ').')';
//}
$periodlink = ($year_start ? "".img_previous()." ".img_next()." " : "");
@@ -199,7 +201,7 @@ if (!empty($modecompta)) {
}
report_header($name, $namelink, $period, $periodlink, $description, $builddate, $exportlink, $moreparam, $calcmode);
-if (!empty($conf->accounting->enabled) && $modecompta != 'BOOKKEEPING') {
+if (isModEnabled('accounting') && $modecompta != 'BOOKKEEPING') {
print info_admin($langs->trans("WarningReportNotReliable"), 0, 0, 1);
}
diff --git a/htdocs/compta/stats/supplier_turnover.php b/htdocs/compta/stats/supplier_turnover.php
index 7273e8ed529..abbb92223cb 100644
--- a/htdocs/compta/stats/supplier_turnover.php
+++ b/htdocs/compta/stats/supplier_turnover.php
@@ -39,12 +39,12 @@ $nbofyear = 4;
// Date range
$year = GETPOST('year', 'int');
if (empty($year)) {
- $year_current = strftime("%Y", dol_now());
- $month_current = strftime("%m", dol_now());
+ $year_current = dol_print_date(dol_now(), "%Y");
+ $month_current = dol_print_date(dol_now(), "%m");
$year_start = $year_current - ($nbofyear - 1);
} else {
$year_current = $year;
- $month_current = strftime("%m", dol_now());
+ $month_current = dol_print_date(dol_now(), "%m");
$year_start = $year - ($nbofyear - 1);
}
$date_start = dol_mktime(0, 0, 0, $date_startmonth, $date_startday, $date_startyear, 'tzserver'); // We use timezone of server so report is same from everywhere
@@ -56,7 +56,7 @@ if (empty($date_start) || empty($date_end)) { // We define date_start and date_e
if ($q == 0) {
// We define date_start and date_end
$year_end = $year_start + ($nbofyear - 1);
- $month_start = GETPOST("month") ? GETPOST("month", 'int') : ($conf->global->SOCIETE_FISCAL_MONTH_START ? ($conf->global->SOCIETE_FISCAL_MONTH_START) : 1);
+ $month_start = GETPOSTISSET("month") ? GETPOST("month", 'int') : ($conf->global->SOCIETE_FISCAL_MONTH_START ? $conf->global->SOCIETE_FISCAL_MONTH_START : 1);
if (!GETPOST('month')) {
if (!GETPOST("year") && $month_start > $month_current) {
$year_start--;
@@ -65,6 +65,8 @@ if (empty($date_start) || empty($date_end)) { // We define date_start and date_e
$month_end = $month_start - 1;
if ($month_end < 1) {
$month_end = 12;
+ } else {
+ $year_end++;
}
} else {
$month_end = $month_start;
@@ -101,7 +103,7 @@ $nbofyear = ($year_end - $year_start) + 1;
// Define modecompta ('CREANCES-DETTES' or 'RECETTES-DEPENSES' or 'BOOKKEEPING')
$modecompta = $conf->global->ACCOUNTING_MODE;
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$modecompta = 'BOOKKEEPING';
}
if (GETPOST("modecompta")) {
@@ -112,10 +114,10 @@ if (GETPOST("modecompta")) {
if ($user->socid > 0) {
$socid = $user->socid;
}
-if (!empty($conf->comptabilite->enabled)) {
+if (isModEnabled('comptabilite')) {
$result = restrictedArea($user, 'compta', '', '', 'resultat');
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$result = restrictedArea($user, 'accounting', '', '', 'comptarapport');
}
@@ -140,7 +142,7 @@ if ($modecompta == "BOOKKEEPINGCOLLECTED") {
if ($modecompta == "CREANCES-DETTES") {
$name = $langs->trans("PurchaseTurnover");
$calcmode = $langs->trans("CalcModeDebt");
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$calcmode .= ' ('.$langs->trans("SeeReportInBookkeepingMode", '{link1}', '{link2}').')';
$calcmode = str_replace('{link1}', '', $calcmode);
$calcmode = str_replace('{link2}', ' ', $calcmode);
@@ -185,7 +187,7 @@ if (!empty($modecompta)) {
}
report_header($name, $namelink, $period, $periodlink, $description, $builddate, $exportlink, $moreparam, $calcmode);
-if (!empty($conf->accounting->enabled) && $modecompta != 'BOOKKEEPING') {
+if (isModEnabled('accounting') && $modecompta != 'BOOKKEEPING') {
print info_admin($langs->trans("WarningReportNotReliable"), 0, 0, 1);
}
diff --git a/htdocs/compta/stats/supplier_turnover_by_prodserv.php b/htdocs/compta/stats/supplier_turnover_by_prodserv.php
index f36383ad94b..d2bd20964f8 100644
--- a/htdocs/compta/stats/supplier_turnover_by_prodserv.php
+++ b/htdocs/compta/stats/supplier_turnover_by_prodserv.php
@@ -197,10 +197,10 @@ $socid = GETPOST('socid', 'int');
if ($user->socid > 0) {
$socid = $user->socid;
}
-if (!empty($conf->comptabilite->enabled)) {
+if (isModEnabled('comptabilite')) {
$result = restrictedArea($user, 'compta', '', '', 'resultat');
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$result = restrictedArea($user, 'accounting', '', '', 'comptarapport');
}
@@ -252,7 +252,7 @@ if ($date_end == dol_time_plus_duree($date_start, 1, 'y') - 1) {
report_header($name, $namelink, $period, $periodlink, $description, $builddate, $exportlink, $tableparams, $calcmode);
-if (!empty($conf->accounting->enabled) && $modecompta != 'BOOKKEEPING') {
+if (isModEnabled('accounting') && $modecompta != 'BOOKKEEPING') {
print info_admin($langs->trans("WarningReportNotReliable"), 0, 0, 1);
}
diff --git a/htdocs/compta/stats/supplier_turnover_by_thirdparty.php b/htdocs/compta/stats/supplier_turnover_by_thirdparty.php
index 0be2df11190..494ad591766 100644
--- a/htdocs/compta/stats/supplier_turnover_by_thirdparty.php
+++ b/htdocs/compta/stats/supplier_turnover_by_thirdparty.php
@@ -16,17 +16,19 @@
*/
/**
- * \file htdocs/compta/stats/supplier_turnover_by_thirdparty.php
- * \brief Page reporting purchase turnover by thirdparty
+ * \file htdocs/compta/stats/supplier_turnover_by_thirdparty.php
+ * \brief Page reporting purchase turnover by thirdparty
*/
+
+// Load Dolibarr environment
require '../../main.inc.php';
-require_once DOL_DOCUMENT_ROOT.'/core/lib/report.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/core/lib/tax.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.form.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
+require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
+require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
+require_once DOL_DOCUMENT_ROOT.'/core/lib/report.lib.php';
+require_once DOL_DOCUMENT_ROOT.'/core/lib/tax.lib.php';
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
// Load translation files required by the page
@@ -38,6 +40,7 @@ if (GETPOST("modecompta")) {
$modecompta = GETPOST("modecompta");
}
+// Sort Order
$sortorder = GETPOST("sortorder", 'aZ09comma');
$sortfield = GETPOST("sortfield", 'aZ09comma');
if (!$sortorder) {
@@ -47,6 +50,7 @@ if (!$sortfield) {
$sortfield = "nom";
}
+
$socid = GETPOST('socid', 'int');
// Category
@@ -59,13 +63,17 @@ if (GETPOST('subcat', 'alpha') === 'yes') {
// Hook
$hookmanager->initHooks(array('supplierturnoverbythirdpartylist'));
-// Date range
-$year = GETPOST("year", 'int');
-$month = GETPOST("month", 'int');
+
+// Search Parameters
$search_societe = GETPOST("search_societe", 'alpha');
$search_zip = GETPOST("search_zip", 'alpha');
$search_town = GETPOST("search_town", 'alpha');
$search_country = GETPOST("search_country", 'alpha');
+
+
+// Date range
+$year = GETPOST("year", 'int');
+$month = GETPOST("month", 'int');
$date_startyear = GETPOST("date_startyear", 'alpha');
$date_startmonth = GETPOST("date_startmonth", 'alpha');
$date_startday = GETPOST("date_startday", 'alpha');
@@ -168,10 +176,10 @@ foreach ($allparams as $key => $value) {
if ($user->socid > 0) {
$socid = $user->socid;
}
-if (!empty($conf->comptabilite->enabled)) {
+if (isModEnabled('comptabilite')) {
$result = restrictedArea($user, 'compta', '', '', 'resultat');
}
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
$result = restrictedArea($user, 'accounting', '', '', 'comptarapport');
}
@@ -224,7 +232,7 @@ if ($date_end == dol_time_plus_duree($date_start, 1, 'y') - 1) {
report_header($name, '', $period, $periodlink, $description, $builddate, $exportlink, $tableparams, $calcmode);
-if (!empty($conf->accounting->enabled) && $modecompta != 'BOOKKEEPING') {
+if (isModEnabled('accounting') && $modecompta != 'BOOKKEEPING') {
print info_admin($langs->trans("WarningReportNotReliable"), 0, 0, 1);
}
@@ -587,13 +595,13 @@ if (count($amount)) {
// Other stats
print ' ';
- if (!empty($conf->supplier_proposal->enabled) && $key > 0) {
+ if (isModEnabled('supplier_proposal') && $key > 0) {
print ' '.img_picto($langs->trans("ProposalStats"), "stats").' ';
}
- if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) && $key > 0) {
+ if (((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) && $key > 0) {
print ' '.img_picto($langs->trans("OrderStats"), "stats").' ';
}
- if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_invoice->enabled)) && $key > 0) {
+ if (((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_invoice")) && $key > 0) {
print ' '.img_picto($langs->trans("InvoiceStats"), "stats").' ';
}
print ' ';
diff --git a/htdocs/compta/tva/card.php b/htdocs/compta/tva/card.php
index e40b9b9b409..5f089a4e205 100644
--- a/htdocs/compta/tva/card.php
+++ b/htdocs/compta/tva/card.php
@@ -35,7 +35,7 @@ require_once DOL_DOCUMENT_ROOT.'/compta/tva/class/paymentvat.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/vat.lib.php';
-if (!empty($conf->accounting->enabled)) {
+if (isModEnabled('accounting')) {
include_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingjournal.class.php';
}
@@ -494,7 +494,7 @@ if ($action == 'create') {
print "\n";
print "";
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
// Bank account
print ''.$langs->trans("BankAccount").' ';
print img_picto('', 'bank_account', 'pictofixedwidth');
@@ -629,7 +629,7 @@ if ($id > 0) {
print ' ';
// Bank account
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print '';
print '';
print $langs->trans('BankAccount');
@@ -660,7 +660,7 @@ if ($id > 0) {
print '';
$nbcols = 3;
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$nbcols++;
}
@@ -695,7 +695,7 @@ if ($id > 0) {
print '
'.$langs->trans("RefPayment").' ';
print '
'.$langs->trans("Date").' ';
print '
'.$langs->trans("Type").' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print '
'.$langs->trans('BankAccount').' ';
}
print '
'.$langs->trans("Amount").' ';
@@ -712,14 +712,14 @@ if ($id > 0) {
print '
'.dol_print_date($db->jdate($objp->dp), 'day')." \n";
$labeltype = $langs->trans("PaymentType".$objp->type_code) != ("PaymentType".$objp->type_code) ? $langs->trans("PaymentType".$objp->type_code) : $objp->paiement_type;
print "
".$labeltype.' '.$objp->num_payment." \n";
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$bankaccountstatic->id = $objp->baid;
$bankaccountstatic->ref = $objp->baref;
$bankaccountstatic->label = $objp->baref;
$bankaccountstatic->number = $objp->banumber;
$bankaccountstatic->currency_code = $objp->bacurrency_code;
- if (!empty($conf->accounting->enabled)) {
+ if (isModEnabled('accounting')) {
$bankaccountstatic->account_number = $objp->account_number;
$accountingjournal = new AccountingJournal($db);
diff --git a/htdocs/compta/tva/class/paymentvat.class.php b/htdocs/compta/tva/class/paymentvat.class.php
index b7500fffaa0..ec951d8d72d 100644
--- a/htdocs/compta/tva/class/paymentvat.class.php
+++ b/htdocs/compta/tva/class/paymentvat.class.php
@@ -560,7 +560,7 @@ class PaymentVAT extends CommonObject
$error = 0;
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
include_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
$acc = new Account($this->db);
diff --git a/htdocs/compta/tva/class/tva.class.php b/htdocs/compta/tva/class/tva.class.php
index f54ed42fb06..1ce6bed212b 100644
--- a/htdocs/compta/tva/class/tva.class.php
+++ b/htdocs/compta/tva/class/tva.class.php
@@ -572,11 +572,11 @@ class Tva extends CommonObject
$this->error = $langs->trans("ErrorFieldRequired", $langs->transnoentities("Amount"));
return -4;
}
- if (!empty($conf->banque->enabled) && (empty($this->accountid) || $this->accountid <= 0)) {
+ if (isModEnabled("banque") && (empty($this->accountid) || $this->accountid <= 0)) {
$this->error = $langs->trans("ErrorFieldRequired", $langs->transnoentities("Account"));
return -5;
}
- if (!empty($conf->banque->enabled) && (empty($this->type_payment) || $this->type_payment <= 0)) {
+ if (isModEnabled("banque") && (empty($this->type_payment) || $this->type_payment <= 0)) {
$this->error = $langs->trans("ErrorFieldRequired", $langs->transnoentities("PaymentMode"));
return -5;
}
@@ -633,7 +633,7 @@ class Tva extends CommonObject
if ($this->id > 0) {
$ok = 1;
- if (!empty($conf->banque->enabled) && !empty($this->amount)) {
+ if (isModEnabled("banque") && !empty($this->amount)) {
// Insert into llx_bank
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
diff --git a/htdocs/compta/tva/document.php b/htdocs/compta/tva/document.php
index dc362e60051..745742b1c8e 100644
--- a/htdocs/compta/tva/document.php
+++ b/htdocs/compta/tva/document.php
@@ -34,7 +34,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/vat.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -102,7 +102,7 @@ if ($action == 'setlib' && $permissiontoadd) {
*/
$form = new Form($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
diff --git a/htdocs/compta/tva/list.php b/htdocs/compta/tva/list.php
index 5f76b2e9190..524f8b0105b 100644
--- a/htdocs/compta/tva/list.php
+++ b/htdocs/compta/tva/list.php
@@ -83,7 +83,7 @@ $arrayfields = array(
't.status' =>array('checked'=>1, 'position'=>90, 'label'=>"Status"),
);
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
$arrayfields['t.fk_account'] = array('checked'=>1, 'position'=>60, 'label'=>"DefaultBankAccount");
}
diff --git a/htdocs/compta/tva/payments.php b/htdocs/compta/tva/payments.php
index 0279acdeaa4..eba36a10625 100644
--- a/htdocs/compta/tva/payments.php
+++ b/htdocs/compta/tva/payments.php
@@ -118,7 +118,7 @@ if ($year) {
$param .= '&year='.$year;
}
-if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
+if (isModEnabled('tax') && $user->rights->tax->charges->lire) {
print '
'; // You can use div-table-responsive-no-min if you dont need reserved height for your table
print '
';
print '';
@@ -129,7 +129,7 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
print_liste_field_titre("DatePayment", $_SERVER["PHP_SELF"], "ptva.datep", "", $param, 'align="center"', $sortfield, $sortorder);
print_liste_field_titre("PaymentMode", $_SERVER["PHP_SELF"], "pct.code", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("Numero", $_SERVER["PHP_SELF"], "ptva.num_paiement", "", $param, '', $sortfield, $sortorder, '', 'ChequeOrTransferNumber');
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print_liste_field_titre("BankTransactionLine", $_SERVER["PHP_SELF"], "ptva.fk_bank", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("BankAccount", $_SERVER["PHP_SELF"], "bank.ref", "", $param, '', $sortfield, $sortorder);
}
@@ -221,7 +221,7 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
// Chq number
print ''.dol_escape_htmltag($obj->num_payment).' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
// Bank transaction
print '';
$accountlinestatic->id = $obj->fk_bank;
@@ -258,7 +258,7 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
print ' '; // A total here has no sense
print ' ';
print ' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ' ';
print ' ';
}
diff --git a/htdocs/contact/agenda.php b/htdocs/contact/agenda.php
index 5f07922b2e4..29706f48b49 100644
--- a/htdocs/contact/agenda.php
+++ b/htdocs/contact/agenda.php
@@ -29,6 +29,8 @@
* \brief Card of a contact
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php';
require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
@@ -49,12 +51,14 @@ $langs->loadLangs(array('companies', 'users', 'other', 'commercial'));
$mesg = ''; $error = 0; $errors = array();
+// Get parameters
$action = (GETPOST('action', 'alpha') ? GETPOST('action', 'alpha') : 'view');
$confirm = GETPOST('confirm', 'alpha');
$backtopage = GETPOST('backtopage', 'alpha');
$id = GETPOST('id', 'int');
$socid = GETPOST('socid', 'int');
+// Initialize objects
$object = new Contact($db);
$extrafields = new ExtraFields($db);
diff --git a/htdocs/contact/canvas/actions_contactcard_common.class.php b/htdocs/contact/canvas/actions_contactcard_common.class.php
index a72ea3d7d21..d1cc70b4927 100644
--- a/htdocs/contact/canvas/actions_contactcard_common.class.php
+++ b/htdocs/contact/canvas/actions_contactcard_common.class.php
@@ -66,7 +66,7 @@ abstract class ActionsContactCardCommon
if (is_object($this->object) && method_exists($this->object,'fetch'))
{
- if (! empty($id)) $this->object->fetch($id);
+ if (!empty($id)) $this->object->fetch($id);
}
else
{*/
@@ -191,17 +191,17 @@ abstract class ActionsContactCardCommon
$this->object->load_ref_elements();
- if (!empty($conf->commande->enabled)) {
+ if (isModEnabled('commande')) {
$this->tpl['contact_element'][$i]['linked_element_label'] = $langs->trans("ContactForOrders");
$this->tpl['contact_element'][$i]['linked_element_value'] = $this->object->ref_commande ? $this->object->ref_commande : $langs->trans("NoContactForAnyOrder");
$i++;
}
- if (!empty($conf->propal->enabled)) {
+ if (isModEnabled("propal")) {
$this->tpl['contact_element'][$i]['linked_element_label'] = $langs->trans("ContactForProposals");
$this->tpl['contact_element'][$i]['linked_element_value'] = $this->object->ref_propal ? $this->object->ref_propal : $langs->trans("NoContactForAnyProposal");
$i++;
}
- if (!empty($conf->contrat->enabled)) {
+ if (isModEnabled('contrat')) {
$this->tpl['contact_element'][$i]['linked_element_label'] = $langs->trans("ContactForContracts");
$this->tpl['contact_element'][$i]['linked_element_value'] = $this->object->ref_contrat ? $this->object->ref_contrat : $langs->trans("NoContactForAnyContract");
$i++;
diff --git a/htdocs/contact/card.php b/htdocs/contact/card.php
index 888c09124ad..4712b673ad1 100644
--- a/htdocs/contact/card.php
+++ b/htdocs/contact/card.php
@@ -32,6 +32,8 @@
* \brief Card of a contact
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php';
require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
@@ -52,14 +54,15 @@ $langs->loadLangs(array('companies', 'users', 'other', 'commercial'));
$mesg = ''; $error = 0; $errors = array();
+// Get parameters
$action = (GETPOST('action', 'alpha') ? GETPOST('action', 'alpha') : 'view');
$confirm = GETPOST('confirm', 'alpha');
$backtopage = GETPOST('backtopage', 'alpha');
$cancel = GETPOST('cancel', 'alpha');
-
$id = GETPOST('id', 'int');
$socid = GETPOST('socid', 'int');
+// Initialize technical object
$object = new Contact($db);
$extrafields = new ExtraFields($db);
@@ -212,7 +215,7 @@ if (empty($reshook)) {
//$object->facebook = GETPOST("facebook", 'alpha');
//$object->linkedin = GETPOST("linkedin", 'alpha');
$object->socialnetworks = array();
- if (!empty($conf->socialnetworks->enabled)) {
+ if (isModEnabled('socialnetworks')) {
foreach ($socialnetworks as $key => $value) {
if (GETPOSTISSET($key) && GETPOST($key, 'alphanohtml') != '') {
$object->socialnetworks[$key] = (string) GETPOST($key, 'alphanohtml');
@@ -424,7 +427,7 @@ if (empty($reshook)) {
//$object->facebook = GETPOST("facebook", 'alpha');
//$object->linkedin = GETPOST("linkedin", 'alpha');
$object->socialnetworks = array();
- if (!empty($conf->socialnetworks->enabled)) {
+ if (isModEnabled('socialnetworks')) {
foreach ($socialnetworks as $key => $value) {
if (GETPOSTISSET($key) && GETPOST($key, 'alphanohtml') != '') {
$object->socialnetworks[$key] = (string) GETPOST($key, 'alphanohtml');
@@ -529,7 +532,7 @@ if (empty($reshook)) {
}
// Update extrafields
- if ($action == 'update_extras' && ! empty($user->rights->societe->contact->creer)) {
+ if ($action == 'update_extras' && !empty($user->rights->societe->contact->creer)) {
$object->oldcopy = dol_clone($object);
// Fill array 'array_options' with data from update form
@@ -856,7 +859,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
}
- if (!empty($conf->socialnetworks->enabled)) {
+ if (isModEnabled('socialnetworks')) {
foreach ($socialnetworks as $key => $value) {
if ($value['active']) {
print ' ';
@@ -889,7 +892,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
}
// Categories
- if (!empty($conf->categorie->enabled) && !empty($user->rights->categorie->lire)) {
+ if (isModEnabled('categorie') && !empty($user->rights->categorie->lire)) {
print ' '.$form->editfieldkey('Categories', 'contcats', '', $object, 0).' ';
$cate_arbo = $form->select_all_categories(Categorie::TYPE_CONTACT, null, 'parent', null, null, 1);
print img_picto('', 'category').$form->multiselectarray('contcats', $cate_arbo, GETPOST('contcats', 'array'), null, null, null, null, '90%');
@@ -1143,7 +1146,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
print ' ';
}
- if (!empty($conf->socialnetworks->enabled)) {
+ if (isModEnabled('socialnetworks')) {
foreach ($socialnetworks as $key => $value) {
if ($value['active']) {
print '';
@@ -1194,7 +1197,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
print ' ';
// Categories
- if (!empty($conf->categorie->enabled) && !empty($user->rights->categorie->lire)) {
+ if (isModEnabled('categorie') && !empty($user->rights->categorie->lire)) {
$arrayselected = array();
print ''.$form->editfieldkey('Categories', 'contcats', '', $object, 0).' ';
print '';
@@ -1222,19 +1225,19 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
$object->load_ref_elements();
- if (!empty($conf->commande->enabled)) {
+ if (isModEnabled('commande')) {
print ' '.$langs->trans("ContactForOrders").' ';
print $object->ref_commande ? $object->ref_commande : (''.$langs->trans("NoContactForAnyOrder").' ');
print ' ';
}
- if (!empty($conf->propal->enabled)) {
+ if (isModEnabled("propal")) {
print ''.$langs->trans("ContactForProposals").' ';
print $object->ref_propal ? $object->ref_propal : (''.$langs->trans("NoContactForAnyProposal").' ');
print ' ';
}
- if (!empty($conf->contrat->enabled)) {
+ if (isModEnabled('contrat')) {
print ''.$langs->trans("ContactForContracts").' ';
print $object->ref_contrat ? $object->ref_contrat : (''.$langs->trans("NoContactForAnyContract").' ');
print ' ';
@@ -1313,7 +1316,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
$login = dol_buildlogin($object->lastname, $object->firstname);
$generated_password = '';
- if (!$ldap_sid) { // TODO ldap_sid ?
+ if (empty($ldap_sid)) { // TODO ldap_sid ?
require_once DOL_DOCUMENT_ROOT.'/core/lib/security2.lib.php';
$generated_password = getRandomPassword(false);
}
@@ -1326,7 +1329,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
//array('label' => $form->textwithpicto($langs->trans("Type"),$langs->trans("InternalExternalDesc")), 'type' => 'select', 'name' => 'intern', 'default' => 1, 'values' => array(0=>$langs->trans('Internal'),1=>$langs->trans('External')))
);
$text = $langs->trans("ConfirmCreateContact").' ';
- if (!empty($conf->societe->enabled)) {
+ if (isModEnabled("societe")) {
if ($object->socid > 0) {
$text .= $langs->trans("UserWillBeExternalUser");
} else {
@@ -1468,7 +1471,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
print '';
// Categories
- if (!empty($conf->categorie->enabled) && !empty($user->rights->categorie->lire)) {
+ if (isModEnabled('categorie') && !empty($user->rights->categorie->lire)) {
print ''.$langs->trans("Categories").' ';
print '';
print $form->showCategories($object->id, Categorie::TYPE_CONTACT, 1);
@@ -1489,29 +1492,29 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
$object->load_ref_elements();
- if (!empty($conf->propal->enabled)) {
+ if (isModEnabled("propal")) {
print ' '.$langs->trans("ContactForProposals").' ';
print $object->ref_propal ? $object->ref_propal : $langs->trans("NoContactForAnyProposal");
print ' ';
}
- if (!empty($conf->commande->enabled) || !empty($conf->expedition->enabled)) {
+ if (isModEnabled('commande') || isModEnabled("expedition")) {
print '';
- if (!empty($conf->expedition->enabled)) {
+ if (isModEnabled("expedition")) {
print $langs->trans("ContactForOrdersOrShipments");
} else {
print $langs->trans("ContactForOrders");
}
print ' ';
$none = $langs->trans("NoContactForAnyOrder");
- if (!empty($conf->expedition->enabled)) {
+ if (isModEnabled("expedition")) {
$none = $langs->trans("NoContactForAnyOrderOrShipments");
}
print $object->ref_commande ? $object->ref_commande : $none;
print ' ';
}
- if (!empty($conf->contrat->enabled)) {
+ if (isModEnabled('contrat')) {
print ''.$langs->trans("ContactForContracts").' ';
print $object->ref_contrat ? $object->ref_contrat : $langs->trans("NoContactForAnyContract");
print ' ';
diff --git a/htdocs/contact/consumption.php b/htdocs/contact/consumption.php
index f19c3e03684..729c99f1186 100644
--- a/htdocs/contact/consumption.php
+++ b/htdocs/contact/consumption.php
@@ -22,9 +22,11 @@
/**
* \file htdocs/contact/consumption.php
* \ingroup societe
- * \brief Add a tab on thirpdarty view to list all products/services bought or sells by thirdparty
+ * \brief Add a tab on thirdparty view to list all products/services bought or sells by thirdparty
*/
+
+// Load Dolibarr environment
require "../main.inc.php";
require_once DOL_DOCUMENT_ROOT.'/core/lib/contact.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
@@ -154,16 +156,16 @@ print '';
if ($object->thirdparty->client) {
$thirdTypeArray['customer'] = $langs->trans("customer");
- if (!empty($conf->propal->enabled) && $user->rights->propal->lire) {
+ if (isModEnabled("propal") && $user->rights->propal->lire) {
$elementTypeArray['propal'] = $langs->transnoentitiesnoconv('Proposals');
}
- if (!empty($conf->commande->enabled) && $user->rights->commande->lire) {
+ if (isModEnabled('commande') && $user->rights->commande->lire) {
$elementTypeArray['order'] = $langs->transnoentitiesnoconv('Orders');
}
if (isModEnabled('facture') && $user->rights->facture->lire) {
$elementTypeArray['invoice'] = $langs->transnoentitiesnoconv('Invoices');
}
- if (!empty($conf->contrat->enabled) && $user->rights->contrat->lire) {
+ if (isModEnabled('contrat') && $user->rights->contrat->lire) {
$elementTypeArray['contract'] = $langs->transnoentitiesnoconv('Contracts');
}
}
@@ -174,15 +176,15 @@ if (!empty($conf->ficheinter->enabled) && $user->rights->ficheinter->lire) {
if ($object->thirdparty->fournisseur) {
$thirdTypeArray['supplier'] = $langs->trans("supplier");
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->facture->lire) || (!empty($conf->supplier_invoice->enabled) && $user->rights->supplier_invoice->lire)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->facture->lire) || (isModEnabled("supplier_invoice") && $user->rights->supplier_invoice->lire)) {
$elementTypeArray['supplier_invoice'] = $langs->transnoentitiesnoconv('SuppliersInvoices');
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->commande->lire) || (!empty($conf->supplier_order->enabled) && $user->rights->supplier_order->lire)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->commande->lire) || (isModEnabled("supplier_order") && $user->rights->supplier_order->lire)) {
$elementTypeArray['supplier_order'] = $langs->transnoentitiesnoconv('SuppliersOrders');
}
// There no contact type for supplier proposals
- // if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && $user->rights->supplier_proposal->lire) $elementTypeArray['supplier_proposal']=$langs->transnoentitiesnoconv('SupplierProposals');
+ // if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) && $user->rights->supplier_proposal->lire) $elementTypeArray['supplier_proposal']=$langs->transnoentitiesnoconv('SupplierProposals');
}
print '
';
@@ -606,9 +608,9 @@ if ($sql_select) {
// Show range
$prodreftxt .= get_date_range($objp->date_start, $objp->date_end);
// Add description in form
- if (! empty($conf->global->PRODUIT_DESC_IN_FORM))
+ if (!empty($conf->global->PRODUIT_DESC_IN_FORM))
{
- $prodreftxt .= (! empty($objp->description) && $objp->description!=$objp->product_label)?' '.dol_htmlentitiesbr($objp->description):'';
+ $prodreftxt .= (!empty($objp->description) && $objp->description!=$objp->product_label)?' '.dol_htmlentitiesbr($objp->description):'';
}
*/
print '';
diff --git a/htdocs/contact/document.php b/htdocs/contact/document.php
index 3fac8adea15..f62e82ee5a1 100644
--- a/htdocs/contact/document.php
+++ b/htdocs/contact/document.php
@@ -23,6 +23,8 @@
* \brief Page with attached files on contact
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
@@ -33,6 +35,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
// Load translation files required by the page
$langs->loadLangs(array('other', 'companies', 'contact'));
+// Get parameters
$id = GETPOST('id', 'int');
$action = GETPOST('action', 'aZ09');
$confirm = GETPOST('confirm', 'alpha');
diff --git a/htdocs/contact/info.php b/htdocs/contact/info.php
index 4cea1cae85b..64688635179 100644
--- a/htdocs/contact/info.php
+++ b/htdocs/contact/info.php
@@ -23,6 +23,8 @@
* \brief Onglet info d'un contact
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
diff --git a/htdocs/contact/list.php b/htdocs/contact/list.php
index a0091061adb..a247e9b1302 100644
--- a/htdocs/contact/list.php
+++ b/htdocs/contact/list.php
@@ -33,6 +33,8 @@
* \brief Page to list all contacts
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
@@ -44,6 +46,7 @@ $langs->loadLangs(array("companies", "suppliers", "categories"));
$socialnetworks = getArrayOfSocialNetworks();
+// Get parameters
$action = GETPOST('action', 'aZ09');
$massaction = GETPOST('massaction', 'alpha');
$show_files = GETPOST('show_files', 'int');
@@ -80,7 +83,7 @@ if (!empty($conf->mailing->enabled)) {
} else {
$search_no_email = -1;
}
-if (!empty($conf->socialnetworks->enabled)) {
+if (isModEnabled('socialnetworks')) {
foreach ($socialnetworks as $key => $value) {
if ($value['active']) {
$search_[$key] = GETPOST("search_".$key, 'alpha');
@@ -218,7 +221,7 @@ $arrayfields['unsubscribed'] = array(
'enabled'=>(!empty($conf->mailing->enabled)),
'position'=>111);
-if (!empty($conf->socialnetworks->enabled)) {
+if (isModEnabled('socialnetworks')) {
foreach ($socialnetworks as $key => $value) {
if ($value['active']) {
$arrayfields['p.'.$key] = array(
@@ -286,7 +289,7 @@ if (empty($reshook)) {
$search_fax = "";
$search_email = "";
$search_no_email = -1;
- if (!empty($conf->socialnetworks->enabled)) {
+ if (isModEnabled('socialnetworks')) {
foreach ($socialnetworks as $key => $value) {
if ($value['active']) {
$search_[$key] = "";
@@ -496,7 +499,7 @@ if (strlen($search_phone_mobile)) {
if (strlen($search_fax)) {
$sql .= natural_search('p.fax', $search_fax);
}
-if (!empty($conf->socialnetworks->enabled)) {
+if (isModEnabled('socialnetworks')) {
foreach ($socialnetworks as $key => $value) {
if ($value['active'] && strlen($search_[$key])) {
$sql .= " AND p.socialnetworks LIKE '%\"".$key."\":\"".$search_[$key]."%'";
@@ -731,7 +734,7 @@ if ($search_firstlast_only) {
}
$moreforfilter = '';
-if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire) {
+if (isModEnabled('categorie') && $user->rights->categorie->lire) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
$moreforfilter .= '';
$tmptitle = $langs->trans('ContactCategoriesShort');
@@ -753,7 +756,7 @@ if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire) {
$moreforfilter .= '
';
}
- if (!empty($conf->fournisseur->enabled) && (empty($type) || $type == 'f')) {
+ if (isModEnabled("fournisseur") && (empty($type) || $type == 'f')) {
$moreforfilter .= '';
$tmptitle = $langs->trans('SuppliersCategoriesShort');
$moreforfilter .= img_picto($tmptitle, 'category', 'class="pictofixedwidth"');
@@ -828,14 +831,14 @@ if (!empty($arrayfields['p.town']['checked'])) {
print '';
}
// State
-/*if (! empty($arrayfields['state.nom']['checked']))
+/*if (!empty($arrayfields['state.nom']['checked']))
{
print '
';
print ' ';
print ' ';
}
// Region
- if (! empty($arrayfields['region.nom']['checked']))
+ if (!empty($arrayfields['region.nom']['checked']))
{
print '
';
print ' ';
@@ -877,7 +880,7 @@ if (!empty($arrayfields['unsubscribed']['checked'])) {
print $form->selectarray('search_no_email', array('-1'=>'', '0'=>$langs->trans('No'), '1'=>$langs->trans('Yes')), $search_no_email);
print ' ';
}
-if (!empty($conf->socialnetworks->enabled)) {
+if (isModEnabled('socialnetworks')) {
foreach ($socialnetworks as $key => $value) {
if ($value['active']) {
if (!empty($arrayfields['p.'.$key]['checked'])) {
@@ -978,8 +981,8 @@ if (!empty($arrayfields['p.zip']['checked'])) {
if (!empty($arrayfields['p.town']['checked'])) {
print_liste_field_titre($arrayfields['p.town']['label'], $_SERVER["PHP_SELF"], "p.town", $begin, $param, '', $sortfield, $sortorder);
}
-//if (! empty($arrayfields['state.nom']['checked'])) print_liste_field_titre($arrayfields['state.nom']['label'],$_SERVER["PHP_SELF"],"state.nom","",$param,'',$sortfield,$sortorder);
-//if (! empty($arrayfields['region.nom']['checked'])) print_liste_field_titre($arrayfields['region.nom']['label'],$_SERVER["PHP_SELF"],"region.nom","",$param,'',$sortfield,$sortorder);
+//if (!empty($arrayfields['state.nom']['checked'])) print_liste_field_titre($arrayfields['state.nom']['label'],$_SERVER["PHP_SELF"],"state.nom","",$param,'',$sortfield,$sortorder);
+//if (!empty($arrayfields['region.nom']['checked'])) print_liste_field_titre($arrayfields['region.nom']['label'],$_SERVER["PHP_SELF"],"region.nom","",$param,'',$sortfield,$sortorder);
if (!empty($arrayfields['country.code_iso']['checked'])) {
print_liste_field_titre($arrayfields['country.code_iso']['label'], $_SERVER["PHP_SELF"], "co.code_iso", "", $param, '', $sortfield, $sortorder, 'center ');
}
@@ -1001,7 +1004,7 @@ if (!empty($arrayfields['p.email']['checked'])) {
if (!empty($arrayfields['unsubscribed']['checked'])) {
print_liste_field_titre($arrayfields['unsubscribed']['label'], $_SERVER["PHP_SELF"], "unsubscribed", $begin, $param, '', $sortfield, $sortorder, 'center ');
}
-if (!empty($conf->socialnetworks->enabled)) {
+if (isModEnabled('socialnetworks')) {
foreach ($socialnetworks as $key => $value) {
if ($value['active'] && !empty($arrayfields['p.'.$key]['checked'])) {
print_liste_field_titre($arrayfields['p.'.$key]['label'], $_SERVER["PHP_SELF"], "p.".$key, $begin, $param, '', $sortfield, $sortorder);
@@ -1147,13 +1150,13 @@ while ($i < min($num, $limit)) {
}
}
// State
- /*if (! empty($arrayfields['state.nom']['checked']))
+ /*if (!empty($arrayfields['state.nom']['checked']))
{
print "
".$obj->state_name." \n";
if (! $i) $totalarray['nbfield']++;
}
// Region
- if (! empty($arrayfields['region.nom']['checked']))
+ if (!empty($arrayfields['region.nom']['checked']))
{
print "
".$obj->region_name." \n";
if (! $i) $totalarray['nbfield']++;
@@ -1216,7 +1219,7 @@ while ($i < min($num, $limit)) {
$totalarray['nbfield']++;
}
}
- if (!empty($conf->socialnetworks->enabled)) {
+ if (isModEnabled('socialnetworks')) {
foreach ($socialnetworks as $key => $value) {
if ($value['active'] && !empty($arrayfields['p.'.$key]['checked'])) {
print '
'.dol_print_socialnetworks($arraysocialnetworks[$key], $obj->rowid, $obj->socid, $key, $socialnetworks).' ';
diff --git a/htdocs/contact/project.php b/htdocs/contact/project.php
index e88c056af37..6680f7f7ee3 100644
--- a/htdocs/contact/project.php
+++ b/htdocs/contact/project.php
@@ -62,12 +62,12 @@ if ($id) {
}
$socid = $object->thirdparty->id;
$title = $langs->trans("Projects");
- if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/', $conf->global->MAIN_HTML_TITLE) && $object->name) {
+ if (!empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/', $conf->global->MAIN_HTML_TITLE) && $object->name) {
$title = $object->name." - ".$title;
}
llxHeader('', $title);
- if (! empty($conf->notification->enabled)) {
+ if (!empty($conf->notification->enabled)) {
$langs->load("mails");
}
$head = contact_prepare_head($object);
diff --git a/htdocs/contrat/agenda.php b/htdocs/contrat/agenda.php
index a8dc5e7ee3b..928dff1aea6 100644
--- a/htdocs/contrat/agenda.php
+++ b/htdocs/contrat/agenda.php
@@ -27,7 +27,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/contract.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -110,7 +110,7 @@ if (empty($reshook)) {
$form = new Form($db);
$formfile = new FormFile($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -171,7 +171,7 @@ if ($id > 0) {
$morehtmlref .= ' (
'.$langs->trans("OtherContracts").' )';
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' ';
if ($user->rights->contrat->creer) {
@@ -227,11 +227,11 @@ if ($id > 0) {
$out='';
$permok=$user->rights->agenda->myactions->create;
- if ((! empty($objthirdparty->id) || ! empty($objcon->id)) && $permok)
+ if ((!empty($objthirdparty->id) || !empty($objcon->id)) && $permok)
{
//$out.='
trans("AddAnAction"),'filenew');
//$out.=" ";
diff --git a/htdocs/contrat/card.php b/htdocs/contrat/card.php
index ff3a6db84f1..9cbe8b5c686 100644
--- a/htdocs/contrat/card.php
+++ b/htdocs/contrat/card.php
@@ -41,10 +41,10 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php';
-if (!empty($conf->propal->enabled)) {
+if (isModEnabled("propal")) {
require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
}
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -396,11 +396,28 @@ if (empty($reshook)) {
// Set if we used free entry or predefined product
$predef = '';
$product_desc = (GETPOSTISSET('dp_desc') ? GETPOST('dp_desc', 'restricthtml') : '');
- $price_ht = price2num(GETPOST('price_ht'), 'MU', 2);
- $price_ht_devise = price2num(GETPOST('multicurrency_price_ht'), 'CU', 2);
+
+ $price_ht = '';
+ $price_ht_devise = '';
+ $price_ttc = '';
+ $price_ttc_devise = '';
+
+ if (GETPOST('price_ht') !== '') {
+ $price_ht = price2num(GETPOST('price_ht'), 'MU', 2);
+ }
+ if (GETPOST('multicurrency_price_ht') !== '') {
+ $price_ht_devise = price2num(GETPOST('multicurrency_price_ht'), 'CU', 2);
+ }
+ if (GETPOST('price_ttc') !== '') {
+ $price_ttc = price2num(GETPOST('price_ttc'), 'MU', 2);
+ }
+ if (GETPOST('multicurrency_price_ttc') !== '') {
+ $price_ttc_devise = price2num(GETPOST('multicurrency_price_ttc'), 'CU', 2);
+ }
+
if (GETPOST('prod_entry_mode', 'alpha') == 'free') {
$idprod = 0;
- $tva_tx = (GETPOST('tva_tx', 'alpha') ? GETPOST('tva_tx', 'alpha') : 0);
+ $tva_tx = (GETPOST('tva_tx', 'alpha') ? price2num(preg_replace('/\s*\(.*\)/', '', GETPOST('tva_tx', 'alpha'))) : 0);
} else {
$idprod = GETPOST('idprod', 'int');
$tva_tx = '';
@@ -408,6 +425,9 @@ if (empty($reshook)) {
$qty = price2num(GETPOST('qty'.$predef, 'alpha'), 'MS');
$remise_percent = (GETPOSTISSET('remise_percent'.$predef) ? price2num(GETPOST('remise_percent'.$predef), 2) : 0);
+ if (empty($remise_percent)) {
+ $remise_percent = 0;
+ }
if ($qty == '') {
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Qty")), null, 'errors');
@@ -460,6 +480,7 @@ if (empty($reshook)) {
$pu_ht = $prod->price;
$pu_ttc = $prod->price_ttc;
$price_min = $prod->price_min;
+ $price_min_ttc = $prod->price_min_ttc;
$price_base_type = $prod->price_base_type;
// On defini prix unitaire
@@ -467,8 +488,10 @@ if (empty($reshook)) {
$pu_ht = $prod->multiprices[$object->thirdparty->price_level];
$pu_ttc = $prod->multiprices_ttc[$object->thirdparty->price_level];
$price_min = $prod->multiprices_min[$object->thirdparty->price_level];
+ $price_min_ttc = $prod->multiprices_min_ttc[$object->thirdparty->price_level];
$price_base_type = $prod->multiprices_base_type[$object->thirdparty->price_level];
} elseif (!empty($conf->global->PRODUIT_CUSTOMER_PRICES)) {
+ // If price per customer
require_once DOL_DOCUMENT_ROOT.'/product/class/productcustomerprice.class.php';
$prodcustprice = new Productcustomerprice($db);
@@ -478,10 +501,12 @@ if (empty($reshook)) {
$result = $prodcustprice->fetch_all('', '', 0, 0, $filter);
if ($result) {
if (count($prodcustprice->lines) > 0) {
- $pu_ht = price($prodcustprice->lines [0]->price);
- $pu_ttc = price($prodcustprice->lines [0]->price_ttc);
- $price_base_type = $prodcustprice->lines [0]->price_base_type;
- $tva_tx = $prodcustprice->lines [0]->tva_tx;
+ $pu_ht = price($prodcustprice->lines[0]->price);
+ $pu_ttc = price($prodcustprice->lines[0]->price_ttc);
+ $price_min = price($prodcustprice->lines[0]->price_min);
+ $price_min_ttc = price($prodcustprice->lines[0]->price_min_ttc);
+ $price_base_type = $prodcustprice->lines[0]->price_base_type;
+ $tva_tx = $prodcustprice->lines[0]->tva_tx;
if ($prodcustprice->lines[0]->default_vat_code && !preg_match('/\(.*\)/', $tva_tx)) {
$tva_tx .= ' ('.$prodcustprice->lines[0]->default_vat_code.')';
}
@@ -496,9 +521,15 @@ if (empty($reshook)) {
$tmpvat = price2num(preg_replace('/\s*\(.*\)/', '', $tva_tx));
$tmpprodvat = price2num(preg_replace('/\s*\(.*\)/', '', $prod->tva_tx));
- // On reevalue prix selon taux tva car taux tva transaction peut etre different
- // de ceux du produit par defaut (par exemple si pays different entre vendeur et acheteur).
- if ($tmpvat != $tmpprodvat) {
+ // Set unit price to use
+ if (!empty($price_ht) || $price_ht === '0') {
+ $pu_ht = price2num($price_ht, 'MU');
+ $pu_ttc = price2num($pu_ht * (1 + ($tmpvat / 100)), 'MU');
+ } elseif (!empty($price_ttc) || $price_ttc === '0') {
+ $pu_ttc = price2num($price_ttc, 'MU');
+ $pu_ht = price2num($pu_ttc / (1 + ($tmpvat / 100)), 'MU');
+ } elseif ($tmpvat != $tmpprodvat) {
+ // Is this still used ?
if ($price_base_type != 'HT') {
$pu_ht = price2num($pu_ttc / (1 + ($tmpvat / 100)), 'MU');
} else {
@@ -521,12 +552,22 @@ if (empty($reshook)) {
$fk_unit = $prod->fk_unit;
} else {
- $pu_ht = GETPOST('price_ht');
- $price_base_type = 'HT';
- $tva_tx = GETPOST('tva_tx') ?str_replace('*', '', GETPOST('tva_tx')) : 0; // tva_tx field may be disabled, so we use vat rate 0
- $tva_npr = preg_match('/\*/', GETPOST('tva_tx')) ? 1 : 0;
+ $pu_ht = price2num($price_ht, 'MU');
+ $pu_ttc = price2num($price_ttc, 'MU');
+ $tva_npr = (preg_match('/\*/', $tva_tx) ? 1 : 0);
+ if (empty($tva_tx)) {
+ $tva_npr = 0;
+ }
+ $tva_tx = str_replace('*', '', $tva_tx);
$desc = $product_desc;
$fk_unit = GETPOST('units', 'alpha');
+ $pu_ht_devise = price2num($price_ht_devise, 'MU');
+ $pu_ttc_devise = price2num($price_ttc_devise, 'MU');
+
+ $price_base_type = 'HT';
+ if ($pu_ttc && !$pu_ht) {
+ $price_base_type = 'TTC';
+ }
}
$localtax1_tx = get_localtax($tva_tx, 1, $object->thirdparty, $mysoc, $tva_npr);
@@ -577,10 +618,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE) && !empty($conf->global->CONTRACT_ADDON_PDF)) { // No generation if default type not defined
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -754,10 +795,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -1004,7 +1045,7 @@ llxHeader('', $langs->trans("Contract"), $help_url);
$form = new Form($db);
$formfile = new FormFile($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -1163,7 +1204,7 @@ if ($action == 'create') {
print "";
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load('projects');
$formproject = new FormProjets($db);
@@ -1327,7 +1368,7 @@ if ($action == 'create') {
$morehtmlref .= ' (
'.$langs->trans("OtherContracts").' )';
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' ';
if ($user->rights->contrat->creer) {
@@ -1427,6 +1468,11 @@ if ($action == 'create') {
* Lines of contracts
*/
+ // Add products/services form
+ //$forceall = 1;
+ global $inputalsopricewithtax;
+ $inputalsopricewithtax = 1;
+
$productstatic = new Product($db);
$usemargins = 0;
@@ -1468,7 +1514,7 @@ if ($action == 'create') {
print '
'.$langs->trans("ServiceNb", $cursorline).' ';
print '
'.$langs->trans("VAT").' ';
print '
'.$langs->trans("PriceUHT").' ';
- //if (!empty($conf->multicurrency->enabled)) {
+ //if (isModEnabled("multicurrency")) {
// print '
'.$langs->trans("PriceUHTCurrency").' ';
//}
print '
'.$langs->trans("Qty").' ';
@@ -1529,7 +1575,7 @@ if ($action == 'create') {
// Price
print '
'.($objp->subprice != '' ? price($objp->subprice) : '')." \n";
// Price multicurrency
- /*if (!empty($conf->multicurrency->enabled)) {
+ /*if (isModEnabled("multicurrency")) {
print '
'.price($objp->multicurrency_subprice).' ';
}*/
// Quantity
@@ -1672,7 +1718,7 @@ if ($action == 'create') {
print '
';
// Price multicurrency
- /*if (!empty($conf->multicurrency->enabled)) {
+ /*if (isModEnabled("multicurrency")) {
print '
'.price($objp->multicurrency_subprice).' ';
}*/
@@ -2070,7 +2116,7 @@ if ($action == 'create') {
}
}
- if (!empty($conf->commande->enabled) && $object->statut > 0 && $object->nbofservicesclosed < $nbofservices) {
+ if (isModEnabled('commande') && $object->statut > 0 && $object->nbofservicesclosed < $nbofservices) {
$langs->load("orders");
if ($user->rights->commande->creer) {
print dolGetButtonAction($langs->trans('CreateOrder'), '', 'default', DOL_URL_ROOT.'/commande/card.php?action=create&token='.newToken().'&origin='.$object->element.'&originid='.$object->id.'&socid='.$object->thirdparty->id, '', true, $params);
diff --git a/htdocs/contrat/class/contrat.class.php b/htdocs/contrat/class/contrat.class.php
index 088d8f9b6d5..26d2d6b6bcb 100644
--- a/htdocs/contrat/class/contrat.class.php
+++ b/htdocs/contrat/class/contrat.class.php
@@ -233,7 +233,7 @@ class Contrat extends CommonObject
'datec' =>array('type'=>'datetime', 'label'=>'DateCreation', 'enabled'=>1, 'visible'=>-1, 'position'=>40),
'date_contrat' =>array('type'=>'datetime', 'label'=>'Date contrat', 'enabled'=>1, 'visible'=>-1, 'position'=>45),
'fk_soc' =>array('type'=>'integer:Societe:societe/class/societe.class.php', 'label'=>'ThirdParty', 'enabled'=>'$conf->societe->enabled', 'visible'=>-1, 'notnull'=>1, 'position'=>70),
- 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Project', 'enabled'=>'$conf->project->enabled', 'visible'=>-1, 'position'=>75),
+ 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Project', 'enabled'=>"isModEnabled('project')", 'visible'=>-1, 'position'=>75),
'fk_commercial_signature' =>array('type'=>'integer:User:user/class/user.class.php', 'label'=>'SaleRepresentative Signature', 'enabled'=>1, 'visible'=>-1, 'position'=>80),
'fk_commercial_suivi' =>array('type'=>'integer:User:user/class/user.class.php', 'label'=>'SaleRepresentative follower', 'enabled'=>1, 'visible'=>-1, 'position'=>85),
'fk_user_author' =>array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserAuthor', 'enabled'=>1, 'visible'=>-1, 'notnull'=>1, 'position'=>90),
@@ -2650,7 +2650,7 @@ class Contrat extends CommonObject
while ($i < $num) {
$obj = $this->db->fetch_object($resql);
if ($obj) {
- if (! empty($contractlineprocessed[$obj->lid]) || ! empty($contractignored[$obj->rowid]) || ! empty($contracterror[$obj->rowid])) {
+ if (!empty($contractlineprocessed[$obj->lid]) || !empty($contractignored[$obj->rowid]) || !empty($contracterror[$obj->rowid])) {
continue;
}
diff --git a/htdocs/contrat/contact.php b/htdocs/contrat/contact.php
index 1bd9d3388f6..d32a0464b02 100644
--- a/htdocs/contrat/contact.php
+++ b/htdocs/contrat/contact.php
@@ -29,7 +29,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/contract.lib.php';
require_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php';
require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -136,7 +136,7 @@ if ($id > 0 || !empty($ref)) {
$morehtmlref = '';
- //if (! empty($modCodeContract->code_auto)) {
+ //if (!empty($modCodeContract->code_auto)) {
$morehtmlref .= $object->ref;
/*} else {
$morehtmlref.=$form->editfieldkey("",'ref',$object->ref,0,'string','',0,3);
@@ -154,7 +154,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= '
'.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' ';
if ($user->rights->contrat->creer) {
diff --git a/htdocs/contrat/document.php b/htdocs/contrat/document.php
index ce386fe21b9..19248769ef8 100644
--- a/htdocs/contrat/document.php
+++ b/htdocs/contrat/document.php
@@ -33,7 +33,7 @@ require_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -123,7 +123,7 @@ if ($object->id) {
$morehtmlref = '';
- //if (! empty($modCodeContract->code_auto)) {
+ //if (!empty($modCodeContract->code_auto)) {
$morehtmlref .= $object->ref;
/*} else {
$morehtmlref.=$form->editfieldkey("",'ref',$object->ref,0,'string','',0,3);
@@ -144,7 +144,7 @@ if ($object->id) {
$morehtmlref .= ' (
'.$langs->trans("OtherContracts").' )';
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' ';
if ($user->rights->contrat->creer) {
diff --git a/htdocs/contrat/index.php b/htdocs/contrat/index.php
index 62b60d9a091..d537934a299 100644
--- a/htdocs/contrat/index.php
+++ b/htdocs/contrat/index.php
@@ -239,7 +239,7 @@ print "
";
// Draft contracts
-if (!empty($conf->contrat->enabled) && $user->rights->contrat->lire) {
+if (isModEnabled('contrat') && $user->rights->contrat->lire) {
$sql = "SELECT c.rowid, c.ref,";
$sql .= " s.nom as name, s.rowid as socid";
$sql .= " FROM ".MAIN_DB_PREFIX."contrat as c, ".MAIN_DB_PREFIX."societe as s";
diff --git a/htdocs/contrat/list.php b/htdocs/contrat/list.php
index 5ceec0a4cb9..0630f664b8d 100644
--- a/htdocs/contrat/list.php
+++ b/htdocs/contrat/list.php
@@ -571,7 +571,7 @@ if ($user->rights->user->user->lire) {
$moreforfilter .= '
';
}
// If the user can view categories of products
-if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire && ($user->rights->produit->lire || $user->rights->service->lire)) {
+if (isModEnabled('categorie') && $user->rights->categorie->lire && ($user->rights->produit->lire || $user->rights->service->lire)) {
include_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
$moreforfilter .= '';
$tmptitle = $langs->trans('IncludingProductWithTag');
diff --git a/htdocs/contrat/note.php b/htdocs/contrat/note.php
index 540491698c1..997ba94de3b 100644
--- a/htdocs/contrat/note.php
+++ b/htdocs/contrat/note.php
@@ -27,7 +27,7 @@
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/contract.lib.php';
require_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -93,7 +93,7 @@ if ($id > 0 || !empty($ref)) {
$morehtmlref = '';
- //if (! empty($modCodeContract->code_auto)) {
+ //if (!empty($modCodeContract->code_auto)) {
$morehtmlref .= $object->ref;
/*} else {
$morehtmlref.=$form->editfieldkey("",'ref',$object->ref,0,'string','',0,3);
@@ -111,7 +111,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= '
'.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' ';
if ($user->rights->contrat->creer) {
diff --git a/htdocs/contrat/services_list.php b/htdocs/contrat/services_list.php
index 2869c66cd9f..cfc888e229a 100644
--- a/htdocs/contrat/services_list.php
+++ b/htdocs/contrat/services_list.php
@@ -375,7 +375,7 @@ if (!$resql) {
$num = $db->num_rows($resql);
/*
-if ($num == 1 && ! empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE) && $search_all)
+if ($num == 1 && !empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE) && $search_all)
{
$obj = $db->fetch_object($resql);
$id = $obj->id;
diff --git a/htdocs/core/actions_addupdatedelete.inc.php b/htdocs/core/actions_addupdatedelete.inc.php
index 39dba81976f..c7dffe08691 100644
--- a/htdocs/core/actions_addupdatedelete.inc.php
+++ b/htdocs/core/actions_addupdatedelete.inc.php
@@ -366,10 +366,10 @@ if ($action == 'confirm_deleteline' && $confirm == 'yes' && !empty($permissionto
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && is_object($object->thirdparty)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && is_object($object->thirdparty)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -442,10 +442,10 @@ if ($action == 'confirm_close' && $confirm == 'yes' && $permissiontoadd) {
if (method_exists($object, 'generateDocument')) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -486,10 +486,10 @@ if ($action == 'confirm_reopen' && $confirm == 'yes' && $permissiontoadd) {
if (method_exists($object, 'generateDocument')) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
diff --git a/htdocs/core/actions_dellink.inc.php b/htdocs/core/actions_dellink.inc.php
index 9bf56b2f876..4db2c64206a 100644
--- a/htdocs/core/actions_dellink.inc.php
+++ b/htdocs/core/actions_dellink.inc.php
@@ -40,7 +40,7 @@ if ($action == 'addlink' && !empty($permissiondellink) && !$cancellink && $id >
}
// Link by reference
-if ($action == 'addlinkbyref' && ! empty($permissiondellink) && !$cancellink && $id > 0 && !empty($addlinkref) && !empty($conf->global->MAIN_LINK_BY_REF_IN_LINKTO)) {
+if ($action == 'addlinkbyref' && !empty($permissiondellink) && !$cancellink && $id > 0 && !empty($addlinkref) && !empty($conf->global->MAIN_LINK_BY_REF_IN_LINKTO)) {
$element_prop = getElementProperties($addlink);
if (is_array($element_prop)) {
dol_include_once('/' . $element_prop['classpath'] . '/' . $element_prop['classfile'] . '.class.php');
diff --git a/htdocs/core/actions_lineupdown.inc.php b/htdocs/core/actions_lineupdown.inc.php
index 5aee952292b..d41f1f1932c 100644
--- a/htdocs/core/actions_lineupdown.inc.php
+++ b/htdocs/core/actions_lineupdown.inc.php
@@ -34,10 +34,10 @@ if ($action == 'up' && $permissiontoedit) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -59,10 +59,10 @@ if ($action == 'down' && $permissiontoedit) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
diff --git a/htdocs/core/actions_massactions.inc.php b/htdocs/core/actions_massactions.inc.php
index a66c9b895b7..2854a631e42 100644
--- a/htdocs/core/actions_massactions.inc.php
+++ b/htdocs/core/actions_massactions.inc.php
@@ -456,7 +456,7 @@ if (!$error && $massaction == 'confirm_presend') {
//var_dump($oneemailperrecipient); var_dump($listofqualifiedobj); var_dump($listofqualifiedref);
foreach ($looparray as $objectid => $objecttmp) { // $objecttmp is a real object or an empty object if we choose to send one email per thirdparty instead of one per object
// Make substitution in email content
- if (!empty($conf->project->enabled) && method_exists($objecttmp, 'fetch_projet') && is_null($objecttmp->project)) {
+ if (isModEnabled('project') && method_exists($objecttmp, 'fetch_projet') && is_null($objecttmp->project)) {
$objecttmp->fetch_projet();
}
$substitutionarray = getCommonSubstitutionArray($langs, 0, null, $objecttmp);
@@ -763,10 +763,10 @@ if (!$error && $massaction == "builddoc" && $permissiontoread && !GETPOST('butto
// Define output language (Here it is not used because we do only merging existing PDF)
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- //elseif ($conf->global->MAIN_MULTILANGS && empty($newlang) && is_object($objecttmp->thirdparty)) { // On massaction, we can have several values for $objecttmp->thirdparty
+ //elseif (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && is_object($objecttmp->thirdparty)) { // On massaction, we can have several values for $objecttmp->thirdparty
// $newlang = $objecttmp->thirdparty->default_lang;
//}
if (!empty($newlang)) {
@@ -965,10 +965,10 @@ if (!$error && $massaction == 'validate' && $permissiontoadd) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $objecttmp->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -1116,13 +1116,13 @@ if (!$error && $massaction == 'generate_doc' && $permissiontoread) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && isset($objecttmp->thirdparty->default_lang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && isset($objecttmp->thirdparty->default_lang)) {
$newlang = $objecttmp->thirdparty->default_lang; // for proposal, order, invoice, ...
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && isset($objecttmp->default_lang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && isset($objecttmp->default_lang)) {
$newlang = $objecttmp->default_lang; // for thirdparty
}
if (!empty($newlang)) {
diff --git a/htdocs/core/actions_setnotes.inc.php b/htdocs/core/actions_setnotes.inc.php
index 91e7f4a8aca..7595daf1093 100644
--- a/htdocs/core/actions_setnotes.inc.php
+++ b/htdocs/core/actions_setnotes.inc.php
@@ -45,10 +45,10 @@ if ($action == 'setnote_public' && !empty($permissionnote) && !GETPOST('cancel',
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
diff --git a/htdocs/core/ajax/fetchKnowledgeRecord.php b/htdocs/core/ajax/fetchKnowledgeRecord.php
index 0182887c225..179d8169465 100644
--- a/htdocs/core/ajax/fetchKnowledgeRecord.php
+++ b/htdocs/core/ajax/fetchKnowledgeRecord.php
@@ -66,6 +66,8 @@ $lang = GETPOST('lang', 'aZ09');
* View
*/
+top_httphead('application/json');
+
if ($action == "getKnowledgeRecord") {
$response = '';
$sql = "SELECT kr.rowid, kr.ref, kr.question, kr.answer,kr.url,ctc.code";
diff --git a/htdocs/core/ajax/fileupload.php b/htdocs/core/ajax/fileupload.php
index 0e05036de02..53d65e4ab75 100644
--- a/htdocs/core/ajax/fileupload.php
+++ b/htdocs/core/ajax/fileupload.php
@@ -50,6 +50,13 @@ $element = GETPOST('element', 'alpha');
$upload_handler = new FileUpload(null, $fk_element, $element);
+
+/*
+ * View
+ */
+
+top_httphead();
+
header('Pragma: no-cache');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Content-Disposition: inline; filename="files.json"');
diff --git a/htdocs/core/ajax/onlineSign.php b/htdocs/core/ajax/onlineSign.php
index 0f4d274cc0d..8f3cb23b396 100644
--- a/htdocs/core/ajax/onlineSign.php
+++ b/htdocs/core/ajax/onlineSign.php
@@ -73,7 +73,7 @@ if ($type == 'proposal') {
$securekeyseed = getDolGlobalString('PROPOSAL_ONLINE_SIGNATURE_SECURITY_TOKEN');
}
-if (empty($SECUREKEY) || !dol_verifyHash($securekeyseed.$type.$ref.(empty($conf->multicompany->enabled) ? '' : $entity), $SECUREKEY, '0')) {
+if (empty($SECUREKEY) || !dol_verifyHash($securekeyseed.$type.$ref.(!isModEnabled('multicompany') ? '' : $entity), $SECUREKEY, '0')) {
http_response_code(403);
print 'Bad value for securitykey. Value provided '.dol_escape_htmltag($SECUREKEY).' does not match expected value for ref='.dol_escape_htmltag($ref);
exit(-1);
@@ -91,6 +91,8 @@ if (empty($SECUREKEY) || !dol_verifyHash($securekeyseed.$type.$ref.(empty($conf-
* View
*/
+top_httphead();
+
if ($action == "importSignature") {
if (!empty($signature) && $signature[0] == "image/png;base64") {
$signature = $signature[1];
diff --git a/htdocs/core/ajax/saveinplace.php b/htdocs/core/ajax/saveinplace.php
index 05fad8148fa..a127fa08645 100644
--- a/htdocs/core/ajax/saveinplace.php
+++ b/htdocs/core/ajax/saveinplace.php
@@ -126,8 +126,8 @@ if (!empty($field) && !empty($element) && !empty($table_element) && !empty($fk_e
$check_access = restrictedArea($user, $feature, $object_id, '', $feature2);
//var_dump($user->rights);
/*
- if (! empty($user->rights->$newelement->creer) || ! empty($user->rights->$newelement->create) || ! empty($user->rights->$newelement->write)
- || (isset($subelement) && (! empty($user->rights->$newelement->$subelement->creer) || ! empty($user->rights->$newelement->$subelement->write)))
+ if (!empty($user->rights->$newelement->creer) || !empty($user->rights->$newelement->create) || !empty($user->rights->$newelement->write)
+ || (isset($subelement) && (!empty($user->rights->$newelement->$subelement->creer) || !empty($user->rights->$newelement->$subelement->write)))
|| ($element == 'payment' && $user->rights->facture->paiement)
|| ($element == 'payment_supplier' && $user->rights->fournisseur->facture->creer))
*/
diff --git a/htdocs/core/ajax/selectsearchbox.php b/htdocs/core/ajax/selectsearchbox.php
index 54e3e1e4470..201a4b89991 100644
--- a/htdocs/core/ajax/selectsearchbox.php
+++ b/htdocs/core/ajax/selectsearchbox.php
@@ -25,6 +25,8 @@
// This script is called with a POST method or as an include.
if (!isset($usedbyinclude) || empty($usedbyinclude)) {
+ top_httphead('application/json');
+
if (!defined('NOTOKENRENEWAL')) {
define('NOTOKENRENEWAL', 1); // Disables token renewal
}
diff --git a/htdocs/core/boxes/box_activity.php b/htdocs/core/boxes/box_activity.php
index 49690dc893e..fb0a60b567f 100644
--- a/htdocs/core/boxes/box_activity.php
+++ b/htdocs/core/boxes/box_activity.php
@@ -62,9 +62,9 @@ class box_activity extends ModeleBoxes
// FIXME: Pb into some status
$this->enabled = ($conf->global->MAIN_FEATURES_LEVEL); // Not enabled by default due to bugs (see previous comments)
- $this->hidden = !((isModEnabled('facture') && $user->rights->facture->lire)
- || (isModEnabled('commande') && $user->rights->commande->lire)
- || (isModEnabled('propal') && $user->rights->propale->lire)
+ $this->hidden = !((isModEnabled('facture') && $user->hasRight('facture', 'read'))
+ || (isModEnabled('commande') && $user->hasRight('commande', 'read'))
+ || (isModEnabled('propal') && $user->hasRight('propal', 'read'))
);
}
@@ -102,7 +102,7 @@ class box_activity extends ModeleBoxes
// list the summary of the propals
- if (!empty($conf->propal->enabled) && $user->rights->propale->lire) {
+ if (isModEnabled("propal") && $user->rights->propale->lire) {
include_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
$propalstatic = new Propal($this->db);
@@ -189,7 +189,7 @@ class box_activity extends ModeleBoxes
}
// list the summary of the orders
- if (!empty($conf->commande->enabled) && $user->rights->commande->lire) {
+ if (isModEnabled('commande') && $user->rights->commande->lire) {
include_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
$commandestatic = new Commande($this->db);
diff --git a/htdocs/core/boxes/box_birthdays.php b/htdocs/core/boxes/box_birthdays.php
index 6aec6f4064a..945552753ea 100644
--- a/htdocs/core/boxes/box_birthdays.php
+++ b/htdocs/core/boxes/box_birthdays.php
@@ -60,7 +60,7 @@ class box_birthdays extends ModeleBoxes
$this->db = $db;
- $this->hidden = !($user->rights->user->user->lire && empty($user->socid));
+ $this->hidden = !($user->hasRight('user', 'user', 'read') && empty($user->socid));
}
/**
diff --git a/htdocs/core/boxes/box_clients.php b/htdocs/core/boxes/box_clients.php
index 4a7ea965006..364b79932ef 100644
--- a/htdocs/core/boxes/box_clients.php
+++ b/htdocs/core/boxes/box_clients.php
@@ -65,7 +65,7 @@ class box_clients extends ModeleBoxes
$this->enabled = 0; // disabled by this option
}
- $this->hidden = !($user->rights->societe->lire && empty($user->socid));
+ $this->hidden = !($user->hasRight('societe', 'read') && empty($user->socid));
}
/**
diff --git a/htdocs/core/boxes/box_contracts.php b/htdocs/core/boxes/box_contracts.php
index 99ea5541c98..4251a4491f6 100644
--- a/htdocs/core/boxes/box_contracts.php
+++ b/htdocs/core/boxes/box_contracts.php
@@ -97,7 +97,7 @@ class box_contracts extends ModeleBoxes
if ($user->socid) {
$sql .= " AND s.rowid = ".((int) $user->socid);
}
- if (! empty($conf->global->MAIN_LASTBOX_ON_OBJECT_DATE)) {
+ if (!empty($conf->global->MAIN_LASTBOX_ON_OBJECT_DATE)) {
$sql .= " ORDER BY c.date_contrat DESC, c.ref DESC ";
} else {
$sql .= " ORDER BY c.tms DESC, c.ref DESC ";
diff --git a/htdocs/core/boxes/box_customers_outstanding_bill_reached.php b/htdocs/core/boxes/box_customers_outstanding_bill_reached.php
index 0f1fe97dfee..2bf5a2c0693 100644
--- a/htdocs/core/boxes/box_customers_outstanding_bill_reached.php
+++ b/htdocs/core/boxes/box_customers_outstanding_bill_reached.php
@@ -65,7 +65,7 @@ class box_customers_outstanding_bill_reached extends ModeleBoxes
$this->enabled = 0; // disabled by this option
}
- $this->hidden = !($user->rights->societe->lire && empty($user->socid));
+ $this->hidden = !($user->hasRight('societe', 'read') && empty($user->socid));
}
/**
diff --git a/htdocs/core/boxes/box_dolibarr_state_board.php b/htdocs/core/boxes/box_dolibarr_state_board.php
index 83615c17fd3..1efd1d27f95 100644
--- a/htdocs/core/boxes/box_dolibarr_state_board.php
+++ b/htdocs/core/boxes/box_dolibarr_state_board.php
@@ -116,15 +116,15 @@ class box_dolibarr_state_board extends ModeleBoxes
'members' => isModEnabled('adherent') && $user->rights->adherent->lire,
'customers' => isModEnabled('societe') && $user->rights->societe->lire && empty($conf->global->SOCIETE_DISABLE_CUSTOMERS) && empty($conf->global->SOCIETE_DISABLE_CUSTOMERS_STATS),
'prospects' => isModEnabled('societe') && $user->rights->societe->lire && empty($conf->global->SOCIETE_DISABLE_PROSPECTS) && empty($conf->global->SOCIETE_DISABLE_PROSPECTS_STATS),
- 'suppliers' => ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->lire)
- || (!empty($conf->supplier_order->enabled) && $user->rights->supplier_order->lire)
- || (!empty($conf->supplier_invoice->enabled) && $user->rights->supplier_invoice->lire)
+ 'suppliers' => ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->lire)
+ || (isModEnabled("supplier_order") && $user->rights->supplier_order->lire)
+ || (isModEnabled("supplier_invoice") && $user->rights->supplier_invoice->lire)
)
&& empty($conf->global->SOCIETE_DISABLE_SUPPLIERS_STATS),
'contacts' => isModEnabled('societe') && $user->hasRight('societe', 'contact', 'lire'),
'products' => isModEnabled('product') && $user->hasRight('produit', 'lire'),
'services' => isModEnabled('service') && $user->hasRight('service', 'lire'),
- 'proposals' => isModEnabled('propal') && $user->hasRight('propale', 'lire'),
+ 'proposals' => isModEnabled('propal') && $user->hasRight('propal', 'read'),
'orders' => isModEnabled('commande') && $user->hasRight('commande', 'lire'),
'invoices' => isModEnabled('facture') && $user->hasRight('facture', 'lire'),
'donations' => isModEnabled('don') && $user->hasRight('don', 'lire'),
diff --git a/htdocs/core/boxes/box_external_rss.php b/htdocs/core/boxes/box_external_rss.php
index 2a04aa27803..54f68c5e57f 100644
--- a/htdocs/core/boxes/box_external_rss.php
+++ b/htdocs/core/boxes/box_external_rss.php
@@ -120,6 +120,8 @@ class box_external_rss extends ModeleBoxes
// INFO on items
$items = $rssparser->getItems();
//print '
'.print_r($items,true).' ';
+
+ // Loop on last items
$nbitems = count($items);
for ($line = 0; $line < $max && $line < $nbitems; $line++) {
$item = $items[$line];
@@ -179,18 +181,18 @@ class box_external_rss extends ModeleBoxes
$this->info_box_contents[$line][0] = array(
'td' => 'class="left" width="16"',
- 'logo' => $this->boximg,
+ 'text' => img_picto('', 'rss'),
'url' => $href,
'tooltip' => $tooltip,
'target' => 'newrss',
);
$this->info_box_contents[$line][1] = array(
- 'td' => '',
+ 'td' => 'class="tdoverflowmax300"',
'text' => $title,
'url' => $href,
'tooltip' => $tooltip,
- 'maxlength' => 64,
+ 'maxlength' => 0,
'target' => 'newrss',
);
diff --git a/htdocs/core/boxes/box_fournisseurs.php b/htdocs/core/boxes/box_fournisseurs.php
index 2dceee98dda..59280aeec62 100644
--- a/htdocs/core/boxes/box_fournisseurs.php
+++ b/htdocs/core/boxes/box_fournisseurs.php
@@ -60,7 +60,7 @@ class box_fournisseurs extends ModeleBoxes
$this->db = $db;
- $this->hidden = !($user->rights->societe->lire && empty($user->socid));
+ $this->hidden = !($user->hasRight('societe', 'read') && empty($user->socid));
}
/**
diff --git a/htdocs/core/boxes/box_graph_product_distribution.php b/htdocs/core/boxes/box_graph_product_distribution.php
index 44f94fd48d1..92a8b471e5f 100644
--- a/htdocs/core/boxes/box_graph_product_distribution.php
+++ b/htdocs/core/boxes/box_graph_product_distribution.php
@@ -152,7 +152,7 @@ class box_graph_product_distribution extends ModeleBoxes
$WIDTH = ($nbofgraph >= 2 || !empty($conf->dol_optimize_smallscreen)) ? '300' : '320';
$HEIGHT = '150'; // Height require to have 5+1 entries into legend visible.
- if (!empty($conf->propal->enabled) && !empty($user->rights->propale->lire)) {
+ if (isModEnabled("propal") && !empty($user->rights->propale->lire)) {
// Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...)
if ($showpropalnb) {
$langs->load("propal");
@@ -214,7 +214,7 @@ class box_graph_product_distribution extends ModeleBoxes
}
}
- if (!empty($conf->commande->enabled) && !empty($user->rights->commande->lire)) {
+ if (isModEnabled('commande') && !empty($user->rights->commande->lire)) {
// Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...)
if ($showordernb) {
$langs->load("orders");
@@ -365,11 +365,11 @@ class box_graph_product_distribution extends ModeleBoxes
$stringtoshow .= '
';
$stringtoshow .= '
';
$stringtoshow .= '
';
- if (!empty($conf->propal->enabled) || !empty($user->rights->propale->lire)) {
+ if (isModEnabled("propal") || !empty($user->rights->propale->lire)) {
$stringtoshow .= '
'.$langs->trans("ForProposals");
$stringtoshow .= ' ';
}
- if (!empty($conf->commande->enabled) || !empty($user->rights->commande->lire)) {
+ if (isModEnabled('commande') || !empty($user->rights->commande->lire)) {
$stringtoshow .= '
'.$langs->trans("ForCustomersOrders");
}
if (isModEnabled('facture') || !empty($user->rights->facture->lire)) {
diff --git a/htdocs/core/boxes/box_last_ticket.php b/htdocs/core/boxes/box_last_ticket.php
index f73566fe972..32efe7293fa 100644
--- a/htdocs/core/boxes/box_last_ticket.php
+++ b/htdocs/core/boxes/box_last_ticket.php
@@ -84,7 +84,7 @@ class box_last_ticket extends ModeleBoxes
'text' => $langs->trans("BoxLastTicketContent"),
);
- if ($user->rights->ticket->read) {
+ if ($user->hasRight('ticket', 'read')) {
$sql = "SELECT t.rowid as id, t.ref, t.track_id, t.fk_soc, t.fk_user_create, t.fk_user_assign, t.subject, t.message, t.fk_statut as status, t.type_code, t.category_code, t.severity_code, t.datec, t.date_read, t.date_close, t.origin_email,";
$sql .= " type.label as type_label, category.label as category_label, severity.label as severity_label,";
$sql .= " s.nom as company_name, s.email as socemail, s.client, s.fournisseur";
diff --git a/htdocs/core/boxes/box_members_by_type.php b/htdocs/core/boxes/box_members_by_type.php
index 23542999b47..2e25da59564 100644
--- a/htdocs/core/boxes/box_members_by_type.php
+++ b/htdocs/core/boxes/box_members_by_type.php
@@ -68,7 +68,7 @@ class box_members_by_type extends ModeleBoxes
$this->enabled = 0; // disabled for external users
}
- $this->hidden = !(!empty($conf->adherent->enabled) && $user->rights->adherent->lire);
+ $this->hidden = !(isModEnabled('adherent') && $user->rights->adherent->lire);
}
/**
diff --git a/htdocs/core/boxes/box_members_last_modified.php b/htdocs/core/boxes/box_members_last_modified.php
index 91ce3c93c36..52bc75e1fd1 100644
--- a/htdocs/core/boxes/box_members_last_modified.php
+++ b/htdocs/core/boxes/box_members_last_modified.php
@@ -67,7 +67,7 @@ class box_members_last_modified extends ModeleBoxes
$this->enabled = 0; // disabled for external users
}
- $this->hidden = !(!empty($conf->adherent->enabled) && $user->rights->adherent->lire);
+ $this->hidden = !(isModEnabled('adherent') && $user->rights->adherent->lire);
}
/**
diff --git a/htdocs/core/boxes/box_members_last_subscriptions.php b/htdocs/core/boxes/box_members_last_subscriptions.php
index 39ae0140ca4..b5472b979a2 100644
--- a/htdocs/core/boxes/box_members_last_subscriptions.php
+++ b/htdocs/core/boxes/box_members_last_subscriptions.php
@@ -67,7 +67,7 @@ class box_members_last_subscriptions extends ModeleBoxes
$this->enabled = 0; // disabled for external users
}
- $this->hidden = !(!empty($conf->adherent->enabled) && $user->rights->adherent->lire);
+ $this->hidden = !(isModEnabled('adherent') && $user->rights->adherent->lire);
}
/**
diff --git a/htdocs/core/boxes/box_members_subscriptions_by_year.php b/htdocs/core/boxes/box_members_subscriptions_by_year.php
index 479d2424f09..716b8ed0482 100644
--- a/htdocs/core/boxes/box_members_subscriptions_by_year.php
+++ b/htdocs/core/boxes/box_members_subscriptions_by_year.php
@@ -67,7 +67,7 @@ class box_members_subscriptions_by_year extends ModeleBoxes
$this->enabled = 0; // disabled for external users
}
- $this->hidden = !(!empty($conf->adherent->enabled) && $user->rights->adherent->lire);
+ $this->hidden = !(isModEnabled('adherent') && $user->rights->adherent->lire);
}
/**
diff --git a/htdocs/core/boxes/box_produits.php b/htdocs/core/boxes/box_produits.php
index afd0db27990..505d022dccd 100644
--- a/htdocs/core/boxes/box_produits.php
+++ b/htdocs/core/boxes/box_produits.php
@@ -62,7 +62,7 @@ class box_produits extends ModeleBoxes
$this->db = $db;
$listofmodulesforexternal = explode(',', $conf->global->MAIN_MODULES_FOR_EXTERNAL);
- $tmpentry = array('enabled'=>(!empty($conf->product->enabled) || !empty($conf->service->enabled)), 'perms'=>(!empty($user->rights->produit->lire) || !empty($user->rights->service->lire)), 'module'=>'product|service');
+ $tmpentry = array('enabled'=>(isModEnabled("product") || isModEnabled("service")), 'perms'=>(!empty($user->rights->produit->lire) || !empty($user->rights->service->lire)), 'module'=>'product|service');
$showmode = isVisibleToUserType(($user->socid > 0 ? 1 : 0), $tmpentry, $listofmodulesforexternal);
$this->hidden = ($showmode != 1);
}
@@ -150,6 +150,11 @@ class box_produits extends ModeleBoxes
$productstatic->accountancy_code_buy_export = $objp->accountancy_code_buy_export;
$productstatic->date_modification = $datem;
+ $usercancreadprice = getDolGlobalString('MAIN_USE_ADVANCED_PERMS')?$user->hasRight('product', 'product_advance', 'read_prices'):$user->hasRight('product', 'lire');
+ if ($productstatic->isService()) {
+ $usercancreadprice = getDolGlobalString('MAIN_USE_ADVANCED_PERMS')?$user->hasRight('service', 'service_advance', 'read_prices'):$user->hasRight('service', 'lire');
+ }
+
$this->info_box_contents[$line][] = array(
'td' => 'class="tdoverflowmax100 maxwidth100onsmartphone"',
'text' => $productstatic->getNomUrl(1),
@@ -162,22 +167,24 @@ class box_produits extends ModeleBoxes
);
$price = '';
$price_base_type = '';
- if (empty($conf->dynamicprices->enabled) || empty($objp->fk_price_expression)) {
- $price_base_type = $langs->trans($objp->price_base_type);
- $price = ($objp->price_base_type == 'HT') ?price($objp->price) : $price = price($objp->price_ttc);
- } else {
- //Parse the dynamic price
- $productstatic->fetch($objp->rowid, '', '', 1);
- $priceparser = new PriceParser($this->db);
- $price_result = $priceparser->parseProduct($productstatic);
- if ($price_result >= 0) {
- if ($objp->price_base_type == 'HT') {
- $price_base_type = $langs->trans("HT");
- } else {
- $price_result = $price_result * (1 + ($productstatic->tva_tx / 100));
- $price_base_type = $langs->trans("TTC");
+ if ($usercancreadprice) {
+ if (empty($conf->dynamicprices->enabled) || empty($objp->fk_price_expression)) {
+ $price_base_type = $langs->trans($objp->price_base_type);
+ $price = ($objp->price_base_type == 'HT') ?price($objp->price) : $price = price($objp->price_ttc);
+ } else {
+ //Parse the dynamic price
+ $productstatic->fetch($objp->rowid, '', '', 1);
+ $priceparser = new PriceParser($this->db);
+ $price_result = $priceparser->parseProduct($productstatic);
+ if ($price_result >= 0) {
+ if ($objp->price_base_type == 'HT') {
+ $price_base_type = $langs->trans("HT");
+ } else {
+ $price_result = $price_result * (1 + ($productstatic->tva_tx / 100));
+ $price_base_type = $langs->trans("TTC");
+ }
+ $price = price($price_result);
}
- $price = price($price_result);
}
}
$this->info_box_contents[$line][] = array(
diff --git a/htdocs/core/boxes/box_produits_alerte_stock.php b/htdocs/core/boxes/box_produits_alerte_stock.php
index 72b1957b287..203d42c7eed 100644
--- a/htdocs/core/boxes/box_produits_alerte_stock.php
+++ b/htdocs/core/boxes/box_produits_alerte_stock.php
@@ -64,7 +64,7 @@ class box_produits_alerte_stock extends ModeleBoxes
$this->db = $db;
$listofmodulesforexternal = explode(',', $conf->global->MAIN_MODULES_FOR_EXTERNAL);
- $tmpentry = array('enabled'=>((!empty($conf->product->enabled) || !empty($conf->service->enabled)) && !empty($conf->stock->enabled)), 'perms'=>!empty($user->rights->stock->lire), 'module'=>'product|service|stock');
+ $tmpentry = array('enabled'=>((isModEnabled("product") || isModEnabled("service")) && !empty($conf->stock->enabled)), 'perms'=>!empty($user->rights->stock->lire), 'module'=>'product|service|stock');
$showmode = isVisibleToUserType(($user->socid > 0 ? 1 : 0), $tmpentry, $listofmodulesforexternal);
$this->hidden = ($showmode != 1);
}
diff --git a/htdocs/core/boxes/box_propales.php b/htdocs/core/boxes/box_propales.php
index 8e8efc8d8f3..7114fdb5399 100644
--- a/htdocs/core/boxes/box_propales.php
+++ b/htdocs/core/boxes/box_propales.php
@@ -61,7 +61,7 @@ class box_propales extends ModeleBoxes
$this->db = $db;
- $this->hidden = !($user->hasRight('propale', 'lire'));
+ $this->hidden = !($user->hasRight('propal', 'read'));
}
/**
diff --git a/htdocs/core/boxes/box_prospect.php b/htdocs/core/boxes/box_prospect.php
index e9824339f1e..205cf09419c 100644
--- a/htdocs/core/boxes/box_prospect.php
+++ b/htdocs/core/boxes/box_prospect.php
@@ -67,7 +67,7 @@ class box_prospect extends ModeleBoxes
$this->enabled = 0; // disabled by this option
}
- $this->hidden = !($user->rights->societe->lire && empty($user->socid));
+ $this->hidden = !($user->hasRight('societe', 'read') && empty($user->socid));
}
/**
diff --git a/htdocs/core/boxes/box_scheduled_jobs.php b/htdocs/core/boxes/box_scheduled_jobs.php
index cd610543e47..915884d6f43 100644
--- a/htdocs/core/boxes/box_scheduled_jobs.php
+++ b/htdocs/core/boxes/box_scheduled_jobs.php
@@ -86,7 +86,7 @@ class box_scheduled_jobs extends ModeleBoxes
$result = 0;
$sql = "SELECT t.rowid, t.datelastrun, t.datenextrun, t.datestart,";
- $sql .= " t.label, t.status, t.test, t.lastresult";
+ $sql .= " t.label, t.status, t.test, t.lastresult, t.processing";
$sql .= " FROM " . MAIN_DB_PREFIX . "cronjob as t";
$sql .= " WHERE status <> ".$cronstatic::STATUS_DISABLED;
$sql .= " AND entity IN (0, ".$conf->entity.")";
@@ -95,6 +95,7 @@ class box_scheduled_jobs extends ModeleBoxes
$result = $this->db->query($sql);
$line = 0;
$nbjobsinerror = 0;
+ $nbjobsnotfinished = 0;
if ($result) {
$num = $this->db->num_rows($result);
@@ -109,6 +110,7 @@ class box_scheduled_jobs extends ModeleBoxes
}
if ($line == 0 || ($nextrun < $cronstatic->datenextrun && (empty($objp->nbrun) || empty($objp->maxrun) || $objp->nbrun < $objp->maxrun))) {
+ // Save in cronstatic the job if it is a job to run in future
$cronstatic->id = $objp->rowid;
$cronstatic->ref = $objp->rowid;
$cronstatic->label = $langs->trans($objp->label);
@@ -117,6 +119,7 @@ class box_scheduled_jobs extends ModeleBoxes
$cronstatic->datelastrun = $this->db->jdate($objp->datelastrun);
}
if ($line == 0) {
+ // Save the first line in loop that is the most recent executed job (due to the sort on datelastrun DESC)
$resultarray[$line] = array(
$langs->trans("LastExecutedScheduledJob"),
$cronstatic->getNomUrl(1),
@@ -127,6 +130,9 @@ class box_scheduled_jobs extends ModeleBoxes
$line++;
}
+ if ($objp->processing && $this->db->jdate($objp->datelastrun) < (dol_now() - 3600 * 24)) {
+ $nbjobsnotfinished++;
+ }
if (!empty($objp->lastresult)) {
$nbjobsinerror++;
}
@@ -168,9 +174,19 @@ class box_scheduled_jobs extends ModeleBoxes
'td' => 'class="tdoverflowmax300" colspan="3"',
'text' => $langs->trans("NumberScheduledJobError")
);
+ $textnoformat = '';
+ if ($nbjobsnotfinished) {
+ $textnoformat .= '
'.$nbjobsnotfinished.'
';
+ }
+ if ($nbjobsinerror) {
+ $textnoformat .= '
'.$nbjobsinerror.'
';
+ }
+ if (empty($nbjobsnotfinished) && empty($nbjobsinerror)) {
+ $textnoformat .= '
0
';
+ }
$this->info_box_contents[$line][] = array(
'td' => 'class="center"',
- 'textnoformat' => ($nbjobsinerror ? '
'.$nbjobsinerror.'
' : '
0
')
+ 'textnoformat' => $textnoformat
);
} else {
$this->info_box_contents[0][0] = array(
diff --git a/htdocs/core/boxes/box_services_contracts.php b/htdocs/core/boxes/box_services_contracts.php
index 9a212d0a10e..9ec279fe2d0 100644
--- a/htdocs/core/boxes/box_services_contracts.php
+++ b/htdocs/core/boxes/box_services_contracts.php
@@ -171,7 +171,7 @@ class box_services_contracts extends ModeleBoxes
// Add description in form
if (!empty($conf->global->PRODUIT_DESC_IN_FORM)) {
- //$text .= (! empty($objp->description) && $objp->description!=$objp->product_label)?'
'.dol_htmlentitiesbr($objp->description):'';
+ //$text .= (!empty($objp->description) && $objp->description!=$objp->product_label)?'
'.dol_htmlentitiesbr($objp->description):'';
$description = ''; // Already added into main visible desc
}
diff --git a/htdocs/core/boxes/modules_boxes.php b/htdocs/core/boxes/modules_boxes.php
index 910e6d3ca77..769f74da1a1 100644
--- a/htdocs/core/boxes/modules_boxes.php
+++ b/htdocs/core/boxes/modules_boxes.php
@@ -259,7 +259,7 @@ class ModeleBoxes // Can't be abtract as it is instantiated to build "empty" box
$out .= img_picto($langs->trans("MoveBox", $this->box_id), 'grip_title', 'class="opacitymedium boxhandle hideonsmartphone cursormove marginleftonly"');
$out .= img_picto($langs->trans("CloseBox", $this->box_id), 'close_title', 'class="opacitymedium boxclose cursorpointer marginleftonly" rel="x:y" id="imgclose'.$this->box_id.'"');
$label = $head['text'];
- //if (! empty($head['graph'])) $label.=' ('.$langs->trans("Graph").')';
+ //if (!empty($head['graph'])) $label.=' ('.$langs->trans("Graph").')';
if (!empty($head['graph'])) {
$label .= '
';
}
@@ -326,7 +326,7 @@ class ModeleBoxes // Can't be abtract as it is instantiated to build "empty" box
}
$maxlength = $MAXLENGTHBOX;
- if (!empty($contents[$i][$j]['maxlength'])) {
+ if (isset($contents[$i][$j]['maxlength'])) {
$maxlength = $contents[$i][$j]['maxlength'];
}
diff --git a/htdocs/core/class/CMailFile.class.php b/htdocs/core/class/CMailFile.class.php
index d9a21fdb71e..ba657f58087 100644
--- a/htdocs/core/class/CMailFile.class.php
+++ b/htdocs/core/class/CMailFile.class.php
@@ -156,7 +156,7 @@ class CMailFile
* @param string $errors_to Email for errors-to
* @param string $css Css option
* @param string $trackid Tracking string (contains type and id of related element)
- * @param string $moreinheader More in header. $moreinheader must contains the "\r\n" (TODO not supported for other MAIL_SEND_MODE different than 'phpmail' and 'smtps' for the moment)
+ * @param string $moreinheader More in header. $moreinheader must contains the "\r\n" (TODO not supported for other MAIL_SEND_MODE different than 'mail' and 'smtps' for the moment)
* @param string $sendcontext 'standard', 'emailing', ... (used to define which sending mode and parameters to use)
* @param string $replyto Reply-to email (will be set to same value than From by default if not provided)
*/
@@ -173,12 +173,11 @@ class CMailFile
$this->sendcontext = $sendcontext;
- // Define this->sendmode
+ // Define this->sendmode ('mail', 'smtps', 'siwftmailer', ...) according to $sendcontext ('standard', 'emailing', 'ticket')
$this->sendmode = '';
if (!empty($this->sendcontext)) {
$smtpContextKey = strtoupper($this->sendcontext);
- $keyForSMTPSendMode = 'MAIN_MAIL_SENDMODE_'.$smtpContextKey;
- $smtpContextSendMode = empty($conf->global->{$keyForSMTPSendMode}) ? '' : $conf->global->{$keyForSMTPSendMode};
+ $smtpContextSendMode = getDolGlobalString('MAIN_MAIL_SENDMODE_'.$smtpContextKey);
if (!empty($smtpContextSendMode) && $smtpContextSendMode != 'default') {
$this->sendmode = $smtpContextSendMode;
}
@@ -329,8 +328,7 @@ class CMailFile
$keyforsslseflsigned = 'MAIN_MAIL_EMAIL_SMTP_ALLOW_SELF_SIGNED';
if (!empty($this->sendcontext)) {
$smtpContextKey = strtoupper($this->sendcontext);
- $keyForSMTPSendMode = 'MAIN_MAIL_SENDMODE_'.$smtpContextKey;
- $smtpContextSendMode = empty($conf->global->{$keyForSMTPSendMode}) ? '' : $conf->global->{$keyForSMTPSendMode};
+ $smtpContextSendMode = getDolGlobalString('MAIN_MAIL_SENDMODE_'.$smtpContextKey);
if (!empty($smtpContextSendMode) && $smtpContextSendMode != 'default') {
$keyforsslseflsigned = 'MAIN_MAIL_EMAIL_SMTP_ALLOW_SELF_SIGNED_'.$smtpContextKey;
}
@@ -473,7 +471,7 @@ class CMailFile
$msgid = $headers->get('Message-ID');
$msgid->setId($headerID);
$headers->addIdHeader('References', $headerID);
- // TODO if (! empty($moreinheader)) ...
+ // TODO if (!empty($moreinheader)) ...
// Give the message a subject
try {
@@ -582,7 +580,7 @@ class CMailFile
$this->errors[] = $e->getMessage();
}
}
- //if (! empty($this->errors_to)) $this->message->setErrorsTo($this->getArrayAddress($this->errors_to));
+ //if (!empty($this->errors_to)) $this->message->setErrorsTo($this->getArrayAddress($this->errors_to));
if (isset($this->deliveryreceipt) && $this->deliveryreceipt == 1) {
try {
$this->message->setReadReceiptTo($this->getArrayAddress($this->addr_from));
@@ -691,23 +689,24 @@ class CMailFile
}
$keyforsmtpserver = 'MAIN_MAIL_SMTP_SERVER';
- $keyforsmtpauthtype = "MAIN_MAIL_SMTPS_AUTH_TYPE";
- $keyforsmtpoauthservice = "MAIN_MAIL_SMTPS_OAUTH_SERVICE";
$keyforsmtpport = 'MAIN_MAIL_SMTP_PORT';
$keyforsmtpid = 'MAIN_MAIL_SMTPS_ID';
$keyforsmtppw = 'MAIN_MAIL_SMTPS_PW';
+ $keyforsmtpauthtype = 'MAIN_MAIL_SMTPS_AUTH_TYPE';
+ $keyforsmtpoauthservice = 'MAIN_MAIL_SMTPS_OAUTH_SERVICE';
$keyfortls = 'MAIN_MAIL_EMAIL_TLS';
$keyforstarttls = 'MAIN_MAIL_EMAIL_STARTTLS';
$keyforsslseflsigned = 'MAIN_MAIL_EMAIL_SMTP_ALLOW_SELF_SIGNED';
if (!empty($this->sendcontext)) {
$smtpContextKey = strtoupper($this->sendcontext);
- $keyForSMTPSendMode = 'MAIN_MAIL_SENDMODE_'.$smtpContextKey;
- $smtpContextSendMode = empty($conf->global->{$keyForSMTPSendMode}) ? '' : $conf->global->{$keyForSMTPSendMode};
+ $smtpContextSendMode = getDolGlobalString('MAIN_MAIL_SENDMODE_'.$smtpContextKey);
if (!empty($smtpContextSendMode) && $smtpContextSendMode != 'default') {
$keyforsmtpserver = 'MAIN_MAIL_SMTP_SERVER_'.$smtpContextKey;
$keyforsmtpport = 'MAIN_MAIL_SMTP_PORT_'.$smtpContextKey;
$keyforsmtpid = 'MAIN_MAIL_SMTPS_ID_'.$smtpContextKey;
$keyforsmtppw = 'MAIN_MAIL_SMTPS_PW_'.$smtpContextKey;
+ $keyforsmtpauthtype = 'MAIN_MAIL_SMTPS_AUTH_TYPE_'.$smtpContextKey;
+ $keyforsmtpoauthservice = 'MAIN_MAIL_SMTPS_OAUTH_SERVICE_'.$smtpContextKey;
$keyfortls = 'MAIN_MAIL_EMAIL_TLS_'.$smtpContextKey;
$keyforstarttls = 'MAIN_MAIL_EMAIL_STARTTLS_'.$smtpContextKey;
$keyforsslseflsigned = 'MAIN_MAIL_EMAIL_SMTP_ALLOW_SELF_SIGNED_'.$smtpContextKey;
@@ -1535,15 +1534,26 @@ class CMailFile
$keyforsmtpport = 'MAIN_MAIL_SMTP_PORT';
$keyforsmtpid = 'MAIN_MAIL_SMTPS_ID';
$keyforsmtppw = 'MAIN_MAIL_SMTPS_PW';
+ $keyforsmtpauthtype = 'MAIN_MAIL_SMTPS_AUTH_TYPE';
+ $keyforsmtpoauthservice = 'MAIN_MAIL_SMTPS_OAUTH_SERVICE';
$keyfortls = 'MAIN_MAIL_EMAIL_TLS';
$keyforstarttls = 'MAIN_MAIL_EMAIL_STARTTLS';
- if ($this->sendcontext == 'emailing' && !empty($conf->global->MAIN_MAIL_SENDMODE_EMAILING) && $conf->global->MAIN_MAIL_SENDMODE_EMAILING != 'default') {
- $keyforsmtpserver = 'MAIN_MAIL_SMTP_SERVER_EMAILING';
- $keyforsmtpport = 'MAIN_MAIL_SMTP_PORT_EMAILING';
- $keyforsmtpid = 'MAIN_MAIL_SMTPS_ID_EMAILING';
- $keyforsmtppw = 'MAIN_MAIL_SMTPS_PW_EMAILING';
- $keyfortls = 'MAIN_MAIL_EMAIL_TLS_EMAILING';
- $keyforstarttls = 'MAIN_MAIL_EMAIL_STARTTLS_EMAILING';
+ $keyforsslseflsigned = 'MAIN_MAIL_EMAIL_SMTP_ALLOW_SELF_SIGNED';
+
+ if (!empty($this->sendcontext)) {
+ $smtpContextKey = strtoupper($this->sendcontext);
+ $smtpContextSendMode = getDolGlobalString('MAIN_MAIL_SENDMODE_'.$smtpContextKey);
+ if (!empty($smtpContextSendMode) && $smtpContextSendMode != 'default') {
+ $keyforsmtpserver = 'MAIN_MAIL_SMTP_SERVER_'.$smtpContextKey;
+ $keyforsmtpport = 'MAIN_MAIL_SMTP_PORT_'.$smtpContextKey;
+ $keyforsmtpid = 'MAIN_MAIL_SMTPS_ID_'.$smtpContextKey;
+ $keyforsmtppw = 'MAIN_MAIL_SMTPS_PW_'.$smtpContextKey;
+ $keyforsmtpauthtype = 'MAIN_MAIL_SMTPS_AUTH_TYPE_'.$smtpContextKey;
+ $keyforsmtpoauthservice = 'MAIN_MAIL_SMTPS_OAUTH_SERVICE_'.$smtpContextKey;
+ $keyfortls = 'MAIN_MAIL_EMAIL_TLS_'.$smtpContextKey;
+ $keyforstarttls = 'MAIN_MAIL_EMAIL_STARTTLS_'.$smtpContextKey;
+ $keyforsslseflsigned = 'MAIN_MAIL_EMAIL_SMTP_ALLOW_SELF_SIGNED_'.$smtpContextKey;
+ }
}
// If we use SSL/TLS
@@ -1551,10 +1561,11 @@ class CMailFile
$host = 'ssl://'.$host;
}
// tls smtp start with no encryption
- //if (! empty($conf->global->MAIN_MAIL_EMAIL_STARTTLS) && function_exists('openssl_open')) $host='tls://'.$host;
+ //if (!empty($conf->global->MAIN_MAIL_EMAIL_STARTTLS) && function_exists('openssl_open')) $host='tls://'.$host;
dol_syslog("Try socket connection to host=".$host." port=".$port);
//See if we can connect to the SMTP server
+ $errno = 0; $errstr = '';
if ($socket = @fsockopen(
$host, // Host to test, IP or domain. Add ssl:// for SSL/TLS.
$port, // which Port number to use
diff --git a/htdocs/core/class/antivir.class.php b/htdocs/core/class/antivir.class.php
index 7a60e7b6e03..dc38d38185e 100644
--- a/htdocs/core/class/antivir.class.php
+++ b/htdocs/core/class/antivir.class.php
@@ -116,7 +116,7 @@ class AntiVir
fclose($handle);
- if (! empty($conf->global->MAIN_UMASK))
+ if (!empty($conf->global->MAIN_UMASK))
@chmod($outputfile, octdec($conf->global->MAIN_UMASK));
}
else
diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php
index e587e5bfd1d..8be014b8959 100644
--- a/htdocs/core/class/commonobject.class.php
+++ b/htdocs/core/class/commonobject.class.php
@@ -3,7 +3,7 @@
* Copyright (C) 2005-2013 Regis Houssin
* Copyright (C) 2010-2020 Juanjo Menent
* Copyright (C) 2012-2013 Christophe Battarel
- * Copyright (C) 2011-2019 Philippe Grand
+ * Copyright (C) 2011-2022 Philippe Grand
* Copyright (C) 2012-2015 Marcos García
* Copyright (C) 2012-2015 Raphaël Doursenaud
* Copyright (C) 2012 Cedric Salvador
@@ -588,8 +588,8 @@ abstract class CommonObject
public $alreadypaid;
- private $labelStatus;
- private $labelStatusShort;
+ protected $labelStatus;
+ protected $labelStatusShort;
/**
@@ -749,7 +749,7 @@ abstract class CommonObject
$this->lastname = dol_ucwords(dol_strtolower($this->lastname));
$this->firstname = dol_ucwords(dol_strtolower($this->firstname));
$this->name = dol_ucwords(dol_strtolower($this->name));
- $this->name_alias = dol_ucwords(dol_strtolower($this->name_alias));
+ $this->name_alias = isset($this->name_alias)?dol_ucwords(dol_strtolower($this->name_alias)):'';
}
if (!empty($conf->global->MAIN_ALL_TO_UPPER)) {
$this->lastname = dol_strtoupper($this->lastname);
@@ -968,7 +968,7 @@ abstract class CommonObject
$outdone++;
}
- if (!empty($conf->socialnetworks->enabled)) {
+ if (isModEnabled('socialnetworks')) {
$outsocialnetwork = '';
if (!empty($this->socialnetworks) && is_array($this->socialnetworks) && count($this->socialnetworks) > 0) {
@@ -1085,8 +1085,8 @@ abstract class CommonObject
$forcedownload = 0;
$paramlink = '';
- //if (! empty($modulepart)) $paramlink.=($paramlink?'&':'').'modulepart='.$modulepart; // For sharing with hash (so public files), modulepart is not required.
- //if (! empty($ecmfile->entity)) $paramlink.='&entity='.$ecmfile->entity; // For sharing with hash (so public files), entity is not required.
+ //if (!empty($modulepart)) $paramlink.=($paramlink?'&':'').'modulepart='.$modulepart; // For sharing with hash (so public files), modulepart is not required.
+ //if (!empty($ecmfile->entity)) $paramlink.='&entity='.$ecmfile->entity; // For sharing with hash (so public files), entity is not required.
//$paramlink.=($paramlink?'&':'').'file='.urlencode($filepath); // No need of name of file for public link, we will use the hash
if (!empty($ecmfile->share)) {
$paramlink .= ($paramlink ? '&' : '').'hashp='.$ecmfile->share; // Hash for public share
@@ -4917,7 +4917,7 @@ abstract class CommonObject
//Line extrafield
$line->fetch_optionals();
- //if (is_object($hookmanager) && (($line->product_type == 9 && ! empty($line->special_code)) || ! empty($line->fk_parent_line)))
+ //if (is_object($hookmanager) && (($line->product_type == 9 && !empty($line->special_code)) || !empty($line->fk_parent_line)))
if (is_object($hookmanager)) { // Old code is commented on preceding line.
if (empty($line->fk_parent_line)) {
$parameters = array('line'=>$line, 'num'=>$num, 'i'=>$i, 'dateSelector'=>$dateSelector, 'seller'=>$seller, 'buyer'=>$buyer, 'selected'=>$selected, 'table_element_line'=>$line->table_element);
@@ -5086,7 +5086,7 @@ abstract class CommonObject
print ''.$langs->trans('Description').' ';
print ''.$langs->trans('VATRate').' ';
print ''.$langs->trans('PriceUHT').' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
print ''.$langs->trans('PriceUHTCurrency').' ';
}
print ''.$langs->trans('Qty').' ';
@@ -6159,7 +6159,7 @@ abstract class CommonObject
// If we clone, we have to clean unique extrafields to prevent duplicates.
// This behaviour can be prevented by external code by changing $this->context['createfromclone'] value in createFrom hook
- if (! empty($this->context['createfromclone']) && $this->context['createfromclone'] == 'createfromclone' && ! empty($attributeUnique)) {
+ if (!empty($this->context['createfromclone']) && $this->context['createfromclone'] == 'createfromclone' && !empty($attributeUnique)) {
$new_array_options[$key] = null;
}
@@ -6902,7 +6902,7 @@ abstract class CommonObject
} elseif (preg_match('/^html/', $type)) {
if (!preg_match('/search_/', $keyprefix)) { // If keyprefix is search_ or search_options_, we must just use a simple text field
require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
- $doleditor = new DolEditor($keyprefix.$key.$keysuffix, $value, '', 200, 'dolibarr_notes', 'In', false, false, !empty($conf->fckeditor->enabled) && $conf->global->FCKEDITOR_ENABLE_SOCIETE, ROWS_5, '90%');
+ $doleditor = new DolEditor($keyprefix.$key.$keysuffix, $value, '', 200, 'dolibarr_notes', 'In', false, false, isModEnabled('fckeditor') && $conf->global->FCKEDITOR_ENABLE_SOCIETE, ROWS_5, '90%');
$out = $doleditor->Create(1, '', true, '', '', $moreparam, $morecss);
} else {
$out = ' ';
@@ -8582,7 +8582,7 @@ abstract class CommonObject
$filearray = dol_dir_list($dir, "files", 0, '', '(\.meta|_preview.*\.png)$', $sortfield, (strtolower($sortorder) == 'desc' ?SORT_DESC:SORT_ASC), 1);
- /*if (! empty($conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO)) // For backward compatiblity, we scan also old dirs
+ /*if (!empty($conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO)) // For backward compatiblity, we scan also old dirs
{
$filearrayold=dol_dir_list($dirold,"files",0,'','(\.meta|_preview.*\.png)$',$sortfield,(strtolower($sortorder)=='desc'?SORT_DESC:SORT_ASC),1);
$filearray=array_merge($filearray, $filearrayold);
diff --git a/htdocs/core/class/conf.class.php b/htdocs/core/class/conf.class.php
index e3063f6f4e2..234f8d80e0c 100644
--- a/htdocs/core/class/conf.class.php
+++ b/htdocs/core/class/conf.class.php
@@ -255,6 +255,8 @@ class Conf
);
if (!is_null($db) && is_object($db)) {
+ include_once DOL_DOCUMENT_ROOT.'/core/lib/security.lib.php';
+
// Define all global constants into $this->global->key=value
$sql = "SELECT ".$db->decrypt('name')." as name,";
$sql .= " ".$db->decrypt('value')." as value, entity";
@@ -278,8 +280,7 @@ class Conf
$value = $_ENV['DOLIBARR_'.$key];
}
- //if (! defined("$key")) define("$key", $value); // In some cases, the constant might be already forced (Example: SYSLOG_HANDLERS during install)
- $this->global->$key = $value;
+ $this->global->$key = dolDecrypt($value);
if ($value && strpos($key, 'MAIN_MODULE_') === 0) {
$reg = array();
@@ -370,7 +371,7 @@ class Conf
}
// Object $mc
- if (!defined('NOREQUIREMC') && !empty($this->multicompany->enabled)) {
+ if (!defined('NOREQUIREMC') && isModEnabled('multicompany')) {
global $mc;
$ret = @dol_include_once('/multicompany/class/actions_multicompany.class.php');
if ($ret) {
@@ -424,7 +425,7 @@ class Conf
$rootfordata = DOL_DATA_ROOT;
$rootforuser = DOL_DATA_ROOT;
// If multicompany module is enabled, we redefine the root of data
- if (!empty($this->multicompany->enabled) && !empty($this->entity) && $this->entity > 1) {
+ if (isModEnabled('multicompany') && !empty($this->entity) && $this->entity > 1) {
$rootfordata .= '/'.$this->entity;
}
// Set standard temporary folder name or global override
@@ -986,7 +987,7 @@ class Conf
}
// Object $mc
- if (!defined('NOREQUIREMC') && !empty($this->multicompany->enabled)) {
+ if (!defined('NOREQUIREMC') && isModEnabled('multicompany')) {
if (is_object($mc)) {
$mc->setValues($this);
}
diff --git a/htdocs/core/class/defaultvalues.class.php b/htdocs/core/class/defaultvalues.class.php
index 278b5d5e0e6..57939f307a7 100644
--- a/htdocs/core/class/defaultvalues.class.php
+++ b/htdocs/core/class/defaultvalues.class.php
@@ -148,7 +148,7 @@ class DefaultValues extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
diff --git a/htdocs/core/class/doleditor.class.php b/htdocs/core/class/doleditor.class.php
index 2be0c36c56c..b529d23ebda 100644
--- a/htdocs/core/class/doleditor.class.php
+++ b/htdocs/core/class/doleditor.class.php
@@ -152,7 +152,7 @@ class DolEditor
$out .= htmlspecialchars($this->content);
$out .= '';
- if ($this->tool == 'ckeditor' && !empty($conf->use_javascript_ajax) && !empty($conf->fckeditor->enabled)) {
+ if ($this->tool == 'ckeditor' && !empty($conf->use_javascript_ajax) && isModEnabled('fckeditor')) {
if (!defined('REQUIRE_CKEDITOR')) {
define('REQUIRE_CKEDITOR', '1');
}
diff --git a/htdocs/core/class/dolgraph.class.php b/htdocs/core/class/dolgraph.class.php
index e24afd73879..57f0bca4e36 100644
--- a/htdocs/core/class/dolgraph.class.php
+++ b/htdocs/core/class/dolgraph.class.php
@@ -515,7 +515,7 @@ class DolGraph
/**
* Show pointvalue or not
*
- * @param int $showpointvalue 1=Show value for each point, as tooltip or inline (default), 0=Hide value
+ * @param int $showpointvalue 1=Show value for each point, as tooltip or inline (default), 0=Hide value, 2=Show values for each serie on same point
* @return void
*/
public function setShowPointValue($showpointvalue)
@@ -1299,8 +1299,12 @@ class DolGraph
$type = 'line';
}
+ // Set options
$this->stringtoshow .= 'var options = { maintainAspectRatio: false, aspectRatio: 2.5, ';
$this->stringtoshow .= $xaxis;
+ if ($this->showpointvalue == 2) {
+ $this->stringtoshow .= 'interaction: { intersect: true, mode: \'index\'}, ';
+ }
/* For Chartjs v2.9 */
/*
diff --git a/htdocs/core/class/dolreceiptprinter.class.php b/htdocs/core/class/dolreceiptprinter.class.php
index 49dccc2d0fa..b76ad8c7a47 100644
--- a/htdocs/core/class/dolreceiptprinter.class.php
+++ b/htdocs/core/class/dolreceiptprinter.class.php
@@ -830,7 +830,7 @@ class dolReceiptPrinter extends Printer
$row = $this->db->fetch_object($resql);
$spacestoadd = $nbcharactbyline - strlen($langs->transnoentitiesnoconv("PaymentTypeShort".$row->code)) - 12;
$spaces = str_repeat(' ', $spacestoadd > 0 ? $spacestoadd : 0);
- $amount_payment = (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $row->multicurrency_amount : $row->amount;
+ $amount_payment = (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $row->multicurrency_amount : $row->amount;
if ($row->code == "LIQ") {
$amount_payment = $amount_payment + $row->pos_change; // Show amount with excess received if is cash payment
}
diff --git a/htdocs/core/class/emailsenderprofile.class.php b/htdocs/core/class/emailsenderprofile.class.php
index b5b1619443b..583dd7faca0 100644
--- a/htdocs/core/class/emailsenderprofile.class.php
+++ b/htdocs/core/class/emailsenderprofile.class.php
@@ -149,7 +149,7 @@ class EmailSenderProfile extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID)) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled)) {
+ if (!isModEnabled('multicompany')) {
$this->fields['entity']['enabled'] = 0;
}
}
diff --git a/htdocs/core/class/extrafields.class.php b/htdocs/core/class/extrafields.class.php
index c12cfc480fc..a3925c9160a 100644
--- a/htdocs/core/class/extrafields.class.php
+++ b/htdocs/core/class/extrafields.class.php
@@ -9,7 +9,7 @@
* Copyright (C) 2015 Charles-Fr BENKE
* Copyright (C) 2016 Raphaël Doursenaud
* Copyright (C) 2017 Nicolas ZABOURI
- * Copyright (C) 2018-2021 Frédéric France
+ * Copyright (C) 2018-2022 Frédéric France
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -42,30 +42,6 @@ class ExtraFields
*/
public $db;
- /**
- * @var array Array with type of the extra field
- * @deprecated
- */
- public $attribute_type;
-
- /**
- * @var array Array with label of extra field
- * @deprecated
- */
- public $attribute_label;
-
- /**
- * @var array Array with list of possible values for some types of extra fields
- * @deprecated
- */
- public $attribute_choice;
-
- /**
- * @var array array to store extrafields definition
- * @deprecated
- */
- public $attribute_list;
-
/**
* @var array New array to store extrafields definition
*/
@@ -91,7 +67,9 @@ class ExtraFields
*/
public $errno;
-
+ /**
+ * @var array array of type to label
+ */
public static $type2label = array(
'varchar'=>'String1Line',
'text'=>'TextLongNLines',
@@ -128,10 +106,6 @@ class ExtraFields
$this->error = '';
$this->errors = array();
$this->attributes = array();
-
- // For old usage
- $this->attribute_type = array();
- $this->attribute_label = array();
}
/**
@@ -838,7 +812,7 @@ class ExtraFields
// phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps
/**
- * Load array this->attributes (and some old this->attribute_xxx like attribute_label, attribute_type, ...
+ * Load array this->attributes
*
* @param string $elementtype Type of element ('' = all or $object->table_element like 'adherent', 'commande', 'thirdparty', 'facture', 'propal', 'product', ...).
* @param boolean $forceload Force load of extra fields whatever is status of cache.
@@ -892,11 +866,6 @@ class ExtraFields
$array_name_label[$tab->name] = $tab->label;
}
- // Old usage
- $this->attribute_type[$tab->name] = $tab->type;
- $this->attribute_label[$tab->name] = $tab->label;
-
- // New usage
$this->attributes[$tab->elementtype]['type'][$tab->name] = $tab->type;
$this->attributes[$tab->elementtype]['label'][$tab->name] = $tab->label;
$this->attributes[$tab->elementtype]['size'][$tab->name] = $tab->size;
@@ -946,7 +915,7 @@ class ExtraFields
* @param string $keyprefix Suffix string to add before name and id of field (can be used to avoid duplicate names)
* @param string $morecss More css (to defined size of field. Old behaviour: may also be a numeric)
* @param int $objectid Current object id
- * @param string $extrafieldsobjectkey If defined (for example $object->table_element), use the new method to get extrafields data
+ * @param string $extrafieldsobjectkey The key to use to store retreived data (for example $object->table_element)
* @param string $mode 1=Used for search filters
* @return string
*/
@@ -965,29 +934,26 @@ class ExtraFields
$keyprefix = $keyprefix.'options_';
}
- if (!empty($extrafieldsobjectkey)) {
- $label = $this->attributes[$extrafieldsobjectkey]['label'][$key];
- $type = $this->attributes[$extrafieldsobjectkey]['type'][$key];
- $size = $this->attributes[$extrafieldsobjectkey]['size'][$key];
- $default = $this->attributes[$extrafieldsobjectkey]['default'][$key];
- $computed = $this->attributes[$extrafieldsobjectkey]['computed'][$key];
- $unique = $this->attributes[$extrafieldsobjectkey]['unique'][$key];
- $required = $this->attributes[$extrafieldsobjectkey]['required'][$key];
- $param = $this->attributes[$extrafieldsobjectkey]['param'][$key];
- $perms = dol_eval($this->attributes[$extrafieldsobjectkey]['perms'][$key], 1, 1, '1');
- $langfile = $this->attributes[$extrafieldsobjectkey]['langfile'][$key];
- $list = dol_eval($this->attributes[$extrafieldsobjectkey]['list'][$key], 1, 1, '1');
- $totalizable = $this->attributes[$extrafieldsobjectkey]['totalizable'][$key];
- $help = $this->attributes[$extrafieldsobjectkey]['help'][$key];
- $hidden = (empty($list) ? 1 : 0); // If empty, we are sure it is hidden, otherwise we show. If it depends on mode (view/create/edit form or list, this must be filtered by caller)
- } else {
- // Old usage
- $label = $this->attribute_label[$key];
- $type = $this->attribute_type[$key];
- $list = $this->attribute_list[$key];
- $hidden = (empty($list) ? 1 : 0); // If empty, we are sure it is hidden, otherwise we show. If it depends on mode (view/create/edit form or list, this must be filtered by caller)
+ if (empty($extrafieldsobjectkey)) {
+ dol_syslog(get_class($this).'::showInputField extrafieldsobjectkey required', LOG_ERR);
+ return 'BadValueForParamExtraFieldsObjectKey';
}
+ $label = $this->attributes[$extrafieldsobjectkey]['label'][$key];
+ $type = $this->attributes[$extrafieldsobjectkey]['type'][$key];
+ $size = $this->attributes[$extrafieldsobjectkey]['size'][$key];
+ $default = $this->attributes[$extrafieldsobjectkey]['default'][$key];
+ $computed = $this->attributes[$extrafieldsobjectkey]['computed'][$key];
+ $unique = $this->attributes[$extrafieldsobjectkey]['unique'][$key];
+ $required = $this->attributes[$extrafieldsobjectkey]['required'][$key];
+ $param = $this->attributes[$extrafieldsobjectkey]['param'][$key];
+ $perms = dol_eval($this->attributes[$extrafieldsobjectkey]['perms'][$key], 1, 1, '1');
+ $langfile = $this->attributes[$extrafieldsobjectkey]['langfile'][$key];
+ $list = dol_eval($this->attributes[$extrafieldsobjectkey]['list'][$key], 1, 1, '1');
+ $totalizable = $this->attributes[$extrafieldsobjectkey]['totalizable'][$key];
+ $help = $this->attributes[$extrafieldsobjectkey]['help'][$key];
+ $hidden = (empty($list) ? 1 : 0); // If empty, we are sure it is hidden, otherwise we show. If it depends on mode (view/create/edit form or list, this must be filtered by caller)
+
if ($computed) {
if (!preg_match('/^search_/', $keyprefix)) {
return ''.$langs->trans("AutomaticallyCalculated").' ';
@@ -1098,7 +1064,7 @@ class ExtraFields
} elseif ($type == 'html') {
if (!preg_match('/search_/', $keyprefix)) { // If keyprefix is search_ or search_options_, we must just use a simple text field
require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
- $doleditor = new DolEditor($keyprefix.$key.$keysuffix, $value, '', 200, 'dolibarr_notes', 'In', false, false, !empty($conf->fckeditor->enabled) && $conf->global->FCKEDITOR_ENABLE_SOCIETE, ROWS_5, '90%');
+ $doleditor = new DolEditor($keyprefix.$key.$keysuffix, $value, '', 200, 'dolibarr_notes', 'In', false, false, isModEnabled('fckeditor') && $conf->global->FCKEDITOR_ENABLE_SOCIETE, ROWS_5, '90%');
$out = $doleditor->Create(1);
} else {
$out = ' ';
@@ -1571,7 +1537,7 @@ class ExtraFields
if ($type == 'date') $out.=' (YYYY-MM-DD)';
elseif ($type == 'datetime') $out.=' (YYYY-MM-DD HH:MM:SS)';
*/
- /*if (! empty($help) && $keyprefix != 'search_options_') {
+ /*if (!empty($help) && $keyprefix != 'search_options_') {
$out .= $form->textwithpicto('', $help, 1, 'help', '', 0, 3);
}*/
return $out;
@@ -1591,26 +1557,25 @@ class ExtraFields
{
global $conf, $langs;
- if (!empty($extrafieldsobjectkey)) {
- $label = $this->attributes[$extrafieldsobjectkey]['label'][$key];
- $type = $this->attributes[$extrafieldsobjectkey]['type'][$key];
- $size = $this->attributes[$extrafieldsobjectkey]['size'][$key]; // Can be '255', '24,8'...
- $default = $this->attributes[$extrafieldsobjectkey]['default'][$key];
- $computed = $this->attributes[$extrafieldsobjectkey]['computed'][$key];
- $unique = $this->attributes[$extrafieldsobjectkey]['unique'][$key];
- $required = $this->attributes[$extrafieldsobjectkey]['required'][$key];
- $param = $this->attributes[$extrafieldsobjectkey]['param'][$key];
- $perms = dol_eval($this->attributes[$extrafieldsobjectkey]['perms'][$key], 1, 1, '1');
- $langfile = $this->attributes[$extrafieldsobjectkey]['langfile'][$key];
- $list = dol_eval($this->attributes[$extrafieldsobjectkey]['list'][$key], 1, 1, '1');
- $help = $this->attributes[$extrafieldsobjectkey]['help'][$key];
- $hidden = (empty($list) ? 1 : 0); // If $list empty, we are sure it is hidden, otherwise we show. If it depends on mode (view/create/edit form or list, this must be filtered by caller)
- } else {
- // Old usage not allowed anymore
- dol_syslog(get_class($this).'::showOutputField extrafieldsobjectkey required', LOG_WARNING);
- return '';
+ if (empty($extrafieldsobjectkey)) {
+ dol_syslog(get_class($this).'::showOutputField extrafieldsobjectkey required', LOG_ERR);
+ return 'BadValueForParamExtraFieldsObjectKey';
}
+ $label = $this->attributes[$extrafieldsobjectkey]['label'][$key];
+ $type = $this->attributes[$extrafieldsobjectkey]['type'][$key];
+ $size = $this->attributes[$extrafieldsobjectkey]['size'][$key]; // Can be '255', '24,8'...
+ $default = $this->attributes[$extrafieldsobjectkey]['default'][$key];
+ $computed = $this->attributes[$extrafieldsobjectkey]['computed'][$key];
+ $unique = $this->attributes[$extrafieldsobjectkey]['unique'][$key];
+ $required = $this->attributes[$extrafieldsobjectkey]['required'][$key];
+ $param = $this->attributes[$extrafieldsobjectkey]['param'][$key];
+ $perms = dol_eval($this->attributes[$extrafieldsobjectkey]['perms'][$key], 1, 1, '1');
+ $langfile = $this->attributes[$extrafieldsobjectkey]['langfile'][$key];
+ $list = dol_eval($this->attributes[$extrafieldsobjectkey]['list'][$key], 1, 1, '1');
+ $help = $this->attributes[$extrafieldsobjectkey]['help'][$key];
+ $hidden = (empty($list) ? 1 : 0); // If $list empty, we are sure it is hidden, otherwise we show. If it depends on mode (view/create/edit form or list, this must be filtered by caller)
+
if ($hidden) {
return ''; // This is a protection. If field is hidden, we should just not call this method.
}
@@ -1634,7 +1599,7 @@ class ExtraFields
if (!empty($value)) {
//$value=price($value);
$sizeparts = explode(",", $size);
- $number_decimals = $sizeparts[1];
+ $number_decimals = array_key_exists(1, $sizeparts) ? $sizeparts[1] : 0;
$value = price($value, 0, $langs, 0, 0, $number_decimals, '');
}
} elseif ($type == 'boolean') {
@@ -1916,36 +1881,27 @@ class ExtraFields
{
global $conf, $langs;
+ $type = 'varchar';
if (!empty($extrafieldsobjectkey)) {
$type = $this->attributes[$extrafieldsobjectkey]['type'][$key];
- } else {
- $type = $this->attribute_type[$key];
}
$cssstring = '';
- if ($type == 'date') {
+ if (in_array($type, array('date', 'datetime'))) {
$cssstring = "center";
- } elseif ($type == 'datetime') {
- $cssstring = "center";
- } elseif ($type == 'int') {
+ } elseif (in_array($type, array('int', 'price', 'double'))) {
$cssstring = "right";
- } elseif ($type == 'price') {
- $cssstring = "right";
- } elseif ($type == 'double') {
- $cssstring = "right";
- } elseif ($type == 'boolean') {
+ } elseif (in_array($type, array('boolean', 'radio', 'checkbox', 'ip'))) {
$cssstring = "center";
- } elseif ($type == 'radio') {
- $cssstring = "center";
- } elseif ($type == 'checkbox') {
- $cssstring = "center";
- } elseif ($type == 'price') {
- $cssstring = "right";
}
if (!empty($this->attributes[$extrafieldsobjectkey]['csslist'][$key])) {
$cssstring .= ($cssstring ? ' ' : '').$this->attributes[$extrafieldsobjectkey]['csslist'][$key];
+ } else {
+ if (in_array($type, array('ip'))) {
+ $cssstring .= ($cssstring ? ' ' : '').'tdoverflowmax150';
+ }
}
return $cssstring;
diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php
index 777322631b0..41279c8ae36 100644
--- a/htdocs/core/class/html.form.class.php
+++ b/htdocs/core/class/html.form.class.php
@@ -529,7 +529,7 @@ class Form
$savemethod = $tmp[4];
}
- if (!empty($conf->fckeditor->enabled)) {
+ if (isModEnabled('fckeditor')) {
$out .= ' '."\n";
} else {
$inputType = 'textarea';
@@ -732,7 +732,7 @@ class Form
}
}
// If info or help with smartphone, show only text (tooltip on click does not works with dialog on smaprtphone)
- //if (! empty($conf->dol_no_mouse_hover) && ! empty($tooltiptrigger))
+ //if (!empty($conf->dol_no_mouse_hover) && !empty($tooltiptrigger))
//{
//if ($type == 'info' || $type == 'help') return ''.$text.'' ';
//}
@@ -1104,7 +1104,7 @@ class Form
global $langs, $conf;
// If product & services are enabled or both disabled.
- if ($forceall == 1 || (empty($forceall) && !empty($conf->product->enabled) && !empty($conf->service->enabled))
+ if ($forceall == 1 || (empty($forceall) && isModEnabled("product") && isModEnabled("service"))
|| (empty($forceall) && empty($conf->product->enabled) && empty($conf->service->enabled))) {
if (empty($hidetext)) {
print $langs->trans("Type").': ';
@@ -1134,11 +1134,11 @@ class Form
print ajax_combobox('select_'.$htmlname);
//if ($user->admin) print info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"),1);
}
- if ((empty($forceall) && empty($conf->product->enabled) && !empty($conf->service->enabled)) || $forceall == 3) {
+ if ((empty($forceall) && empty($conf->product->enabled) && isModEnabled("service")) || $forceall == 3) {
print $langs->trans("Service");
print ' ';
}
- if ((empty($forceall) && !empty($conf->product->enabled) && empty($conf->service->enabled)) || $forceall == 2) {
+ if ((empty($forceall) && isModEnabled("product") && empty($conf->service->enabled)) || $forceall == 2) {
print $langs->trans("Product");
print ' ';
}
@@ -1433,7 +1433,7 @@ class Form
$textifempty = (($showempty && !is_numeric($showempty)) ? $langs->trans($showempty) : '');
if (!empty($conf->global->COMPANY_USE_SEARCH_TO_SELECT)) {
// Do not use textifempty = ' ' or ' ' here, or search on key will search on ' key'.
- //if (! empty($conf->use_javascript_ajax) || $forcecombo) $textifempty='';
+ //if (!empty($conf->use_javascript_ajax) || $forcecombo) $textifempty='';
if ($showempty && !is_numeric($showempty)) {
$textifempty = $langs->trans($showempty);
} else {
@@ -1918,10 +1918,11 @@ class Form
* @param int $noactive Show only active users (this will also happened whatever is this option if USER_HIDE_INACTIVE_IN_COMBOBOX is on).
* @param int $outputmode 0=HTML select string, 1=Array
* @param bool $multiple add [] in the name of element and add 'multiple' attribut
+ * @param int $forcecombo Force the component to be a simple combo box without ajax
* @return string HTML select string
* @see select_dolgroups()
*/
- public function select_dolusers($selected = '', $htmlname = 'userid', $show_empty = 0, $exclude = null, $disabled = 0, $include = '', $enableonly = '', $force_entity = '0', $maxlength = 0, $showstatus = 0, $morefilter = '', $show_every = 0, $enableonlytext = '', $morecss = '', $noactive = 0, $outputmode = 0, $multiple = false)
+ public function select_dolusers($selected = '', $htmlname = 'userid', $show_empty = 0, $exclude = null, $disabled = 0, $include = '', $enableonly = '', $force_entity = '0', $maxlength = 0, $showstatus = 0, $morefilter = '', $show_every = 0, $enableonlytext = '', $morecss = '', $noactive = 0, $outputmode = 0, $multiple = false, $forcecombo = 0)
{
// phpcs:enable
global $conf, $user, $langs, $hookmanager;
@@ -1961,11 +1962,11 @@ class Form
// Forge request to select users
$sql = "SELECT DISTINCT u.rowid, u.lastname as lastname, u.firstname, u.statut as status, u.login, u.admin, u.entity, u.photo";
- if (!empty($conf->multicompany->enabled) && $conf->entity == 1 && $user->admin && !$user->entity) {
+ if (isModEnabled('multicompany') && $conf->entity == 1 && $user->admin && !$user->entity) {
$sql .= ", e.label";
}
$sql .= " FROM ".$this->db->prefix()."user as u";
- if (!empty($conf->multicompany->enabled) && $conf->entity == 1 && $user->admin && !$user->entity) {
+ if (isModEnabled('multicompany') && $conf->entity == 1 && $user->admin && !$user->entity) {
$sql .= " LEFT JOIN ".$this->db->prefix()."entity as e ON e.rowid = u.entity";
if ($force_entity) {
$sql .= " WHERE u.entity IN (0, ".$this->db->sanitize($force_entity).")";
@@ -1973,7 +1974,7 @@ class Form
$sql .= " WHERE u.entity IS NOT NULL";
}
} else {
- if (!empty($conf->multicompany->enabled) && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
+ if (isModEnabled('multicompany') && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
$sql .= " LEFT JOIN ".$this->db->prefix()."usergroup_user as ug";
$sql .= " ON ug.fk_user = u.rowid";
$sql .= " WHERE ug.entity = ".$conf->entity;
@@ -2075,7 +2076,7 @@ class Form
$moreinfo .= ($moreinfo ? ' - ' : ' (').$langs->trans('Disabled');
}
}
- if (!empty($conf->multicompany->enabled) && empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE) && $conf->entity == 1 && $user->admin && !$user->entity) {
+ if (isModEnabled('multicompany') && empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE) && $conf->entity == 1 && $user->admin && !$user->entity) {
if (!$obj->entity) {
$moreinfo .= ($moreinfo ? ' - ' : ' (').$langs->trans("AllEntities");
} else {
@@ -2124,7 +2125,7 @@ class Form
}
$out .= '';
- if ($num) {
+ if ($num && !$forcecombo) {
// Enhance with select2
include_once DOL_DOCUMENT_ROOT.'/core/lib/ajax.lib.php';
$out .= ajax_combobox($htmlname);
@@ -2278,10 +2279,10 @@ class Form
$ajaxoptions = array();
}
- if (strval($filtertype) === '' && (!empty($conf->product->enabled) || !empty($conf->service->enabled))) {
- if (!empty($conf->product->enabled) && empty($conf->service->enabled)) {
+ if (strval($filtertype) === '' && (isModEnabled("product") || isModEnabled("service"))) {
+ if (isModEnabled("product") && empty($conf->service->enabled)) {
$filtertype = '0';
- } elseif (empty($conf->product->enabled) && !empty($conf->service->enabled)) {
+ } elseif (empty($conf->product->enabled) && isModEnabled("service")) {
$filtertype = '1';
}
}
@@ -2673,7 +2674,7 @@ class Form
if (!empty($conf->global->MAIN_MULTILANGS)) {
$sql .= " OR pl.label LIKE '".$this->db->escape($prefix.$crit)."%'";
}
- if (!empty($conf->global->PRODUIT_CUSTOMER_PRICES) && ! empty($socid)) {
+ if (!empty($conf->global->PRODUIT_CUSTOMER_PRICES) && !empty($socid)) {
$sql .= " OR pcp.ref_customer LIKE '".$this->db->escape($prefix.$crit)."%'";
}
if (!empty($conf->global->PRODUCT_AJAX_SEARCH_ON_DESCRIPTION)) {
@@ -2732,7 +2733,7 @@ class Form
$textifempty = '';
// Do not use textifempty = ' ' or ' ' here, or search on key will search on ' key'.
- //if (! empty($conf->use_javascript_ajax) || $forcecombo) $textifempty='';
+ //if (!empty($conf->use_javascript_ajax) || $forcecombo) $textifempty='';
if (!empty($conf->global->PRODUIT_USE_SEARCH_TO_SELECT)) {
if ($showempty && !is_numeric($showempty)) {
$textifempty = $langs->trans($showempty);
@@ -2958,7 +2959,7 @@ class Form
}
$opt .= '>';
$opt .= $objp->ref;
- if (! empty($objp->custref)) {
+ if (!empty($objp->custref)) {
$opt.= ' (' . $objp->custref . ')';
}
if ($outbarcode) {
@@ -2970,7 +2971,7 @@ class Form
}
$objRef = $objp->ref;
- if (! empty($objp->custref)) {
+ if (!empty($objp->custref)) {
$objRef .= ' (' . $objp->custref . ')';
}
if (!empty($filterkey) && $filterkey != '') {
@@ -4039,6 +4040,7 @@ class Form
* 0 : use default deposit percentage from entry
* > 0 : force deposit percentage (for example, from company object)
* @return void
+ * @deprecated
*/
public function select_conditions_paiements($selected = 0, $htmlname = 'condid', $filtertype = -1, $addempty = 0, $noinfoadmin = 0, $morecss = '', $deposit_percent = -1)
{
@@ -4085,7 +4087,7 @@ class Form
$selectedDepositPercent = null;
foreach ($this->cache_conditions_paiements as $id => $arrayconditions) {
- if ($filtertype <= 0 && ! empty($arrayconditions['deposit_percent'])) {
+ if ($filtertype <= 0 && !empty($arrayconditions['deposit_percent'])) {
continue;
}
@@ -4097,7 +4099,7 @@ class Form
}
$label = $arrayconditions['label'];
- if (! empty($arrayconditions['deposit_percent'])) {
+ if (!empty($arrayconditions['deposit_percent'])) {
$label = str_replace('__DEPOSIT_PERCENT__', $deposit_percent > 0 ? $deposit_percent : $arrayconditions['deposit_percent'], $label);
}
@@ -5012,7 +5014,7 @@ class Form
} elseif ($input['type'] == 'checkbox') {
$more .= '';
$more .= '
'.$input['label'].'
';
- $more .= '
cache_conditions_paiements[$selected])) {
$label = $this->cache_conditions_paiements[$selected]['label'];
- if (! empty($this->cache_conditions_paiements[$selected]['deposit_percent'])) {
+ if (!empty($this->cache_conditions_paiements[$selected]['deposit_percent'])) {
$label = str_replace('__DEPOSIT_PERCENT__', $deposit_percent > 0 ? $deposit_percent : $this->cache_conditions_paiements[$selected]['deposit_percent'], $label);
}
@@ -6230,7 +6232,7 @@ class Form
}
}
$return .= '>';
- //if (! empty($conf->global->MAIN_VAT_SHOW_POSITIVE_RATES))
+ //if (!empty($conf->global->MAIN_VAT_SHOW_POSITIVE_RATES))
if ($mysoc->country_code == 'IN' || !empty($conf->global->MAIN_VAT_LABEL_IS_POSITIVE_RATES)) {
$return .= $rate['labelpositiverates'];
} else {
@@ -6470,11 +6472,15 @@ class Form
} elseif ($usecalendar == 'jquery') {
if (!$disabled) {
// Output javascript for datepicker
+ $minYear = getDolGlobalInt('MIN_YEAR_SELECT_DATE', (date('Y') - 100));
+ $maxYear = getDolGlobalInt('MAX_YEAR_SELECT_DATE', (date('Y') + 100));
+
$retstring .= "';
- print ' -
'.$langs->trans("ShowHideDetails").' ';
+ if (count($arraysql)) {
+ print ' -
'.$langs->trans("ShowHideDetails").' ';
+ } else {
+ print ' -
'.$langs->trans("ScriptIsEmpty").' ';
+ }
//}
print '
'."\n";
@@ -603,7 +607,8 @@ function dolibarr_get_const($db, $name, $entity = 1)
if ($resql) {
$obj = $db->fetch_object($resql);
if ($obj) {
- $value = $obj->value;
+ include_once DOL_DOCUMENT_ROOT.'/core/lib/security.lib.php';
+ $value = dolDecrypt($obj->value);
}
}
return $value;
@@ -651,11 +656,22 @@ function dolibarr_set_const($db, $name, $value, $type = 'chaine', $visible = 0,
$resql = $db->query($sql);
if (strcmp($value, '')) { // true if different. Must work for $value='0' or $value=0
- $sql = "INSERT INTO ".MAIN_DB_PREFIX."const(name,value,type,visible,note,entity)";
+ if (!preg_match('/^MAIN_LOGEVENTS/', $name) && (preg_match('/(_KEY|_EXPORTKEY|_SECUREKEY|_SERVERKEY|_PASS|_PASSWORD|_PW|_PW_TICKET|_PW_EMAILING|_SECRET|_SECURITY_TOKEN|_WEB_TOKEN)$/', $name))) {
+ // This seems a sensitive constant, we encrypt its value
+ // To list all sensitive constant, you can make a
+ // WHERE name like '%\_KEY' or name like '%\_EXPORTKEY' or name like '%\_SECUREKEY' or name like '%\_SERVERKEY' or name like '%\_PASS' or name like '%\_PASSWORD' or name like '%\_SECRET'
+ // or name like '%\_SECURITY_TOKEN' or name like '%\WEB_TOKEN'
+ include_once DOL_DOCUMENT_ROOT.'/core/lib/security.lib.php';
+ $newvalue = dolEncrypt($value);
+ } else {
+ $newvalue = $value;
+ }
+
+ $sql = "INSERT INTO ".MAIN_DB_PREFIX."const(name, value, type, visible, note, entity)";
$sql .= " VALUES (";
$sql .= $db->encrypt($name);
- $sql .= ", ".$db->encrypt($value);
- $sql .= ",'".$db->escape($type)."',".((int) $visible).",'".$db->escape($note)."',".((int) $entity).")";
+ $sql .= ", ".$db->encrypt($newvalue);
+ $sql .= ", '".$db->escape($type)."', ".((int) $visible).", '".$db->escape($note)."', ".((int) $entity).")";
//print "sql".$value."-".pg_escape_string($value)."-".$sql;exit;
//print "xx".$db->escape($value);
diff --git a/htdocs/core/lib/agenda.lib.php b/htdocs/core/lib/agenda.lib.php
index 0f7334345fa..96bd34143c7 100644
--- a/htdocs/core/lib/agenda.lib.php
+++ b/htdocs/core/lib/agenda.lib.php
@@ -498,7 +498,7 @@ function calendars_prepare_head($param)
$head[$h][2] = 'cardday';
$h++;
- //if (! empty($conf->global->AGENDA_USE_EVENT_TYPE))
+ //if (!empty($conf->global->AGENDA_USE_EVENT_TYPE))
if (!empty($conf->global->AGENDA_SHOW_PERTYPE)) {
$head[$h][0] = DOL_URL_ROOT.'/comm/action/pertype.php'.($param ? '?'.$param : '');
$head[$h][1] = $langs->trans("ViewPerType");
diff --git a/htdocs/core/lib/bank.lib.php b/htdocs/core/lib/bank.lib.php
index 5dde1bc4360..1792de89a60 100644
--- a/htdocs/core/lib/bank.lib.php
+++ b/htdocs/core/lib/bank.lib.php
@@ -157,6 +157,11 @@ function bank_admin_prepare_head($object)
$head[$h][2] = 'attributes';
$h++;
+ $head[$h][0] = DOL_URL_ROOT.'/admin/bankline_extrafields.php';
+ $head[$h][1] = $langs->trans("BanklineExtraFields");
+ $head[$h][2] = 'bankline_extrafields';
+ $h++;
+
complete_head_from_modules($conf, $langs, $object, $head, $h, 'bank_admin', 'remove');
diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php
index 908dacb870c..9cadb431ec5 100644
--- a/htdocs/core/lib/company.lib.php
+++ b/htdocs/core/lib/company.lib.php
@@ -128,7 +128,7 @@ function societe_prepare_head(Societe $object)
}
}
$supplier_module_enabled = 0;
- if ((isModEnabled('fournisseur') && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_proposal->enabled) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled('fournisseur') && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled('supplier_proposal') || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
$supplier_module_enabled = 1;
}
if ($supplier_module_enabled == 1 && $object->fournisseur && !empty($user->rights->fournisseur->lire)) {
@@ -138,7 +138,7 @@ function societe_prepare_head(Societe $object)
$h++;
}
- if (!empty($conf->project->enabled) && (!empty($user->rights->projet->lire))) {
+ if (isModEnabled('project') && (!empty($user->rights->projet->lire))) {
$nbProject = 0;
// Enable caching of thirdrparty count projects
require_once DOL_DOCUMENT_ROOT.'/core/lib/memory.lib.php';
@@ -179,7 +179,7 @@ function societe_prepare_head(Societe $object)
}
// Related items
- if ((isModEnabled('commande') || isModEnabled('propal') || isModEnabled('facture') || isModEnabled('ficheinter') || (isModEnabled('fournisseur') && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled))
+ if ((isModEnabled('commande') || isModEnabled('propal') || isModEnabled('facture') || isModEnabled('ficheinter') || (isModEnabled('fournisseur') && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice"))
&& empty($conf->global->THIRDPARTIES_DISABLE_RELATED_OBJECT_TAB)) {
$head[$h][0] = DOL_URL_ROOT.'/societe/consumption.php?socid='.$object->id;
$head[$h][1] = $langs->trans("Referers");
@@ -781,11 +781,11 @@ function show_projects($conf, $langs, $db, $object, $backtopage = '', $nocreatel
$i = -1;
- if (!empty($conf->project->enabled) && $user->rights->projet->lire) {
+ if (isModEnabled('project') && $user->rights->projet->lire) {
$langs->load("projects");
$newcardbutton = '';
- if (!empty($conf->project->enabled) && $user->rights->projet->creer && empty($nocreatelink)) {
+ if (isModEnabled('project') && $user->rights->projet->creer && empty($nocreatelink)) {
$newcardbutton .= dolGetButtonTitle($langs->trans('AddProject'), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/projet/card.php?socid='.$object->id.'&action=create&backtopage='.urlencode($backtopage));
}
diff --git a/htdocs/core/lib/contact.lib.php b/htdocs/core/lib/contact.lib.php
index b63e7b025c7..d7c89b1cf99 100644
--- a/htdocs/core/lib/contact.lib.php
+++ b/htdocs/core/lib/contact.lib.php
@@ -57,7 +57,7 @@ function contact_prepare_head(Contact $object)
$head[$tab][2] = 'perso';
$tab++;
- if (!empty($conf->project->enabled) && $user->hasRight('project', 'lire')) {
+ if (isModEnabled('project') && $user->hasRight('project', 'lire')) {
$nbProject = 0;
// Enable caching of thirdrparty count projects
require_once DOL_DOCUMENT_ROOT.'/core/lib/memory.lib.php';
@@ -92,7 +92,7 @@ function contact_prepare_head(Contact $object)
}
// Related items
- if (!empty($conf->commande->enabled) || !empty($conf->propal->enabled) || isModEnabled('facture') || !empty($conf->ficheinter->enabled) || (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if (isModEnabled('commande') || isModEnabled("propal") || isModEnabled('facture') || !empty($conf->ficheinter->enabled) || (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
$head[$tab][0] = DOL_URL_ROOT.'/contact/consumption.php?id='.$object->id;
$head[$tab][1] = $langs->trans("Referers");
$head[$tab][2] = 'consumption';
@@ -170,11 +170,11 @@ function show_contacts_projects($conf, $langs, $db, $object, $backtopage = '', $
$i = -1;
- if (!empty($conf->project->enabled) && $user->rights->projet->lire) {
+ if (isModEnabled('project') && $user->rights->projet->lire) {
$langs->load("projects");
$newcardbutton = '';
- if (!empty($conf->project->enabled) && $user->rights->projet->creer && empty($nocreatelink)) {
+ if (isModEnabled('project') && $user->rights->projet->creer && empty($nocreatelink)) {
$newcardbutton .= dolGetButtonTitle($langs->trans('AddProject'), '', 'fa fa-plus-circle', DOL_URL_ROOT.'/projet/card.php?socid='.$object->id.'&action=create&backtopage='.urlencode($backtopage));
}
diff --git a/htdocs/core/lib/expedition.lib.php b/htdocs/core/lib/expedition.lib.php
index 99118197174..b9eb90d7f9f 100644
--- a/htdocs/core/lib/expedition.lib.php
+++ b/htdocs/core/lib/expedition.lib.php
@@ -35,7 +35,7 @@
function expedition_prepare_head(Expedition $object)
{
global $langs, $conf, $user;
- if (!empty($conf->expedition->enabled)) {
+ if (isModEnabled("expedition")) {
$langs->load("sendings");
}
$langs->load("orders");
diff --git a/htdocs/core/lib/files.lib.php b/htdocs/core/lib/files.lib.php
index cd4ff50044e..2b53fbbf230 100644
--- a/htdocs/core/lib/files.lib.php
+++ b/htdocs/core/lib/files.lib.php
@@ -318,7 +318,7 @@ function completeFileArrayWithDatabaseInfo(&$filearray, $relativedir)
if ($modulepart == 'produit' && !empty($conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO)) {
global $object;
if (!empty($object->id)) {
- if (!empty($conf->product->enabled)) {
+ if (isModEnabled("product")) {
$upload_dirold = $conf->product->multidir_output[$object->entity].'/'.substr(substr("000".$object->id, -2), 1, 1).'/'.substr(substr("000".$object->id, -2), 0, 1).'/'.$object->id."/photos";
} else {
$upload_dirold = $conf->service->multidir_output[$object->entity].'/'.substr(substr("000".$object->id, -2), 1, 1).'/'.substr(substr("000".$object->id, -2), 0, 1).'/'.$object->id."/photos";
@@ -1261,7 +1261,6 @@ function dol_delete_file($file, $disableglob = 0, $nophperrors = 0, $nohook = 0,
$hookmanager->initHooks(array('fileslib'));
$parameters = array(
- 'GET' => $_GET,
'file' => $file,
'disableglob'=> $disableglob,
'nophperrors' => $nophperrors
@@ -2311,7 +2310,7 @@ function dol_compress_dir($inputdir, $outputfile, $mode = "zip", $excludefiles =
return 1;
}
else*/
- //if (class_exists('ZipArchive') && ! empty($conf->global->MAIN_USE_ZIPARCHIVE_FOR_ZIP_COMPRESS))
+ //if (class_exists('ZipArchive') && !empty($conf->global->MAIN_USE_ZIPARCHIVE_FOR_ZIP_COMPRESS))
if (class_exists('ZipArchive')) {
$foundhandler = 1;
@@ -2421,7 +2420,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity,
return 'ErrorBadParameter';
}
if (empty($entity)) {
- if (empty($conf->multicompany->enabled)) {
+ if (!isModEnabled('multicompany')) {
$entity = 1;
} else {
$entity = 0;
@@ -2921,9 +2920,9 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity,
if (($fuser->rights->produit->{$lire} || $fuser->rights->service->{$lire}) || preg_match('/^specimen/i', $original_file)) {
$accessallowed = 1;
}
- if (!empty($conf->product->enabled)) {
+ if (isModEnabled("product")) {
$original_file = $conf->product->multidir_output[$entity].'/'.$original_file;
- } elseif (!empty($conf->service->enabled)) {
+ } elseif (isModEnabled("service")) {
$original_file = $conf->service->multidir_output[$entity].'/'.$original_file;
}
} elseif ($modulepart == 'product_batch' || $modulepart == 'produitlot') {
@@ -2934,7 +2933,7 @@ function dol_check_secure_access_document($modulepart, $original_file, $entity,
if (($fuser->rights->produit->{$lire} ) || preg_match('/^specimen/i', $original_file)) {
$accessallowed = 1;
}
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
$original_file = $conf->productbatch->multidir_output[$entity].'/'.$original_file;
}
} elseif ($modulepart == 'movement' || $modulepart == 'mouvement') {
diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php
index 4825546d622..afee28da2fd 100644
--- a/htdocs/core/lib/functions.lib.php
+++ b/htdocs/core/lib/functions.lib.php
@@ -432,8 +432,8 @@ function GETPOSTISSET($paramname)
* Can be used before GETPOST to know if the $check param of GETPOST need to check an array or a string
*
* @param string $paramname Name or parameter to test
- * @param int $method Type of method (0 = get then post, 1 = only get, 2 = only post, 3 = post then get)
- * @return bool True if we have just submit a POST or GET request with the parameter provided (even if param is empty)
+ * @param int $method Type of method (0 = get then post, 1 = only get, 2 = only post, 3 = post then get)
+ * @return bool True if we have just submit a POST or GET request with the parameter provided (even if param is empty)
*/
function GETPOSTISARRAY($paramname, $method = 0)
{
@@ -1577,7 +1577,7 @@ function dol_ucwords($string, $encoding = "UTF-8")
* @param int $level Log level
* On Windows LOG_ERR=4, LOG_WARNING=5, LOG_NOTICE=LOG_INFO=6, LOG_DEBUG=6 si define_syslog_variables ou PHP 5.3+, 7 si dolibarr
* On Linux LOG_ERR=3, LOG_WARNING=4, LOG_NOTICE=5, LOG_INFO=6, LOG_DEBUG=7
- * @param int $ident 1=Increase ident of 1, -1=Decrease ident of 1
+ * @param int $ident 1=Increase ident of 1 (after log), -1=Decrease ident of 1 (before log)
* @param string $suffixinfilename When output is a file, append this suffix into default log filename.
* @param string $restricttologhandler Force output of log only to this log handler
* @param array|null $logcontext If defined, an array with extra informations (can be used by some log handlers)
@@ -2976,7 +2976,7 @@ function dol_print_email($email, $cid = 0, $socid = 0, $addlink = 0, $max = 64,
$newemail .= img_warning($langs->trans("ErrorBadEMail", $email));
}
- if (($cid || $socid) && !empty($conf->agenda->enabled) && $user->rights->agenda->myactions->create) {
+ if (($cid || $socid) && isModEnabled('agenda') && $user->rights->agenda->myactions->create) {
$type = 'AC_EMAIL';
$link = '';
if (!empty($conf->global->AGENDA_ADDACTIONFOREMAIL)) {
@@ -3082,7 +3082,7 @@ function dol_print_socialnetworks($value, $cid, $socid, $type, $dictsocialnetwor
$htmllink .= '?chat" alt="'.$langs->trans("Chat").' '.$value.'" title="'.dol_escape_htmltag($langs->trans("Chat").' '.$value).'">';
$htmllink .= ' ';
$htmllink .= '';
- if (($cid || $socid) && !empty($conf->agenda->enabled) && $user->rights->agenda->myactions->create) {
+ if (($cid || $socid) && isModEnabled('agenda') && $user->rights->agenda->myactions->create) {
$addlink = 'AC_SKYPE';
$link = '';
if (!empty($conf->global->AGENDA_ADDACTIONFORSKYPE)) {
@@ -3207,6 +3207,8 @@ function dol_print_phone($phone, $countrycode = '', $cid = 0, $socid = 0, $addli
$newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 2).$separ.substr($newphone, 5, 2).$separ.substr($newphone, 7, 2).$separ.substr($newphone, 9, 2);
} elseif (dol_strlen($phone) == 12) {
$newphone = substr($newphone, 0, 3).$separ.substr($newphone, 3, 1).$separ.substr($newphone, 4, 2).$separ.substr($newphone, 6, 2).$separ.substr($newphone, 8, 2).$separ.substr($newphone, 10, 2);
+ } elseif (dol_strlen($phone) == 13) {
+ $newphone = substr($newphone, 0, 4).$separ.substr($newphone, 4, 2).$separ.substr($newphone, 6, 2).$separ.substr($newphone, 8, 3).$separ.substr($newphone, 11, 2);
}
} elseif (strtoupper($countrycode) == "CA") {
if (dol_strlen($phone) == 10) {
@@ -3416,7 +3418,7 @@ function dol_print_phone($phone, $countrycode = '', $cid = 0, $socid = 0, $addli
}
}
- //if (($cid || $socid) && ! empty($conf->agenda->enabled) && $user->rights->agenda->myactions->create)
+ //if (($cid || $socid) && !empty($conf->agenda->enabled) && $user->rights->agenda->myactions->create)
if (isModEnabled('agenda') && $user->rights->agenda->myactions->create) {
$type = 'AC_TEL';
$link = '';
@@ -3972,7 +3974,7 @@ function img_picto($titlealt, $picto, $moreatt = '', $pictoisfullpath = false, $
'salary', 'shipment', 'state', 'supplier_invoice', 'supplier_invoicea', 'supplier_invoicer', 'supplier_invoiced',
'technic', 'ticket',
'error', 'warning',
- 'recent', 'reception', 'recruitmentcandidature', 'recruitmentjobposition', 'resource', 'recurring',
+ 'recent', 'reception', 'recruitmentcandidature', 'recruitmentjobposition', 'resource', 'recurring','rss',
'shapes', 'square', 'stop-circle', 'supplier', 'supplier_proposal', 'supplier_order', 'supplier_invoice',
'timespent', 'title_setup', 'title_accountancy', 'title_bank', 'title_hrm', 'title_agenda',
'uncheck', 'user-cog', 'user-injured', 'user-md', 'vat', 'website', 'workstation', 'webhook', 'world', 'private',
@@ -5116,8 +5118,12 @@ function getTitleFieldOfList($name, $thead = 0, $file = "", $field = "", $begin
$out .= '>';
}
if ($tooltip) {
- // You can also use 'TranslationString:keyfortooltiponlick' for a tooltip on click.
- $tmptooltip = explode(':', $tooltip);
+ // You can also use 'TranslationString:keyfortooltiponclick' for a tooltip on click.
+ if (preg_match('/:\w+$/', $tooltip)) {
+ $tmptooltip = explode(':', $tooltip);
+ } else {
+ $tmptooltip = array($tooltip);
+ }
$out .= $form->textwithpicto($langs->trans($name), $langs->trans($tmptooltip[0]), 1, 'help', '', 0, 3, (empty($tmptooltip[1]) ? '' : 'extra_'.str_replace('.', '_', $field).'_'.$tmptooltip[1]));
} else {
$out .= $langs->trans($name);
@@ -6831,7 +6837,7 @@ function dol_string_onlythesehtmlattributes($stringtoclean, $allowed_attributes
for ($els = $dom->getElementsByTagname('*'), $i = $els->length - 1; $i >= 0; $i--) {
for ($attrs = $els->item($i)->attributes, $ii = $attrs->length - 1; $ii >= 0; $ii--) {
//var_dump($attrs->item($ii));
- if (! empty($attrs->item($ii)->name)) {
+ if (!empty($attrs->item($ii)->name)) {
if (! in_array($attrs->item($ii)->name, $allowed_attributes)) {
// Delete attribute if not into allowed_attributes
$els->item($i)->removeAttribute($attrs->item($ii)->name);
@@ -7062,7 +7068,7 @@ function dol_html_entity_decode($a, $b, $c = 'UTF-8', $keepsomeentities = 0)
if ($keepsomeentities) {
$newstring = strtr($newstring, array('&'=>'__andamp__', '<'=>'__andlt__', '>'=>'__andgt__', '"'=>'__dquot__'));
}
- $newstring = html_entity_decode($newstring, $b, $c);
+ $newstring = html_entity_decode((string) $newstring, (int) $b, (string) $c);
if ($keepsomeentities) {
$newstring = strtr($newstring, array('__andamp__'=>'&', '__andlt__'=>'<', '__andgt__'=>'>', '__dquot__'=>'"'));
}
@@ -7347,7 +7353,7 @@ function getCommonSubstitutionArray($outputlangs, $onlykey = 0, $exclude = null,
$substitutionarray['__NOTE_PRIVATE__'] = '__NOTE_PRIVATE__';
$substitutionarray['__EXTRAFIELD_XXX__'] = '__EXTRAFIELD_XXX__';
- if (!empty($conf->societe->enabled)) { // Most objects are concerned
+ if (isModEnabled("societe")) { // Most objects are concerned
$substitutionarray['__THIRDPARTY_ID__'] = '__THIRDPARTY_ID__';
$substitutionarray['__THIRDPARTY_NAME__'] = '__THIRDPARTY_NAME__';
$substitutionarray['__THIRDPARTY_NAME_ALIAS__'] = '__THIRDPARTY_NAME_ALIAS__';
@@ -7369,7 +7375,7 @@ function getCommonSubstitutionArray($outputlangs, $onlykey = 0, $exclude = null,
$substitutionarray['__THIRDPARTY_NOTE_PUBLIC__'] = '__THIRDPARTY_NOTE_PUBLIC__';
$substitutionarray['__THIRDPARTY_NOTE_PRIVATE__'] = '__THIRDPARTY_NOTE_PRIVATE__';
}
- if (!empty($conf->adherent->enabled) && (!is_object($object) || $object->element == 'adherent')) {
+ if (isModEnabled('adherent') && (!is_object($object) || $object->element == 'adherent')) {
$substitutionarray['__MEMBER_ID__'] = '__MEMBER_ID__';
$substitutionarray['__MEMBER_CIVILITY__'] = '__MEMBER_CIVILITY__';
$substitutionarray['__MEMBER_FIRSTNAME__'] = '__MEMBER_FIRSTNAME__';
@@ -7391,25 +7397,25 @@ function getCommonSubstitutionArray($outputlangs, $onlykey = 0, $exclude = null,
$substitutionarray['__TICKET_USER_ASSIGN__'] = '__TICKET_USER_ASSIGN__';
}
- if (!empty($conf->recruitment->enabled) && (!is_object($object) || $object->element == 'recruitmentcandidature')) {
+ if (isModEnabled('recruitment') && (!is_object($object) || $object->element == 'recruitmentcandidature')) {
$substitutionarray['__CANDIDATE_FULLNAME__'] = '__CANDIDATE_FULLNAME__';
$substitutionarray['__CANDIDATE_FIRSTNAME__'] = '__CANDIDATE_FIRSTNAME__';
$substitutionarray['__CANDIDATE_LASTNAME__'] = '__CANDIDATE_LASTNAME__';
}
- if (!empty($conf->project->enabled)) { // Most objects
+ if (isModEnabled('project')) { // Most objects
$substitutionarray['__PROJECT_ID__'] = '__PROJECT_ID__';
$substitutionarray['__PROJECT_REF__'] = '__PROJECT_REF__';
$substitutionarray['__PROJECT_NAME__'] = '__PROJECT_NAME__';
/*$substitutionarray['__PROJECT_NOTE_PUBLIC__'] = '__PROJECT_NOTE_PUBLIC__';
$substitutionarray['__PROJECT_NOTE_PRIVATE__'] = '__PROJECT_NOTE_PRIVATE__';*/
}
- if (!empty($conf->contrat->enabled) && (!is_object($object) || $object->element == 'contract')) {
+ if (isModEnabled('contrat') && (!is_object($object) || $object->element == 'contract')) {
$substitutionarray['__CONTRACT_HIGHEST_PLANNED_START_DATE__'] = 'Highest date planned for a service start';
$substitutionarray['__CONTRACT_HIGHEST_PLANNED_START_DATETIME__'] = 'Highest date and hour planned for service start';
$substitutionarray['__CONTRACT_LOWEST_EXPIRATION_DATE__'] = 'Lowest data for planned expiration of service';
$substitutionarray['__CONTRACT_LOWEST_EXPIRATION_DATETIME__'] = 'Lowest date and hour for planned expiration of service';
}
- if (!empty($conf->propal->enabled) && (!is_object($object) || $object->element == 'propal')) {
+ if (isModEnabled("propal") && (!is_object($object) || $object->element == 'propal')) {
$substitutionarray['__ONLINE_SIGN_URL__'] = 'ToOfferALinkForOnlineSignature';
}
$substitutionarray['__ONLINE_PAYMENT_URL__'] = 'UrlToPayOnlineIfApplicable';
@@ -7426,11 +7432,11 @@ function getCommonSubstitutionArray($outputlangs, $onlykey = 0, $exclude = null,
$substitutionarray['__DIRECTDOWNLOAD_URL_CONTRACT__'] = 'Direct download url of a contract';
$substitutionarray['__DIRECTDOWNLOAD_URL_SUPPLIER_PROPOSAL__'] = 'Direct download url of a supplier proposal';
- if (!empty($conf->expedition->enabled) && (!is_object($object) || $object->element == 'shipping')) {
+ if (isModEnabled("expedition") && (!is_object($object) || $object->element == 'shipping')) {
$substitutionarray['__SHIPPINGTRACKNUM__'] = 'Shipping tracking number';
$substitutionarray['__SHIPPINGTRACKNUMURL__'] = 'Shipping tracking url';
}
- if (!empty($conf->reception->enabled) && (!is_object($object) || $object->element == 'reception')) {
+ if (isModEnabled("reception") && (!is_object($object) || $object->element == 'reception')) {
$substitutionarray['__RECEPTIONTRACKNUM__'] = 'Shippin tracking number of shipment';
$substitutionarray['__RECEPTIONTRACKNUMURL__'] = 'Shipping tracking url';
}
@@ -7669,6 +7675,7 @@ function getCommonSubstitutionArray($outputlangs, $onlykey = 0, $exclude = null,
$substitutionarray['__ONLINE_PAYMENT_URL__'] = $paymenturl;
if (is_object($object) && $object->element == 'propal') {
+ require_once DOL_DOCUMENT_ROOT.'/core/lib/signature.lib.php';
$substitutionarray['__ONLINE_SIGN_URL__'] = getOnlineSignatureUrl(0, 'proposal', $object->ref);
}
if (!empty($conf->global->PROPOSAL_ALLOW_EXTERNAL_DOWNLOAD) && is_object($object) && $object->element == 'propal') {
@@ -7810,7 +7817,7 @@ function getCommonSubstitutionArray($outputlangs, $onlykey = 0, $exclude = null,
));
}
- if (!empty($conf->multicompany->enabled)) {
+ if (isModEnabled('multicompany')) {
$substitutionarray = array_merge($substitutionarray, array('__ENTITY_ID__' => $conf->entity));
}
if (empty($exclude) || !in_array('system', $exclude)) {
@@ -10420,8 +10427,8 @@ function dolGetStatus($statusLabel = '', $statusLabelShort = '', $html = '', $st
/**
* Function dolGetButtonAction
*
- * @param string $label label of button without HTML : use in alt attribute for accessibility $html is not empty
- * @param string $html optional : content with html
+ * @param string $label label or tooltip of button. Also used as tooltip in title attribute. Can be escaped HTML content or full simple text.
+ * @param string $text optional : short label on button. Can be escaped HTML content or full simple text.
* @param string $actionType default, delete, danger
* @param string $url the url for link
* @param string $id attribute id of button
@@ -10446,7 +10453,7 @@ function dolGetStatus($statusLabel = '', $statusLabelShort = '', $html = '', $st
* // phpcs:enable
* @return string html button
*/
-function dolGetButtonAction($label, $html = '', $actionType = 'default', $url = '', $id = '', $userRight = 1, $params = array())
+function dolGetButtonAction($label, $text = '', $actionType = 'default', $url = '', $id = '', $userRight = 1, $params = array())
{
global $hookmanager, $action, $object, $langs;
@@ -10466,8 +10473,8 @@ function dolGetButtonAction($label, $html = '', $actionType = 'default', $url =
'title' => $label
);
- if (empty($html)) {
- $html = $label;
+ if (empty($text)) {
+ $text = $label;
$attr['title'] = ''; // if html not set, leave label on title is redundant
} else {
$attr['aria-label'] = $label;
@@ -10546,7 +10553,7 @@ function dolGetButtonAction($label, $html = '', $actionType = 'default', $url =
'attr' => $attr,
'tag' => $tag,
'label' => $label,
- 'html' => $html,
+ 'html' => $text,
'actionType' => $actionType,
'url' => $url,
'id' => $id,
@@ -10558,7 +10565,11 @@ function dolGetButtonAction($label, $html = '', $actionType = 'default', $url =
if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
if (empty($reshook)) {
- return '<' . $tag . ' ' . $compiledAttributes . '>' . $html . '' . $tag . '>';
+ if (dol_textishtml($text)) { // If content already HTML encoded
+ return '<' . $tag . ' ' . $compiledAttributes . '>' . $text . '' . $tag . '>';
+ } else {
+ return '<' . $tag . ' ' . $compiledAttributes . '>' . dol_escape_htmltag($text) . '' . $tag . '>';
+ }
} else {
return $hookmanager->resPrint;
}
diff --git a/htdocs/core/lib/invoice.lib.php b/htdocs/core/lib/invoice.lib.php
index 52daea0f150..9e60f20fd25 100644
--- a/htdocs/core/lib/invoice.lib.php
+++ b/htdocs/core/lib/invoice.lib.php
@@ -1072,7 +1072,7 @@ function getPurchaseInvoiceUnpaidOpenTable($maxCount = 500, $socid = 0)
$result = '';
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->facture->lire) || (!empty($conf->supplier_invoice->enabled) && $user->rights->supplier_invoice->lire)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->facture->lire) || (isModEnabled("supplier_invoice") && $user->rights->supplier_invoice->lire)) {
$facstatic = new FactureFournisseur($db);
$sql = "SELECT ff.rowid, ff.ref, ff.fk_statut as status, ff.type, ff.libelle as label, ff.total_ht, ff.total_tva, ff.total_ttc, ff.paye";
diff --git a/htdocs/core/lib/ldap.lib.php b/htdocs/core/lib/ldap.lib.php
index 56a8bcc4285..94e14a90267 100644
--- a/htdocs/core/lib/ldap.lib.php
+++ b/htdocs/core/lib/ldap.lib.php
@@ -57,21 +57,21 @@ function ldap_prepare_head()
$h++;
}
- if (!empty($conf->societe->enabled) && !empty($conf->global->LDAP_CONTACT_ACTIVE)) {
+ if (isModEnabled("societe") && !empty($conf->global->LDAP_CONTACT_ACTIVE)) {
$head[$h][0] = DOL_URL_ROOT."/admin/ldap_contacts.php";
$head[$h][1] = $langs->trans("LDAPContactsSynchro");
$head[$h][2] = 'contacts';
$h++;
}
- if (!empty($conf->adherent->enabled) && !empty($conf->global->LDAP_MEMBER_ACTIVE)) {
+ if (isModEnabled('adherent') && !empty($conf->global->LDAP_MEMBER_ACTIVE)) {
$head[$h][0] = DOL_URL_ROOT."/admin/ldap_members.php";
$head[$h][1] = $langs->trans("LDAPMembersSynchro");
$head[$h][2] = 'members';
$h++;
}
- if (!empty($conf->adherent->enabled) && !empty($conf->global->LDAP_MEMBER_TYPE_ACTIVE)) {
+ if (isModEnabled('adherent') && !empty($conf->global->LDAP_MEMBER_TYPE_ACTIVE)) {
$head[$h][0] = DOL_URL_ROOT."/admin/ldap_members_types.php";
$head[$h][1] = $langs->trans("LDAPMembersTypesSynchro");
$head[$h][2] = 'memberstypes';
diff --git a/htdocs/core/lib/modulebuilder.lib.php b/htdocs/core/lib/modulebuilder.lib.php
index 9e17d925dbe..11cbcad7b85 100644
--- a/htdocs/core/lib/modulebuilder.lib.php
+++ b/htdocs/core/lib/modulebuilder.lib.php
@@ -123,7 +123,7 @@ function rebuildObjectClass($destdir, $module, $objectname, $newmask, $readdir =
$i++;
$texttoinsert .= "\t\t'".$key."' => array('type'=>'".$val['type']."',";
$texttoinsert .= " 'label'=>'".$val['label']."',";
- if ($val['picto']) {
+ if (!empty($val['picto'])) {
$texttoinsert .= " 'picto'=>'".$val['picto']."',";
}
$texttoinsert .= " 'enabled'=>'".($val['enabled'] !== '' ? $val['enabled'] : 1)."',";
diff --git a/htdocs/core/lib/order.lib.php b/htdocs/core/lib/order.lib.php
index bde894940de..9128be56ea1 100644
--- a/htdocs/core/lib/order.lib.php
+++ b/htdocs/core/lib/order.lib.php
@@ -34,7 +34,7 @@
function commande_prepare_head(Commande $object)
{
global $db, $langs, $conf, $user;
- if (!empty($conf->expedition->enabled)) {
+ if (isModEnabled("expedition")) {
$langs->load("sendings");
}
$langs->load("orders");
@@ -42,7 +42,7 @@ function commande_prepare_head(Commande $object)
$h = 0;
$head = array();
- if (!empty($conf->commande->enabled) && $user->rights->commande->lire) {
+ if (isModEnabled('commande') && $user->rights->commande->lire) {
$head[$h][0] = DOL_URL_ROOT.'/commande/card.php?id='.$object->id;
$head[$h][1] = $langs->trans("CustomerOrder");
$head[$h][2] = 'order';
diff --git a/htdocs/core/lib/payments.lib.php b/htdocs/core/lib/payments.lib.php
index 809b5f8dc73..1ebca6ba65a 100644
--- a/htdocs/core/lib/payments.lib.php
+++ b/htdocs/core/lib/payments.lib.php
@@ -393,7 +393,7 @@ function getOnlinePaymentUrl($mode, $type, $ref = '', $amount = '9.99', $freetag
}
// For multicompany
- if (!empty($out) && !empty($conf->multicompany->enabled)) {
+ if (!empty($out) && isModEnabled('multicompany')) {
$out .= "&entity=".$conf->entity; // Check the entity because we may have the same reference in several entities
}
@@ -482,7 +482,7 @@ function htmlPrintOnlinePaymentFooter($fromcompany, $langs, $addformmessage = 0,
}
// Add other message if VAT exists
- if ($object->total_vat != 0 || $object->total_tva != 0) {
+ if (!empty($object->total_vat) || $object->total_tva != 0) {
$parammessageform = 'ONLINE_PAYMENT_MESSAGE_FORMIFVAT_'.$suffix;
if (!empty($conf->global->$parammessageform)) {
print $langs->transnoentities($conf->global->$parammessageform);
diff --git a/htdocs/core/lib/pdf.lib.php b/htdocs/core/lib/pdf.lib.php
index be89f4700b8..3b0c2250c49 100644
--- a/htdocs/core/lib/pdf.lib.php
+++ b/htdocs/core/lib/pdf.lib.php
@@ -61,7 +61,7 @@ function pdf_admin_prepare_head()
// $this->tabs = array('entity:-tabname:Title:@mymodule:/mymodule/mypage.php?id=__ID__'); to remove a tab
complete_head_from_modules($conf, $langs, null, $head, $h, 'pdf_admin');
- if (!empty($conf->propal->enabled)) {
+ if (isModEnabled("propal")) {
$head[$h][0] = DOL_URL_ROOT.'/admin/pdf_other.php';
$head[$h][1] = $langs->trans("Other");
$head[$h][2] = 'other';
@@ -1181,6 +1181,7 @@ function pdf_pagefoot(&$pdf, $outputlangs, $paramfreetext, $fromcompany, $marge_
$pdf->SetAutoPageBreak(1, 0); // Restore pagebreak
}
+ if (getDolGlobalInt('PDF_FREETEXT_DISABLE_PAGEBREAK') === 1) { $pdf->SetAutoPageBreak(0, 0); } // Option for disable auto pagebreak
if ($line) { // Free text
$pdf->SetXY($dims['lm'], -$posy);
if (!getDolGlobalString('PDF_ALLOW_HTML_FOR_FREE_TEXT')) { // by default
@@ -1190,6 +1191,7 @@ function pdf_pagefoot(&$pdf, $outputlangs, $paramfreetext, $fromcompany, $marge_
}
$posy -= $freetextheight;
}
+ if (getDolGlobalInt('PDF_FREETEXT_DISABLE_PAGEBREAK') === 1) { $pdf->SetAutoPageBreak(1, 0); } // Restore pagebreak
$pdf->SetY(-$posy);
@@ -1199,16 +1201,15 @@ function pdf_pagefoot(&$pdf, $outputlangs, $paramfreetext, $fromcompany, $marge_
}
// Option for set top margin height of footer after freetext
- if (getDolGlobalString('PDF_FOOTER_TOP_MARGIN') || getDolGlobalString('PDF_FOOTER_TOP_MARGIN') === '0') {
- // TODO Remove this case. Height should be good automatically, only $posy-- should be required.
- $posy -= getDolGlobalInt('PDF_FOOTER_TOP_MARGIN');
+ if (getDolGlobalString('PDF_FOOTER_TOP_MARGIN') || getDolGlobalInt('PDF_FOOTER_TOP_MARGIN') === 0) {
+ $posy -= floatval(getDolGlobalString('PDF_FOOTER_TOP_MARGIN'));
} else {
$posy--;
}
- if (getDolGlobalString('PDF_FOOTER_DISABLE_PAGEBREAK') === '1') { $pdf->SetAutoPageBreak(0, 0); } // Option for disable auto pagebreak
+ if (getDolGlobalInt('PDF_FOOTER_DISABLE_PAGEBREAK') === 1) { $pdf->SetAutoPageBreak(0, 0); } // Option for disable auto pagebreak
$pdf->writeHTMLCell($pdf->page_largeur - $pdf->margin_left - $pdf->margin_right, $mycustomfooterheight, $dims['lm'], $dims['hk'] - $posy, dol_htmlentitiesbr($mycustomfooter, 1, 'UTF-8', 0));
- if (getDolGlobalString('PDF_FOOTER_DISABLE_PAGEBREAK') === '1') { $pdf->SetAutoPageBreak(1, 0); } // Restore pagebreak
+ if (getDolGlobalInt('PDF_FOOTER_DISABLE_PAGEBREAK') === 1) { $pdf->SetAutoPageBreak(1, 0); } // Restore pagebreak
$posy -= $mycustomfooterheight - 3;
} else {
@@ -1224,6 +1225,7 @@ function pdf_pagefoot(&$pdf, $outputlangs, $paramfreetext, $fromcompany, $marge_
$pdf->SetAutoPageBreak(1, 0); // Restore pagebreak
}
+ if (getDolGlobalInt('PDF_FREETEXT_DISABLE_PAGEBREAK') === 1) { $pdf->SetAutoPageBreak(0, 0); } // Option for disable auto pagebreak
if ($line) { // Free text
$pdf->SetXY($dims['lm'], -$posy);
if (!getDolGlobalString('PDF_ALLOW_HTML_FOR_FREE_TEXT')) { // by default
@@ -1233,6 +1235,7 @@ function pdf_pagefoot(&$pdf, $outputlangs, $paramfreetext, $fromcompany, $marge_
}
$posy -= $freetextheight;
}
+ if (getDolGlobalInt('PDF_FREETEXT_DISABLE_PAGEBREAK') === 1) { $pdf->SetAutoPageBreak(1, 0); } // Restore pagebreak
$pdf->SetY(-$posy);
@@ -1242,9 +1245,8 @@ function pdf_pagefoot(&$pdf, $outputlangs, $paramfreetext, $fromcompany, $marge_
}
// Option for set top margin height of footer after freetext
- if (getDolGlobalString('PDF_FOOTER_TOP_MARGIN') || getDolGlobalString('PDF_FOOTER_TOP_MARGIN') === '0') {
- // TODO Remove this case. Height should be good automatically, only $posy-- should be required.
- $posy -= getDolGlobalString('PDF_FOOTER_TOP_MARGIN');
+ if (getDolGlobalString('PDF_FOOTER_TOP_MARGIN') || getDolGlobalInt('PDF_FOOTER_TOP_MARGIN') === 0) {
+ $posy -= floatval(getDolGlobalString('PDF_FOOTER_TOP_MARGIN'));
} else {
$posy--;
}
@@ -1348,7 +1350,7 @@ function pdf_writelinedesc(&$pdf, $object, $i, $outputlangs, $w, $h, $posx, $pos
$reshook = 0;
$result = '';
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduct this test in the pdf_xxx function if you don't want your hook to run
$special_code = empty($object->lines[$i]->special_code) ? '' : $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -1410,7 +1412,7 @@ function pdf_getlinedesc($object, $i, $outputlangs, $hideref = 0, $hidedesc = 0,
include_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
$prodser = new Product($db);
- if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) {
+ if (!empty($conf->global->PRODUIT_CUSTOMER_PRICES)) {
include_once DOL_DOCUMENT_ROOT . '/product/class/productcustomerprice.class.php';
}
}
@@ -1561,7 +1563,7 @@ function pdf_getlinedesc($object, $i, $outputlangs, $hideref = 0, $hidedesc = 0,
} else {
$ref_prodserv = $prodser->ref; // Show local ref only
- if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) {
+ if (!empty($conf->global->PRODUIT_CUSTOMER_PRICES)) {
$productCustomerPriceStatic = new Productcustomerprice($db);
$filter = array('fk_product' => $idprod, 'fk_soc' => $object->socid);
@@ -1570,7 +1572,7 @@ function pdf_getlinedesc($object, $i, $outputlangs, $hideref = 0, $hidedesc = 0,
if ($nbCustomerPrices > 0) {
$productCustomerPrice = $productCustomerPriceStatic->lines[0];
- if (! empty($productCustomerPrice->ref_customer)) {
+ if (!empty($productCustomerPrice->ref_customer)) {
switch ($conf->global->PRODUIT_CUSTOMER_PRICES_PDF_REF_MODE) {
case 1:
$ref_prodserv = $productCustomerPrice->ref_customer;
@@ -1603,7 +1605,7 @@ function pdf_getlinedesc($object, $i, $outputlangs, $hideref = 0, $hidedesc = 0,
$libelleproduitservice = $prefix_prodserv.$ref_prodserv.$libelleproduitservice;
// Add an additional description for the category products
- if (!empty($conf->global->CATEGORY_ADD_DESC_INTO_DOC) && $idprod && !empty($conf->categorie->enabled)) {
+ if (!empty($conf->global->CATEGORY_ADD_DESC_INTO_DOC) && $idprod && isModEnabled('categorie')) {
include_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
$categstatic = new Categorie($db);
// recovering the list of all the categories linked to product
@@ -1686,7 +1688,7 @@ function pdf_getlinenum($object, $i, $outputlangs, $hidedetails = 0)
$reshook = 0;
$result = '';
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduct this test in the pdf_xxx function if you don't want your hook to run
$special_code = $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -1719,7 +1721,7 @@ function pdf_getlineref($object, $i, $outputlangs, $hidedetails = 0)
$reshook = 0;
$result = '';
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduct this test in the pdf_xxx function if you don't want your hook to run
$special_code = $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -1751,7 +1753,7 @@ function pdf_getlineref_supplier($object, $i, $outputlangs, $hidedetails = 0)
$reshook = 0;
$result = '';
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduct this test in the pdf_xxx function if you don't want your hook to run
$special_code = $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -1783,7 +1785,7 @@ function pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails = 0)
$result = '';
$reshook = 0;
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduce this test in the pdf_xxx function if you don't want your hook to run
$special_code = $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -1850,7 +1852,7 @@ function pdf_getlineupexcltax($object, $i, $outputlangs, $hidedetails = 0)
$result = '';
$reshook = 0;
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduct this test in the pdf_xxx function if you don't want your hook to run
$special_code = $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -1866,7 +1868,7 @@ function pdf_getlineupexcltax($object, $i, $outputlangs, $hidedetails = 0)
}
if (empty($reshook)) {
if (empty($hidedetails) || $hidedetails > 1) {
- $subprice = (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1 ? $object->lines[$i]->multicurrency_subprice : $object->lines[$i]->subprice);
+ $subprice = (isModEnabled("multicurrency") && $object->multicurrency_tx != 1 ? $object->lines[$i]->multicurrency_subprice : $object->lines[$i]->subprice);
$result .= price($sign * $subprice, 0, $outputlangs);
}
}
@@ -1893,7 +1895,7 @@ function pdf_getlineupwithtax($object, $i, $outputlangs, $hidedetails = 0)
$result = '';
$reshook = 0;
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduct this test in the pdf_xxx function if you don't want your hook to run
$special_code = $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -1930,7 +1932,7 @@ function pdf_getlineqty($object, $i, $outputlangs, $hidedetails = 0)
$result = '';
$reshook = 0;
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduct this test in the pdf_xxx function if you don't want your hook to run
$special_code = $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -1970,7 +1972,7 @@ function pdf_getlineqty_asked($object, $i, $outputlangs, $hidedetails = 0)
$reshook = 0;
$result = '';
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduct this test in the pdf_xxx function if you don't want your hook to run
$special_code = $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -2010,7 +2012,7 @@ function pdf_getlineqty_shipped($object, $i, $outputlangs, $hidedetails = 0)
$reshook = 0;
$result = '';
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduct this test in the pdf_xxx function if you don't want your hook to run
$special_code = $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -2050,7 +2052,7 @@ function pdf_getlineqty_keeptoship($object, $i, $outputlangs, $hidedetails = 0)
$reshook = 0;
$result = '';
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduct this test in the pdf_xxx function if you don't want your hook to run
$special_code = $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -2091,7 +2093,7 @@ function pdf_getlineunit($object, $i, $outputlangs, $hidedetails = 0, $hookmanag
$reshook = 0;
$result = '';
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduct this test in the pdf_xxx function if you don't want your hook to run
$special_code = $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -2136,7 +2138,7 @@ function pdf_getlineremisepercent($object, $i, $outputlangs, $hidedetails = 0)
$reshook = 0;
$result = '';
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduct this test in the pdf_xxx function if you don't want your hook to run
$special_code = $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -2180,7 +2182,7 @@ function pdf_getlineprogress($object, $i, $outputlangs, $hidedetails = 0, $hookm
$reshook = 0;
$result = '';
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduct this test in the pdf_xxx function if you don't want your hook to run
$special_code = $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -2233,7 +2235,7 @@ function pdf_getlinetotalexcltax($object, $i, $outputlangs, $hidedetails = 0)
$reshook = 0;
$result = '';
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduct this test in the pdf_xxx function if you don't want your hook to run
$special_code = $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -2251,7 +2253,7 @@ function pdf_getlinetotalexcltax($object, $i, $outputlangs, $hidedetails = 0)
if ($object->lines[$i]->special_code == 3) {
$result .= $outputlangs->transnoentities("Option");
} elseif (empty($hidedetails) || $hidedetails > 1) {
- $total_ht = (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1 ? $object->lines[$i]->multicurrency_total_ht : $object->lines[$i]->total_ht);
+ $total_ht = (isModEnabled("multicurrency") && $object->multicurrency_tx != 1 ? $object->lines[$i]->multicurrency_total_ht : $object->lines[$i]->total_ht);
if (!empty($object->lines[$i]->situation_percent) && $object->lines[$i]->situation_percent > 0) {
// TODO Remove this. The total should be saved correctly in database instead of being modified here.
$prev_progress = 0;
@@ -2289,7 +2291,7 @@ function pdf_getlinetotalwithtax($object, $i, $outputlangs, $hidedetails = 0)
$reshook = 0;
$result = '';
- //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && ! empty($object->lines[$i]->special_code)) || ! empty($object->lines[$i]->fk_parent_line) ) )
+ //if (is_object($hookmanager) && ( (isset($object->lines[$i]->product_type) && $object->lines[$i]->product_type == 9 && !empty($object->lines[$i]->special_code)) || !empty($object->lines[$i]->fk_parent_line) ) )
if (is_object($hookmanager)) { // Old code is commented on preceding line. Reproduct this test in the pdf_xxx function if you don't want your hook to run
$special_code = $object->lines[$i]->special_code;
if (!empty($object->lines[$i]->fk_parent_line)) {
@@ -2307,7 +2309,7 @@ function pdf_getlinetotalwithtax($object, $i, $outputlangs, $hidedetails = 0)
if ($object->lines[$i]->special_code == 3) {
$result .= $outputlangs->transnoentities("Option");
} elseif (empty($hidedetails) || $hidedetails > 1) {
- $total_ttc = (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1 ? $object->lines[$i]->multicurrency_total_ttc : $object->lines[$i]->total_ttc);
+ $total_ttc = (isModEnabled("multicurrency") && $object->multicurrency_tx != 1 ? $object->lines[$i]->multicurrency_total_ttc : $object->lines[$i]->total_ttc);
if ($object->lines[$i]->situation_percent > 0) {
// TODO Remove this. The total should be saved correctly in database instead of being modified here.
$prev_progress = 0;
@@ -2399,7 +2401,7 @@ function pdf_getLinkedObjects(&$object, $outputlangs)
foreach ($objects as $elementobject) {
if (empty($object->linkedObjects['commande']) && $object->element != 'commande') { // There is not already a link to order and object is not the order, so we show also info with order
$elementobject->fetchObjectLinked(null, '', null, '', 'OR', 1, 'sourcetype', 0);
- if (! empty($elementobject->linkedObjectsIds['commande'])) {
+ if (!empty($elementobject->linkedObjectsIds['commande'])) {
include_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
$order = new Commande($db);
$ret = $order->fetch(reset($elementobject->linkedObjectsIds['commande']));
@@ -2424,7 +2426,7 @@ function pdf_getLinkedObjects(&$object, $outputlangs)
// We concat this record info into fields xxx_value. title is overwrote.
if (empty($object->linkedObjects['commande']) && $object->element != 'commande') { // There is not already a link to order and object is not the order, so we show also info with order
$elementobject->fetchObjectLinked(null, '', null, '', 'OR', 1, 'sourcetype', 0);
- if (! empty($elementobject->linkedObjectsIds['commande'])) {
+ if (!empty($elementobject->linkedObjectsIds['commande'])) {
include_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
$order = new Commande($db);
$ret = $order->fetch(reset($elementobject->linkedObjectsIds['commande']));
@@ -2436,7 +2438,7 @@ function pdf_getLinkedObjects(&$object, $outputlangs)
if (! is_object($order)) {
$linkedobjects[$objecttype]['ref_title'] = $outputlangs->transnoentities("RefSending");
- if (! empty($linkedobjects[$objecttype]['ref_value'])) $linkedobjects[$objecttype]['ref_value'] .= ' / ';
+ if (!empty($linkedobjects[$objecttype]['ref_value'])) $linkedobjects[$objecttype]['ref_value'] .= ' / ';
$linkedobjects[$objecttype]['ref_value'] .= $outputlangs->transnoentities($elementobject->ref);
} else {
$linkedobjects[$objecttype]['ref_title'] = $outputlangs->transnoentities("RefOrder").' / '.$outputlangs->transnoentities("RefSending");
diff --git a/htdocs/core/lib/product.lib.php b/htdocs/core/lib/product.lib.php
index 7b3d1e4637f..56cb195060b 100644
--- a/htdocs/core/lib/product.lib.php
+++ b/htdocs/core/lib/product.lib.php
@@ -38,8 +38,11 @@ function product_prepare_head($object)
$langs->load("products");
$label = $langs->trans('Product');
+ $usercancreadprice = getDolGlobalString('MAIN_USE_ADVANCED_PERMS')?$user->hasRight('product', 'product_advance', 'read_prices'):$user->hasRight('product', 'lire');
+
if ($object->isService()) {
$label = $langs->trans('Service');
+ $usercancreadprice = getDolGlobalString('MAIN_USE_ADVANCED_PERMS')?$user->hasRight('service', 'service_advance', 'read_prices'):$user->hasRight('service', 'lire');
}
$h = 0;
@@ -50,7 +53,7 @@ function product_prepare_head($object)
$head[$h][2] = 'card';
$h++;
- if (!empty($object->status)) {
+ if (!empty($object->status) && $usercancreadprice) {
$head[$h][0] = DOL_URL_ROOT."/product/price.php?id=".$object->id;
$head[$h][1] = $langs->trans("SellingPrices");
$head[$h][2] = 'price';
@@ -58,13 +61,15 @@ function product_prepare_head($object)
}
if (!empty($object->status_buy) || (!empty($conf->margin->enabled) && !empty($object->status))) { // If margin is on and product on sell, we may need the cost price even if product os not on purchase
- if ((((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && $user->rights->fournisseur->lire)
+ if ((((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) && $user->rights->fournisseur->lire)
|| (!empty($conf->margin->enabled) && $user->rights->margin->liretous)
) {
- $head[$h][0] = DOL_URL_ROOT."/product/fournisseurs.php?id=".$object->id;
- $head[$h][1] = $langs->trans("BuyingPrices");
- $head[$h][2] = 'suppliers';
- $h++;
+ if ($usercancreadprice) {
+ $head[$h][0] = DOL_URL_ROOT."/product/fournisseurs.php?id=".$object->id;
+ $head[$h][1] = $langs->trans("BuyingPrices");
+ $head[$h][2] = 'suppliers';
+ $h++;
+ }
}
}
@@ -119,7 +124,7 @@ function product_prepare_head($object)
}
// Tab to link resources
- if (!empty($conf->resource->enabled)) {
+ if (isModEnabled('resource')) {
if ($object->isProduct() && !empty($conf->global->RESOURCE_ON_PRODUCTS)) {
$head[$h][0] = DOL_URL_ROOT.'/resource/element_resource.php?element=product&ref='.$object->ref;
$head[$h][1] = $langs->trans("Resources");
@@ -171,18 +176,18 @@ function product_prepare_head($object)
// Attachments
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/link.class.php';
- if (!empty($conf->product->enabled) && ($object->type == Product::TYPE_PRODUCT)) {
+ if (isModEnabled("product") && ($object->type == Product::TYPE_PRODUCT)) {
$upload_dir = $conf->product->multidir_output[$object->entity].'/'.dol_sanitizeFileName($object->ref);
}
- if (!empty($conf->service->enabled) && ($object->type == Product::TYPE_SERVICE)) {
+ if (isModEnabled("service") && ($object->type == Product::TYPE_SERVICE)) {
$upload_dir = $conf->service->multidir_output[$object->entity].'/'.dol_sanitizeFileName($object->ref);
}
$nbFiles = count(dol_dir_list($upload_dir, 'files', 0, '', '(\.meta|_preview.*\.png)$'));
if (!empty($conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO)) {
- if (!empty($conf->product->enabled) && ($object->type == Product::TYPE_PRODUCT)) {
+ if (isModEnabled("product") && ($object->type == Product::TYPE_PRODUCT)) {
$upload_dir = $conf->product->multidir_output[$object->entity].'/'.get_exdir($object->id, 2, 0, 0, $object, 'product').$object->id.'/photos';
}
- if (!empty($conf->service->enabled) && ($object->type == Product::TYPE_SERVICE)) {
+ if (isModEnabled("service") && ($object->type == Product::TYPE_SERVICE)) {
$upload_dir = $conf->service->multidir_output[$object->entity].'/'.get_exdir($object->id, 2, 0, 0, $object, 'product').$object->id.'/photos';
}
$nbFiles += count(dol_dir_list($upload_dir, 'files', 0, '', '(\.meta|_preview.*\.png)$'));
@@ -374,7 +379,7 @@ function show_stats_for_company($product, $socid)
print '';
// Customer proposals
- if (!empty($conf->propal->enabled) && $user->rights->propale->lire) {
+ if (isModEnabled("propal") && $user->rights->propale->lire) {
$nblines++;
$ret = $product->load_stats_propale($socid);
if ($ret < 0) {
@@ -393,7 +398,7 @@ function show_stats_for_company($product, $socid)
print '';
}
// Supplier proposals
- if (!empty($conf->supplier_proposal->enabled) && $user->rights->supplier_proposal->lire) {
+ if (isModEnabled('supplier_proposal') && $user->rights->supplier_proposal->lire) {
$nblines++;
$ret = $product->load_stats_proposal_supplier($socid);
if ($ret < 0) {
@@ -412,7 +417,7 @@ function show_stats_for_company($product, $socid)
print '';
}
// Customer orders
- if (!empty($conf->commande->enabled) && $user->rights->commande->lire) {
+ if (isModEnabled('commande') && $user->rights->commande->lire) {
$nblines++;
$ret = $product->load_stats_commande($socid);
if ($ret < 0) {
@@ -431,7 +436,7 @@ function show_stats_for_company($product, $socid)
print '';
}
// Supplier orders
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->commande->lire) || (!empty($conf->supplier_order->enabled) && $user->rights->supplier_order->lire)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->commande->lire) || (isModEnabled("supplier_order") && $user->rights->supplier_order->lire)) {
$nblines++;
$ret = $product->load_stats_commande_fournisseur($socid);
if ($ret < 0) {
@@ -469,7 +474,7 @@ function show_stats_for_company($product, $socid)
print '';
}
// Customer template invoices
- if (!empty($conf->facture->enabled) && $user->rights->facture->lire) {
+ if (isModEnabled("facture") && $user->rights->facture->lire) {
$nblines++;
$ret = $product->load_stats_facturerec($socid);
if ($ret < 0) {
@@ -488,7 +493,7 @@ function show_stats_for_company($product, $socid)
print '';
}
// Supplier invoices
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->facture->lire) || (!empty($conf->supplier_invoice->enabled) && $user->rights->supplier_invoice->lire)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->facture->lire) || (isModEnabled("supplier_invoice") && $user->rights->supplier_invoice->lire)) {
$nblines++;
$ret = $product->load_stats_facture_fournisseur($socid);
if ($ret < 0) {
@@ -508,7 +513,7 @@ function show_stats_for_company($product, $socid)
}
// Contracts
- if (!empty($conf->contrat->enabled) && $user->rights->contrat->lire) {
+ if (isModEnabled('contrat') && $user->rights->contrat->lire) {
$nblines++;
$ret = $product->load_stats_contrat($socid);
if ($ret < 0) {
diff --git a/htdocs/core/lib/project.lib.php b/htdocs/core/lib/project.lib.php
index 776d0f0776f..47fb9b6f186 100644
--- a/htdocs/core/lib/project.lib.php
+++ b/htdocs/core/lib/project.lib.php
@@ -124,10 +124,10 @@ function project_prepare_head(Project $project, $moreparam = '')
$h++;
}
- if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled))
- || !empty($conf->propal->enabled) || !empty($conf->commande->enabled)
- || isModEnabled('facture') || !empty($conf->contrat->enabled)
- || !empty($conf->ficheinter->enabled) || !empty($conf->agenda->enabled) || !empty($conf->deplacement->enabled) || !empty($conf->stock->enabled)) {
+ if (((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice"))
+ || isModEnabled("propal") || isModEnabled('commande')
+ || isModEnabled('facture') || isModEnabled('contrat')
+ || !empty($conf->ficheinter->enabled) || isModEnabled('agenda') || isModEnabled('deplacement') || !empty($conf->stock->enabled)) {
$nbElements = 0;
// Enable caching of thirdrparty count Contacts
$cachekey = 'count_elements_project_'.$project->id;
@@ -138,10 +138,10 @@ function project_prepare_head(Project $project, $moreparam = '')
if (!empty($conf->stock->enabled)) {
$nbElements += $project->getElementCount('stock', 'entrepot', 'fk_project');
}
- if (!empty($conf->propal->enabled)) {
+ if (isModEnabled("propal")) {
$nbElements += $project->getElementCount('propal', 'propal');
}
- if (!empty($conf->commande->enabled)) {
+ if (isModEnabled('commande')) {
$nbElements += $project->getElementCount('order', 'commande');
}
if (isModEnabled('facture')) {
@@ -150,31 +150,31 @@ function project_prepare_head(Project $project, $moreparam = '')
if (isModEnabled('facture')) {
$nbElements += $project->getElementCount('invoice_predefined', 'facture_rec');
}
- if (!empty($conf->supplier_proposal->enabled)) {
+ if (isModEnabled('supplier_proposal')) {
$nbElements += $project->getElementCount('proposal_supplier', 'supplier_proposal');
}
- if (!empty($conf->supplier_order->enabled)) {
+ if (isModEnabled("supplier_order")) {
$nbElements += $project->getElementCount('order_supplier', 'commande_fournisseur');
}
- if (!empty($conf->supplier_invoice->enabled)) {
+ if (isModEnabled("supplier_invoice")) {
$nbElements += $project->getElementCount('invoice_supplier', 'facture_fourn');
}
- if (!empty($conf->contrat->enabled)) {
+ if (isModEnabled('contrat')) {
$nbElements += $project->getElementCount('contract', 'contrat');
}
if (!empty($conf->ficheinter->enabled)) {
$nbElements += $project->getElementCount('intervention', 'fichinter');
}
- if (!empty($conf->expedition->enabled)) {
+ if (isModEnabled("expedition")) {
$nbElements += $project->getElementCount('shipping', 'expedition');
}
if (!empty($conf->mrp->enabled)) {
$nbElements += $project->getElementCount('mrp', 'mrp_mo', 'fk_project');
}
- if (!empty($conf->deplacement->enabled)) {
+ if (isModEnabled('deplacement')) {
$nbElements += $project->getElementCount('trip', 'deplacement');
}
- if (!empty($conf->expensereport->enabled)) {
+ if (isModEnabled('expensereport')) {
$nbElements += $project->getElementCount('expensereport', 'expensereport');
}
if (!empty($conf->don->enabled)) {
@@ -183,10 +183,10 @@ function project_prepare_head(Project $project, $moreparam = '')
if (!empty($conf->loan->enabled)) {
$nbElements += $project->getElementCount('loan', 'loan');
}
- if (!empty($conf->tax->enabled)) {
+ if (isModEnabled('tax')) {
$nbElements += $project->getElementCount('chargesociales', 'chargesociales');
}
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$nbElements += $project->getElementCount('project_task', 'projet_task');
}
if (!empty($conf->stock->enabled)) {
@@ -195,7 +195,7 @@ function project_prepare_head(Project $project, $moreparam = '')
if (!empty($conf->salaries->enabled)) {
$nbElements += $project->getElementCount('salaries', 'payment_salary');
}
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$nbElements += $project->getElementCount('variouspayment', 'payment_various');
}
dol_setcache($cachekey, $nbElements, 120); // If setting cache fails, this is not a problem, so we do not test result.
@@ -209,7 +209,7 @@ function project_prepare_head(Project $project, $moreparam = '')
$h++;
}
- if (!empty($conf->eventorganization->enabled) && !empty($project->usage_organize_event)) {
+ if (isModEnabled('eventorganization') && !empty($project->usage_organize_event)) {
$langs->load('eventorganization');
$head[$h][0] = DOL_URL_ROOT . '/eventorganization/conferenceorbooth_list.php?projectid=' . $project->id;
$head[$h][1] = $langs->trans("EventOrganization");
@@ -1314,7 +1314,7 @@ function projectLinesPerDay(&$inc, $parent, $fuser, $lines, &$level, &$projectsr
$restrictBefore = null;
- if (! empty($conf->global->PROJECT_TIMESHEET_PREVENT_AFTER_MONTHS)) {
+ if (!empty($conf->global->PROJECT_TIMESHEET_PREVENT_AFTER_MONTHS)) {
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
$restrictBefore = dol_time_plus_duree(dol_now(), - $conf->global->PROJECT_TIMESHEET_PREVENT_AFTER_MONTHS, 'm');
}
@@ -1398,11 +1398,11 @@ function projectLinesPerDay(&$inc, $parent, $fuser, $lines, &$level, &$projectsr
print '';
// PROJECT fields
- if (! empty($arrayfields['p.fk_opp_status']['checked'])) print_liste_field_titre($arrayfields['p.fk_opp_status']['label'], $_SERVER["PHP_SELF"], 'p.fk_opp_status', "", $param, '', $sortfield, $sortorder, 'center ');
- if (! empty($arrayfields['p.opp_amount']['checked'])) print_liste_field_titre($arrayfields['p.opp_amount']['label'], $_SERVER["PHP_SELF"], 'p.opp_amount', "", $param, '', $sortfield, $sortorder, 'right ');
- if (! empty($arrayfields['p.opp_percent']['checked'])) print_liste_field_titre($arrayfields['p.opp_percent']['label'], $_SERVER["PHP_SELF"], 'p.opp_percent', "", $param, '', $sortfield, $sortorder, 'right ');
- if (! empty($arrayfields['p.budget_amount']['checked'])) print_liste_field_titre($arrayfields['p.budget_amount']['label'], $_SERVER["PHP_SELF"], 'p.budget_amount', "", $param, '', $sortfield, $sortorder, 'right ');
- if (! empty($arrayfields['p.usage_bill_time']['checked'])) print_liste_field_titre($arrayfields['p.usage_bill_time']['label'], $_SERVER["PHP_SELF"], 'p.usage_bill_time', "", $param, '', $sortfield, $sortorder, 'right ');
+ if (!empty($arrayfields['p.fk_opp_status']['checked'])) print_liste_field_titre($arrayfields['p.fk_opp_status']['label'], $_SERVER["PHP_SELF"], 'p.fk_opp_status', "", $param, '', $sortfield, $sortorder, 'center ');
+ if (!empty($arrayfields['p.opp_amount']['checked'])) print_liste_field_titre($arrayfields['p.opp_amount']['label'], $_SERVER["PHP_SELF"], 'p.opp_amount', "", $param, '', $sortfield, $sortorder, 'right ');
+ if (!empty($arrayfields['p.opp_percent']['checked'])) print_liste_field_titre($arrayfields['p.opp_percent']['label'], $_SERVER["PHP_SELF"], 'p.opp_percent', "", $param, '', $sortfield, $sortorder, 'right ');
+ if (!empty($arrayfields['p.budget_amount']['checked'])) print_liste_field_titre($arrayfields['p.budget_amount']['label'], $_SERVER["PHP_SELF"], 'p.budget_amount', "", $param, '', $sortfield, $sortorder, 'right ');
+ if (!empty($arrayfields['p.usage_bill_time']['checked'])) print_liste_field_titre($arrayfields['p.usage_bill_time']['label'], $_SERVER["PHP_SELF"], 'p.usage_bill_time', "", $param, '', $sortfield, $sortorder, 'right ');
$extrafieldsobjectkey='projet';
$extrafieldsobjectprefix='efp.';
@@ -1412,32 +1412,32 @@ function projectLinesPerDay(&$inc, $parent, $fuser, $lines, &$level, &$projectsr
print ' ';
// PROJECT fields
- if (! empty($arrayfields['p.fk_opp_status']['checked']))
+ if (!empty($arrayfields['p.fk_opp_status']['checked']))
{
print '';
$code = dol_getIdFromCode($db, $lines[$i]->fk_opp_status, 'c_lead_status', 'rowid', 'code');
if ($code) print $langs->trans("OppStatus".$code);
print " \n";
}
- if (! empty($arrayfields['p.opp_amount']['checked']))
+ if (!empty($arrayfields['p.opp_amount']['checked']))
{
print '';
print price($lines[$i]->opp_amount, 0, $langs, 1, 0, -1, $conf->currency);
print " \n";
}
- if (! empty($arrayfields['p.opp_percent']['checked']))
+ if (!empty($arrayfields['p.opp_percent']['checked']))
{
print '';
print price($lines[$i]->opp_percent, 0, $langs, 1, 0).' %';
print " \n";
}
- if (! empty($arrayfields['p.budget_amount']['checked']))
+ if (!empty($arrayfields['p.budget_amount']['checked']))
{
print '';
print price($lines[$i]->budget_amount, 0, $langs, 1, 0, 0, $conf->currency);
print " \n";
}
- if (! empty($arrayfields['p.usage_bill_time']['checked']))
+ if (!empty($arrayfields['p.usage_bill_time']['checked']))
{
print '';
print yn($lines[$i]->usage_bill_time);
@@ -1718,7 +1718,7 @@ function projectLinesPerWeek(&$inc, $firstdaytoshow, $fuser, $parent, $lines, &$
$restrictBefore = null;
- if (! empty($conf->global->PROJECT_TIMESHEET_PREVENT_AFTER_MONTHS)) {
+ if (!empty($conf->global->PROJECT_TIMESHEET_PREVENT_AFTER_MONTHS)) {
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
$restrictBefore = dol_time_plus_duree(dol_now(), - $conf->global->PROJECT_TIMESHEET_PREVENT_AFTER_MONTHS, 'm');
}
@@ -1802,11 +1802,11 @@ function projectLinesPerWeek(&$inc, $firstdaytoshow, $fuser, $parent, $lines, &$
print ' ';
// PROJECT fields
- if (! empty($arrayfields['p.fk_opp_status']['checked'])) print_liste_field_titre($arrayfields['p.fk_opp_status']['label'], $_SERVER["PHP_SELF"], 'p.fk_opp_status', "", $param, '', $sortfield, $sortorder, 'center ');
- if (! empty($arrayfields['p.opp_amount']['checked'])) print_liste_field_titre($arrayfields['p.opp_amount']['label'], $_SERVER["PHP_SELF"], 'p.opp_amount', "", $param, '', $sortfield, $sortorder, 'right ');
- if (! empty($arrayfields['p.opp_percent']['checked'])) print_liste_field_titre($arrayfields['p.opp_percent']['label'], $_SERVER["PHP_SELF"], 'p.opp_percent', "", $param, '', $sortfield, $sortorder, 'right ');
- if (! empty($arrayfields['p.budget_amount']['checked'])) print_liste_field_titre($arrayfields['p.budget_amount']['label'], $_SERVER["PHP_SELF"], 'p.budget_amount', "", $param, '', $sortfield, $sortorder, 'right ');
- if (! empty($arrayfields['p.usage_bill_time']['checked'])) print_liste_field_titre($arrayfields['p.usage_bill_time']['label'], $_SERVER["PHP_SELF"], 'p.usage_bill_time', "", $param, '', $sortfield, $sortorder, 'right ');
+ if (!empty($arrayfields['p.fk_opp_status']['checked'])) print_liste_field_titre($arrayfields['p.fk_opp_status']['label'], $_SERVER["PHP_SELF"], 'p.fk_opp_status', "", $param, '', $sortfield, $sortorder, 'center ');
+ if (!empty($arrayfields['p.opp_amount']['checked'])) print_liste_field_titre($arrayfields['p.opp_amount']['label'], $_SERVER["PHP_SELF"], 'p.opp_amount', "", $param, '', $sortfield, $sortorder, 'right ');
+ if (!empty($arrayfields['p.opp_percent']['checked'])) print_liste_field_titre($arrayfields['p.opp_percent']['label'], $_SERVER["PHP_SELF"], 'p.opp_percent', "", $param, '', $sortfield, $sortorder, 'right ');
+ if (!empty($arrayfields['p.budget_amount']['checked'])) print_liste_field_titre($arrayfields['p.budget_amount']['label'], $_SERVER["PHP_SELF"], 'p.budget_amount', "", $param, '', $sortfield, $sortorder, 'right ');
+ if (!empty($arrayfields['p.usage_bill_time']['checked'])) print_liste_field_titre($arrayfields['p.usage_bill_time']['label'], $_SERVER["PHP_SELF"], 'p.usage_bill_time', "", $param, '', $sortfield, $sortorder, 'right ');
$extrafieldsobjectkey='projet';
$extrafieldsobjectprefix='efp.';
@@ -1816,32 +1816,32 @@ function projectLinesPerWeek(&$inc, $firstdaytoshow, $fuser, $parent, $lines, &$
print ' ';
// PROJECT fields
- if (! empty($arrayfields['p.fk_opp_status']['checked']))
+ if (!empty($arrayfields['p.fk_opp_status']['checked']))
{
print '';
$code = dol_getIdFromCode($db, $lines[$i]->fk_opp_status, 'c_lead_status', 'rowid', 'code');
if ($code) print $langs->trans("OppStatus".$code);
print " \n";
}
- if (! empty($arrayfields['p.opp_amount']['checked']))
+ if (!empty($arrayfields['p.opp_amount']['checked']))
{
print '';
print price($lines[$i]->opp_amount, 0, $langs, 1, 0, -1, $conf->currency);
print " \n";
}
- if (! empty($arrayfields['p.opp_percent']['checked']))
+ if (!empty($arrayfields['p.opp_percent']['checked']))
{
print '';
print price($lines[$i]->opp_percent, 0, $langs, 1, 0).' %';
print " \n";
}
- if (! empty($arrayfields['p.budget_amount']['checked']))
+ if (!empty($arrayfields['p.budget_amount']['checked']))
{
print '';
print price($lines[$i]->budget_amount, 0, $langs, 1, 0, 0, $conf->currency);
print " \n";
}
- if (! empty($arrayfields['p.usage_bill_time']['checked']))
+ if (!empty($arrayfields['p.usage_bill_time']['checked']))
{
print '';
print yn($lines[$i]->usage_bill_time);
@@ -2111,7 +2111,7 @@ function projectLinesPerMonth(&$inc, $firstdaytoshow, $fuser, $parent, $lines, &
$restrictBefore = null;
- if (! empty($conf->global->PROJECT_TIMESHEET_PREVENT_AFTER_MONTHS)) {
+ if (!empty($conf->global->PROJECT_TIMESHEET_PREVENT_AFTER_MONTHS)) {
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
$restrictBefore = dol_time_plus_duree(dol_now(), - $conf->global->PROJECT_TIMESHEET_PREVENT_AFTER_MONTHS, 'm');
}
diff --git a/htdocs/core/lib/propal.lib.php b/htdocs/core/lib/propal.lib.php
index c5d2a647a57..71391f2e499 100644
--- a/htdocs/core/lib/propal.lib.php
+++ b/htdocs/core/lib/propal.lib.php
@@ -42,8 +42,8 @@ function propal_prepare_head($object)
$head[$h][2] = 'comm';
$h++;
- if ((empty($conf->commande->enabled) && ((!empty($conf->expedition->enabled) && !empty($conf->expedition_bon->enabled) && $user->rights->expedition->lire)
- || (!empty($conf->expedition->enabled) && !empty($conf->delivery_note->enabled) && $user->rights->expedition->delivery->lire)))) {
+ if ((empty($conf->commande->enabled) && ((isModEnabled("expedition") && !empty($conf->expedition_bon->enabled) && $user->rights->expedition->lire)
+ || (isModEnabled("expedition") && !empty($conf->delivery_note->enabled) && $user->rights->expedition->delivery->lire)))) {
$langs->load("sendings");
$text = '';
$head[$h][0] = DOL_URL_ROOT.'/expedition/propal.php?id='.$object->id;
diff --git a/htdocs/core/lib/security.lib.php b/htdocs/core/lib/security.lib.php
index 13361392396..d0067d7575b 100644
--- a/htdocs/core/lib/security.lib.php
+++ b/htdocs/core/lib/security.lib.php
@@ -91,6 +91,21 @@ function dol_decode($chain, $key = '1')
return $chain;
}
+/**
+ * Return a string of random bytes (hexa string) with length = $length fro cryptographic purposes.
+ *
+ * @param int $length Length of random string
+ * @return string Random string
+ */
+function dolGetRandomBytes($length)
+{
+ if (function_exists('random_bytes')) { // Available with PHP 7 only.
+ return bin2hex(random_bytes((int) floor($length / 2))); // the bin2hex will double the number of bytes so we take length / 2
+ }
+
+ return bin2hex(openssl_random_pseudo_bytes((int) floor($length / 2))); // the bin2hex will double the number of bytes so we take length / 2. May be very slow on Windows.
+}
+
/**
* Encode a string with a symetric encryption. Used to encrypt sensitive data into database.
* Note: If a backup is restored onto another instance with a different $dolibarr_main_instance_unique_id, then decoded value will differ.
@@ -121,11 +136,20 @@ function dolEncrypt($chain, $key = '', $ciphering = "AES-256-CTR")
$newchain = $chain;
- if (!function_exists('openssl_encrypt')) {
- return $chain;
+ if (function_exists('openssl_encrypt')) {
+ $ivlen = 16;
+ if (function_exists('openssl_cipher_iv_length')) {
+ $ivlen = openssl_cipher_iv_length($ciphering);
+ }
+ if ($ivlen === false || $ivlen < 1 || $ivlen > 32) {
+ $ivlen = 16;
+ }
+ $ivseed = dolGetRandomBytes($ivlen);
+
+ $newchain = openssl_encrypt($chain, $ciphering, $key, null, $ivseed);
+ return 'dolcrypt:'.$ciphering.':'.$ivseed.':'.$newchain;
} else {
- $newchain = openssl_encrypt($chain, $ciphering, $key);
- return 'dolcrypt:'.$ciphering.':'.$newchain;
+ return $chain;
}
}
@@ -154,7 +178,12 @@ function dolDecrypt($chain, $key = '')
if (preg_match('/^dolcrypt:([^:]+):(.+)$/', $chain, $reg)) {
$ciphering = $reg[1];
if (function_exists('openssl_decrypt')) {
- $newchain = openssl_decrypt($reg[2], $ciphering, $key);
+ $tmpexplode = explode(':', $reg[2]);
+ if (!empty($tmpexplode[1]) && is_string($tmpexplode[0])) {
+ $newchain = openssl_decrypt($tmpexplode[1], $ciphering, $key, null, $tmpexplode[0]);
+ } else {
+ $newchain = openssl_decrypt($tmpexplode[0], $ciphering, $key, null, null);
+ }
} else {
$newchain = 'Error function openssl_decrypt() not available';
}
@@ -763,11 +792,11 @@ function checkUserAccessToObject($user, array $featuresarray, $object = 0, $tabl
$sharedelement = (!empty($params[1]) ? $params[1] : $dbtablename); // We change dbtablename, so we set sharedelement too.
}
- // Check permission for object on entity only
- if (in_array($feature, $check)) {
+ // Check permission for objectid on entity only
+ if (in_array($feature, $check) && $objectid > 0) { // For $objectid = 0, no check
$sql = "SELECT COUNT(dbt.".$dbt_select.") as nb";
$sql .= " FROM ".MAIN_DB_PREFIX.$dbtablename." as dbt";
- if (($feature == 'user' || $feature == 'usergroup') && !empty($conf->multicompany->enabled)) { // Special for multicompany
+ if (($feature == 'user' || $feature == 'usergroup') && isModEnabled('multicompany')) { // Special for multicompany
if (!empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
if ($conf->entity == 1 && $user->admin && !$user->entity) {
$sql .= " WHERE dbt.".$dbt_select." IN (".$db->sanitize($objectid, 1).")";
@@ -796,13 +825,13 @@ function checkUserAccessToObject($user, array $featuresarray, $object = 0, $tabl
}
$checkonentitydone = 1;
}
- if (in_array($feature, $checksoc)) { // We check feature = checksoc
+ if (in_array($feature, $checksoc) && $objectid > 0) { // We check feature = checksoc. For $objectid = 0, no check
// If external user: Check permission for external users
if ($user->socid > 0) {
if ($user->socid != $objectid) {
return false;
}
- } elseif (!empty($conf->societe->enabled) && ($user->rights->societe->lire && empty($user->rights->societe->client->voir))) {
+ } elseif (isModEnabled("societe") && ($user->rights->societe->lire && empty($user->rights->societe->client->voir))) {
// If internal user: Check permission for internal users that are restricted on their objects
$sql = "SELECT COUNT(sc.fk_soc) as nb";
$sql .= " FROM (".MAIN_DB_PREFIX."societe_commerciaux as sc";
@@ -811,7 +840,7 @@ function checkUserAccessToObject($user, array $featuresarray, $object = 0, $tabl
$sql .= " AND sc.fk_user = ".((int) $user->id);
$sql .= " AND sc.fk_soc = s.rowid";
$sql .= " AND s.entity IN (".getEntity($sharedelement, 1).")";
- } elseif (!empty($conf->multicompany->enabled)) {
+ } elseif (isModEnabled('multicompany')) {
// If multicompany and internal users with all permissions, check user is in correct entity
$sql = "SELECT COUNT(s.rowid) as nb";
$sql .= " FROM ".MAIN_DB_PREFIX."societe as s";
@@ -821,14 +850,14 @@ function checkUserAccessToObject($user, array $featuresarray, $object = 0, $tabl
$checkonentitydone = 1;
}
- if (in_array($feature, $checkother)) { // Test on entity + link to thirdparty. Allowed if link is empty (Ex: contacts...).
+ if (in_array($feature, $checkother) && $objectid > 0) { // Test on entity + link to thirdparty. Allowed if link is empty (Ex: contacts...).
// If external user: Check permission for external users
if ($user->socid > 0) {
$sql = "SELECT COUNT(dbt.".$dbt_select.") as nb";
$sql .= " FROM ".MAIN_DB_PREFIX.$dbtablename." as dbt";
$sql .= " WHERE dbt.".$dbt_select." IN (".$db->sanitize($objectid, 1).")";
$sql .= " AND dbt.fk_soc = ".((int) $user->socid);
- } elseif (!empty($conf->societe->enabled) && ($user->rights->societe->lire && empty($user->rights->societe->client->voir))) {
+ } elseif (isModEnabled("societe") && ($user->rights->societe->lire && empty($user->rights->societe->client->voir))) {
// If internal user: Check permission for internal users that are restricted on their objects
$sql = "SELECT COUNT(dbt.".$dbt_select.") as nb";
$sql .= " FROM ".MAIN_DB_PREFIX.$dbtablename." as dbt";
@@ -836,7 +865,7 @@ function checkUserAccessToObject($user, array $featuresarray, $object = 0, $tabl
$sql .= " WHERE dbt.".$dbt_select." IN (".$db->sanitize($objectid, 1).")";
$sql .= " AND (dbt.fk_soc IS NULL OR sc.fk_soc IS NOT NULL)"; // Contact not linked to a company or to a company of user
$sql .= " AND dbt.entity IN (".getEntity($sharedelement, 1).")";
- } elseif (!empty($conf->multicompany->enabled)) {
+ } elseif (isModEnabled('multicompany')) {
// If multicompany and internal users with all permissions, check user is in correct entity
$sql = "SELECT COUNT(dbt.".$dbt_select.") as nb";
$sql .= " FROM ".MAIN_DB_PREFIX.$dbtablename." as dbt";
@@ -846,8 +875,8 @@ function checkUserAccessToObject($user, array $featuresarray, $object = 0, $tabl
$checkonentitydone = 1;
}
- if (in_array($feature, $checkproject)) {
- if (!empty($conf->project->enabled) && empty($user->rights->projet->all->lire)) {
+ if (in_array($feature, $checkproject) && $objectid > 0) {
+ if (isModEnabled('project') && empty($user->rights->projet->all->lire)) {
$projectid = $objectid;
include_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
@@ -867,8 +896,8 @@ function checkUserAccessToObject($user, array $featuresarray, $object = 0, $tabl
$checkonentitydone = 1;
}
- if (in_array($feature, $checktask)) {
- if (!empty($conf->project->enabled) && empty($user->rights->projet->all->lire)) {
+ if (in_array($feature, $checktask) && $objectid > 0) {
+ if (isModEnabled('project') && empty($user->rights->projet->all->lire)) {
$task = new Task($db);
$task->fetch($objectid);
$projectid = $task->fk_project;
@@ -890,7 +919,7 @@ function checkUserAccessToObject($user, array $featuresarray, $object = 0, $tabl
$checkonentitydone = 1;
}
- if (!$checkonentitydone && !in_array($feature, $nocheck)) { // By default (case of $checkdefault), we check on object entity + link to third party on field $dbt_keyfield
+ if (!$checkonentitydone && !in_array($feature, $nocheck) && $objectid > 0) { // By default (case of $checkdefault), we check on object entity + link to third party on field $dbt_keyfield
// If external user: Check permission for external users
if ($user->socid > 0) {
if (empty($dbt_keyfield)) {
@@ -900,7 +929,7 @@ function checkUserAccessToObject($user, array $featuresarray, $object = 0, $tabl
$sql .= " FROM ".MAIN_DB_PREFIX.$dbtablename." as dbt";
$sql .= " WHERE dbt.rowid IN (".$db->sanitize($objectid, 1).")";
$sql .= " AND dbt.".$dbt_keyfield." = ".((int) $user->socid);
- } elseif (!empty($conf->societe->enabled) && empty($user->rights->societe->client->voir)) {
+ } elseif (isModEnabled("societe") && empty($user->rights->societe->client->voir)) {
// If internal user: Check permission for internal users that are restricted on their objects
if ($feature != 'ticket') {
if (empty($dbt_keyfield)) {
@@ -922,7 +951,7 @@ function checkUserAccessToObject($user, array $featuresarray, $object = 0, $tabl
$sql .= " AND dbt.entity IN (".getEntity($sharedelement, 1).")";
$sql .= " AND (sc.fk_user = ".((int) $user->id)." OR sc.fk_user IS NULL)";
}
- } elseif (!empty($conf->multicompany->enabled)) {
+ } elseif (isModEnabled('multicompany')) {
// If multicompany and internal users with all permissions, check user is in correct entity
$sql = "SELECT COUNT(dbt.".$dbt_select.") as nb";
$sql .= " FROM ".MAIN_DB_PREFIX.$dbtablename." as dbt";
@@ -933,7 +962,7 @@ function checkUserAccessToObject($user, array $featuresarray, $object = 0, $tabl
//print $sql;
// For events, check on users assigned to event
- if ($feature === 'agenda') {
+ if ($feature === 'agenda' && $objectid > 0) {
// Also check owner or attendee for users without allactions->read
if ($objectid > 0 && empty($user->rights->agenda->allactions->read)) {
require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php';
@@ -947,7 +976,7 @@ function checkUserAccessToObject($user, array $featuresarray, $object = 0, $tabl
// For some object, we also have to check it is in the user hierarchy
// Param $object must be the full object and not a simple id to have this test possible.
- if (in_array($feature, $checkhierarchy) && is_object($object)) {
+ if (in_array($feature, $checkhierarchy) && is_object($object) && $objectid > 0) {
$childids = $user->getAllChildIds(1);
$useridtocheck = 0;
if ($feature == 'holiday') {
diff --git a/htdocs/core/lib/security2.lib.php b/htdocs/core/lib/security2.lib.php
index 8f4abca6167..287a151f41c 100644
--- a/htdocs/core/lib/security2.lib.php
+++ b/htdocs/core/lib/security2.lib.php
@@ -159,7 +159,7 @@ if (!function_exists('dol_loginfunction')) {
/*
$conf->css = "/theme/".(GETPOST('theme','aZ09')?GETPOST('theme','aZ09'):$conf->theme)."/style.css.php";
$themepath=dol_buildpath($conf->css,1);
- if (! empty($conf->modules_parts['theme'])) // Using this feature slow down application
+ if (!empty($conf->modules_parts['theme'])) // Using this feature slow down application
{
foreach($conf->modules_parts['theme'] as $reldir)
{
@@ -374,13 +374,16 @@ function encodedecode_dbpassconf($level = 0)
$lineofpass = 0;
+ $reg = array();
if (preg_match('/^[^#]*dolibarr_main_db_encrypted_pass[\s]*=[\s]*(.*)/i', $buffer, $reg)) { // Old way to save crypted value
$val = trim($reg[1]); // This also remove CR/LF
$val = preg_replace('/^["\']/', '', $val);
$val = preg_replace('/["\'][\s;]*$/', '', $val);
if (!empty($val)) {
$passwd_crypted = $val;
+ // method dol_encode/dol_decode
$val = dol_decode($val);
+ //$val = dolEncrypt($val);
$passwd = $val;
$lineofpass = 1;
}
@@ -389,10 +392,17 @@ function encodedecode_dbpassconf($level = 0)
$val = preg_replace('/^["\']/', '', $val);
$val = preg_replace('/["\'][\s;]*$/', '', $val);
if (preg_match('/crypted:/i', $buffer)) {
+ // method dol_encode/dol_decode
$val = preg_replace('/crypted:/i', '', $val);
$passwd_crypted = $val;
$val = dol_decode($val);
$passwd = $val;
+ } elseif (preg_match('/^dolcrypt:([^:]+):(.*)$/i', $buffer, $reg)) {
+ // method dolEncrypt/dolDecrypt
+ $val = preg_replace('/crypted:([^:]+):/i', '', $val);
+ $passwd_crypted = $val;
+ $val = dolDecrypt($buffer);
+ $passwd = $val;
} else {
$passwd = $val;
$val = dol_encode($val);
diff --git a/htdocs/core/lib/sendings.lib.php b/htdocs/core/lib/sendings.lib.php
index 4988be3cefd..df6e3231a0b 100644
--- a/htdocs/core/lib/sendings.lib.php
+++ b/htdocs/core/lib/sendings.lib.php
@@ -280,7 +280,7 @@ function show_list_sending_receive($origin, $origin_id, $filter = '')
print ' '.$langs->trans("Warehouse").' ';
}
/*TODO Add link to expeditiondet_batch
- if (! empty($conf->productbatch->enabled))
+ if (!empty($conf->productbatch->enabled))
{
print '';
print ' ';
@@ -396,7 +396,7 @@ function show_list_sending_receive($origin, $origin_id, $filter = '')
// Batch number managment
/*TODO Add link to expeditiondet_batch
- if (! empty($conf->productbatch->enabled))
+ if (!empty($conf->productbatch->enabled))
{
//var_dump($objp->edrowid);
$lines[$i]->detail_batch
diff --git a/htdocs/core/lib/signature.lib.php b/htdocs/core/lib/signature.lib.php
index 1dbefb5719a..d2f0c64f463 100644
--- a/htdocs/core/lib/signature.lib.php
+++ b/htdocs/core/lib/signature.lib.php
@@ -90,7 +90,7 @@ function getOnlineSignatureUrl($mode, $type, $ref = '', $localorexternal = 1)
if ($mode == 1) {
$out .= "hash('".$securekeyseed."' + '".$type."' + proposal_ref)";
} else {
- $out .= '&securekey='.dol_hash($securekeyseed.$type.$ref.(empty($conf->multicompany->enabled) ? '' : $object->entity), '0');
+ $out .= '&securekey='.dol_hash($securekeyseed.$type.$ref.(!isModEnabled('multicompany') ? '' : $object->entity), '0');
}
/*
if ($mode == 1) {
@@ -119,7 +119,7 @@ function getOnlineSignatureUrl($mode, $type, $ref = '', $localorexternal = 1)
}
// For multicompany
- if (!empty($out) && !empty($conf->multicompany->enabled)) {
+ if (!empty($out) && isModEnabled('multicompany')) {
$out .= "&entity=".$conf->entity; // Check the entity because we may have the same reference in several entities
}
diff --git a/htdocs/core/lib/stock.lib.php b/htdocs/core/lib/stock.lib.php
index c6b1bdefe6c..afad01ebcff 100644
--- a/htdocs/core/lib/stock.lib.php
+++ b/htdocs/core/lib/stock.lib.php
@@ -54,7 +54,7 @@ function stock_prepare_head($object)
*/
/* Disabled because will never be implemented. Table always empty.
- if (! empty($conf->global->STOCK_USE_WAREHOUSE_BY_USER))
+ if (!empty($conf->global->STOCK_USE_WAREHOUSE_BY_USER))
{
// Should not be enabled by defaut because does not work yet correctly because
// personnal stocks are not tagged into table llx_entrepot
diff --git a/htdocs/core/lib/takepos.lib.php b/htdocs/core/lib/takepos.lib.php
index c2468c98169..c7714501d90 100644
--- a/htdocs/core/lib/takepos.lib.php
+++ b/htdocs/core/lib/takepos.lib.php
@@ -1,5 +1,6 @@
+/* Copyright (C) 2009 Laurent Destailleur
+ * Copyright (C) 2022 Alexandre Spangaro
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -53,7 +54,7 @@ function takepos_admin_prepare_head()
$head[$h][2] = 'bar';
$h++;
- $numterminals = max(1, $conf->global->TAKEPOS_NUM_TERMINALS);
+ $numterminals = max(1, getDolGlobalInt('TAKEPOS_NUM_TERMINALS', 1));
for ($i = 1; $i <= $numterminals; $i++) {
$head[$h][0] = DOL_URL_ROOT.'/takepos/admin/terminal.php?terminal='.$i;
$head[$h][1] = getDolGlobalString('TAKEPOS_TERMINAL_NAME_'.$i, $langs->trans("TerminalName", $i));
diff --git a/htdocs/core/lib/ticket.lib.php b/htdocs/core/lib/ticket.lib.php
index ef2f6bcf286..28a443f2034 100644
--- a/htdocs/core/lib/ticket.lib.php
+++ b/htdocs/core/lib/ticket.lib.php
@@ -1,7 +1,7 @@
* Copyright (C) 2016 Christophe Battarel
- * Copyright (C) 2019-2020 Frédéric France
+ * Copyright (C) 2019-2022 Frédéric France
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -206,7 +206,7 @@ function generate_random_id($car = 16)
function llxHeaderTicket($title, $head = "", $disablejs = 0, $disablehead = 0, $arrayofjs = '', $arrayofcss = '')
{
global $user, $conf, $langs, $mysoc;
-
+ $urllogo = "";
top_htmlhead($head, $title, $disablejs, $disablehead, $arrayofjs, $arrayofcss, 0, 1); // Show html headers
print '';
@@ -250,7 +250,7 @@ function llxHeaderTicket($title, $head = "", $disablejs = 0, $disablehead = 0, $
if (!empty($conf->global->TICKET_IMAGE_PUBLIC_INTERFACE)) {
print '';
- print '
';
+ print '
';
print '
';
}
@@ -560,7 +560,7 @@ function show_ticket_messaging($conf, $langs, $db, $filterobj, $objcon = '', $no
// Set $out to sow events
$out = '';
- if (empty($conf->agenda->enabled)) {
+ if (!isModEnabled('agenda')) {
$langs->loadLangs(array("admin", "errors"));
$out = info_admin($langs->trans("WarningModuleXDisabledSoYouMayMissEventHere", $langs->transnoentitiesnoconv("Module2400Name")), 0, 0, 'warning');
}
@@ -697,8 +697,8 @@ function show_ticket_messaging($conf, $langs, $db, $filterobj, $objcon = '', $no
// $out.=' '.$langs->trans('Show').' ';
//}
- if ($user->rights->agenda->allactions->create ||
- (($actionstatic->authorid == $user->id || $actionstatic->userownerid == $user->id) && $user->rights->agenda->myactions->create)) {
+ if (!empty($user->rights->agenda->allactions->create) ||
+ (($actionstatic->authorid == $user->id || $actionstatic->userownerid == $user->id) && !empty($user->rights->agenda->myactions->create))) {
$out .= ' ';
}
diff --git a/htdocs/core/lib/usergroups.lib.php b/htdocs/core/lib/usergroups.lib.php
index 65b512ec18e..962ae897bca 100644
--- a/htdocs/core/lib/usergroups.lib.php
+++ b/htdocs/core/lib/usergroups.lib.php
@@ -142,9 +142,9 @@ function user_prepare_head(User $object)
complete_head_from_modules($conf, $langs, $object, $head, $h, 'user');
if ((!empty($conf->salaries->enabled) && !empty($user->rights->salaries->read))
- || (!empty($conf->hrm->enabled) && !empty($user->rights->hrm->employee->read))
- || (!empty($conf->expensereport->enabled) && !empty($user->rights->expensereport->lire) && ($user->id == $object->id || $user->rights->expensereport->readall))
- || (!empty($conf->holiday->enabled) && !empty($user->rights->holiday->read) && ($user->id == $object->id || $user->rights->holiday->readall))
+ || (isModEnabled('hrm') && !empty($user->rights->hrm->employee->read))
+ || (isModEnabled('expensereport') && !empty($user->rights->expensereport->lire) && ($user->id == $object->id || $user->rights->expensereport->readall))
+ || (isModEnabled('holiday') && !empty($user->rights->holiday->read) && ($user->id == $object->id || $user->rights->holiday->readall))
) {
// Bank
$head[$h][0] = DOL_URL_ROOT.'/user/bank.php?id='.$object->id;
@@ -483,7 +483,7 @@ function showSkins($fuser, $edit = 0, $foruserprofile = false)
print '';
print ''.$langs->trans("TopMenuDisableImages").' ';
print ''.($conf->global->THEME_TOPMENU_DISABLE_IMAGE?$conf->global->THEME_TOPMENU_DISABLE_IMAGE:$langs->trans("Default")).' ';
- print 'conf->THEME_ELDY_TEXTLINK)?" checked":"");
+ print ' conf->THEME_ELDY_TEXTLINK)?" checked":"");
print (empty($dolibarr_main_demo) && $edit)?'':' disabled="disabled"'; // Disabled for demo
print '> '.$langs->trans("UsePersonalValue").' ';
print '';
@@ -565,7 +565,7 @@ function showSkins($fuser, $edit = 0, $foruserprofile = false)
print ' ';
print ''.$langs->trans("TopMenuBackgroundColor").' ';
print ''.($conf->global->THEME_ELDY_TOPMENU_BACK1?$conf->global->THEME_ELDY_TOPMENU_BACK1:$langs->trans("Default")).' ';
- print 'conf->THEME_ELDY_TOPMENU_BACK1)?" checked":"");
+ print ' conf->THEME_ELDY_TOPMENU_BACK1)?" checked":"");
print (empty($dolibarr_main_demo) && $edit)?'':' disabled="disabled"'; // Disabled for demo
print '> '.$langs->trans("UsePersonalValue").' ';
print '';
@@ -608,7 +608,7 @@ function showSkins($fuser, $edit = 0, $foruserprofile = false)
print ' ';
print ''.$langs->trans("TopMenuBackgroundColor").' ';
print ''.($conf->global->THEME_ELDY_TOPMENU_BACK1?$conf->global->THEME_ELDY_TOPMENU_BACK1:$langs->trans("Default")).' ';
- print 'conf->THEME_ELDY_TOPMENU_BACK1)?" checked":"");
+ print ' conf->THEME_ELDY_TOPMENU_BACK1)?" checked":"");
print (empty($dolibarr_main_demo) && $edit)?'':' disabled="disabled"'; // Disabled for demo
print '> '.$langs->trans("UsePersonalValue").' ';
print '';
@@ -652,7 +652,7 @@ function showSkins($fuser, $edit = 0, $foruserprofile = false)
print ' ';
print ''.$langs->trans("TopMenuBackgroundColor").' ';
print ''.($conf->global->THEME_ELDY_TOPMENU_BACK1?$conf->global->THEME_ELDY_VERMENU_BACK1:$langs->trans("Default")).' ';
- print 'conf->THEME_ELDY_TOPMENU_BACK1)?" checked":"");
+ print ' conf->THEME_ELDY_TOPMENU_BACK1)?" checked":"");
print (empty($dolibarr_main_demo) && $edit)?'':' disabled="disabled"'; // Disabled for demo
print '> '.$langs->trans("UsePersonalValue").' ';
print '';
@@ -825,7 +825,7 @@ function showSkins($fuser, $edit = 0, $foruserprofile = false)
print ' ';
print ''.$langs->trans("TopMenuBackgroundColor").' ';
print ''.($conf->global->THEME_ELDY_TOPMENU_BACK1?$conf->global->THEME_ELDY_TEXTLINK:$langs->trans("Default")).' ';
- print ' conf->THEME_ELDY_TEXTLINK)?" checked":"");
+ print ' conf->THEME_ELDY_TEXTLINK)?" checked":"");
print (empty($dolibarr_main_demo) && $edit)?'':' disabled="disabled"'; // Disabled for demo
print '> '.$langs->trans("UsePersonalValue").' ';
print '';
@@ -968,7 +968,7 @@ function showSkins($fuser, $edit = 0, $foruserprofile = false)
print ' ';
print ''.$langs->trans("TopMenuBackgroundColor").' ';
print ''.($conf->global->THEME_ELDY_TOPMENU_BACK1?$conf->global->THEME_ELDY_BTNACTION:$langs->trans("Default")).' ';
- print ' conf->THEME_ELDY_BTNACTION)?" checked":"");
+ print ' conf->THEME_ELDY_BTNACTION)?" checked":"");
print (empty($dolibarr_main_demo) && $edit)?'':' disabled="disabled"'; // Disabled for demo
print '> '.$langs->trans("UsePersonalValue").' ';
print '';
@@ -1014,7 +1014,7 @@ function showSkins($fuser, $edit = 0, $foruserprofile = false)
print ' ';
print ''.$langs->trans("TopMenuBackgroundColor").' ';
print ''.($conf->global->THEME_ELDY_TOPMENU_BACK1?$conf->global->THEME_ELDY_TEXTBTNACTION:$langs->trans("Default")).' ';
- print ' conf->THEME_ELDY_TEXTBTNACTION)?" checked":"");
+ print ' conf->THEME_ELDY_TEXTBTNACTION)?" checked":"");
print (empty($dolibarr_main_demo) && $edit)?'':' disabled="disabled"'; // Disabled for demo
print '> '.$langs->trans("UsePersonalValue").' ';
print '';
diff --git a/htdocs/core/lib/website2.lib.php b/htdocs/core/lib/website2.lib.php
index e5042807b02..6f532e078b3 100644
--- a/htdocs/core/lib/website2.lib.php
+++ b/htdocs/core/lib/website2.lib.php
@@ -309,7 +309,7 @@ function dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl, $filewrapper, $o
$indexcontent .= "// BEGIN PHP File generated to provide an index.php as Home Page or alias redirector - DO NOT MODIFY - It is just a generated wrapper.\n";
$indexcontent .= '$websitekey=basename(__DIR__); if (empty($websitepagefile)) $websitepagefile=__FILE__;'."\n";
$indexcontent .= "if (! defined('USEDOLIBARRSERVER') && ! defined('USEDOLIBARREDITOR')) { require_once './master.inc.php'; } // Load master if not already loaded\n";
- $indexcontent .= 'if (! empty($_GET[\'pageref\']) || ! empty($_GET[\'pagealiasalt\']) || ! empty($_GET[\'pageid\'])) {'."\n";
+ $indexcontent .= 'if (!empty($_GET[\'pageref\']) || !empty($_GET[\'pagealiasalt\']) || !empty($_GET[\'pageid\'])) {'."\n";
$indexcontent .= " require_once DOL_DOCUMENT_ROOT.'/core/lib/website.lib.php';\n";
$indexcontent .= " require_once DOL_DOCUMENT_ROOT.'/core/website.inc.php';\n";
$indexcontent .= ' redirectToContainer($_GET[\'pageref\'], $_GET[\'pagealiasalt\'], $_GET[\'pageid\']);'."\n";
@@ -341,7 +341,7 @@ function dolSaveIndexPage($pathofwebsite, $fileindex, $filetpl, $filewrapper, $o
$indexcontent .= "// BEGIN PHP File generated to provide an index.php as Home Page or alias redirector - DO NOT MODIFY - It is just a generated wrapper.\n";
$indexcontent .= '$websitekey=basename(__DIR__); if (empty($websitepagefile)) $websitepagefile=__FILE__;'."\n";
$indexcontent .= "if (! defined('USEDOLIBARRSERVER') && ! defined('USEDOLIBARREDITOR')) { require_once '".$relpath."/master.inc.php'; } // Load master if not already loaded\n";
- $indexcontent .= 'if (! empty($_GET[\'pageref\']) || ! empty($_GET[\'pagealiasalt\']) || ! empty($_GET[\'pageid\'])) {'."\n";
+ $indexcontent .= 'if (!empty($_GET[\'pageref\']) || !empty($_GET[\'pagealiasalt\']) || !empty($_GET[\'pageid\'])) {'."\n";
$indexcontent .= " require_once DOL_DOCUMENT_ROOT.'/core/lib/website.lib.php';\n";
$indexcontent .= " require_once DOL_DOCUMENT_ROOT.'/core/website.inc.php';\n";
$indexcontent .= ' redirectToContainer($_GET[\'pageref\'], $_GET[\'pagealiasalt\'], $_GET[\'pageid\']);'."\n";
@@ -533,6 +533,27 @@ function dolSaveReadme($file, $content)
return $result;
}
+/**
+ * Save content of a page on disk
+ *
+ * @param string $file Full path of filename to generate
+ * @param string $content Content of file
+ * @return boolean True if OK
+ */
+function dolSaveLicense($file, $content)
+{
+ global $conf, $pathofwebsite;
+
+ dol_syslog("Save LICENSE file into ".$file);
+
+ dol_mkdir($pathofwebsite);
+ $result = file_put_contents($file, $content);
+ if (!empty($conf->global->MAIN_UMASK)) {
+ @chmod($file, octdec($conf->global->MAIN_UMASK));
+ }
+
+ return $result;
+}
/**
* Show list of themes. Show all thumbs of themes/skins
diff --git a/htdocs/core/login/functions_dolibarr.php b/htdocs/core/login/functions_dolibarr.php
index 610072aa35a..c4825998b3a 100644
--- a/htdocs/core/login/functions_dolibarr.php
+++ b/htdocs/core/login/functions_dolibarr.php
@@ -40,7 +40,7 @@ function check_user_password_dolibarr($usertotest, $passwordtotest, $entitytotes
// Force master entity in transversal mode
$entity = $entitytotest;
- if (!empty($conf->multicompany->enabled) && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
+ if (isModEnabled('multicompany') && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
$entity = 1;
}
@@ -134,11 +134,11 @@ function check_user_password_dolibarr($usertotest, $passwordtotest, $entitytotes
}
// We must check entity
- if ($passok && !empty($conf->multicompany->enabled)) { // We must check entity
+ if ($passok && isModEnabled('multicompany')) { // We must check entity
global $mc;
if (!isset($mc)) {
- $conf->multicompany->enabled = false; // Global not available, disable $conf->multicompany->enabled for safety
+ !isModEnabled('multicompany'); // Global not available, disable $conf->multicompany->enabled for safety
} else {
$ret = $mc->checkRight($obj->rowid, $entitytotest);
if ($ret < 0) {
diff --git a/htdocs/core/login/functions_ldap.php b/htdocs/core/login/functions_ldap.php
index 022186b8de1..18800c3a19e 100644
--- a/htdocs/core/login/functions_ldap.php
+++ b/htdocs/core/login/functions_ldap.php
@@ -46,7 +46,7 @@ function check_user_password_ldap($usertotest, $passwordtotest, $entitytotest)
// Force master entity in transversal mode
$entity = $entitytotest;
- if (!empty($conf->multicompany->enabled) && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
+ if (isModEnabled('multicompany') && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
$entity = 1;
}
@@ -228,7 +228,7 @@ function check_user_password_ldap($usertotest, $passwordtotest, $entitytotest)
unset($usertmp);
}
- if (!empty($conf->multicompany->enabled)) { // We must check entity (even if sync is not active)
+ if (isModEnabled('multicompany')) { // We must check entity (even if sync is not active)
global $mc;
$usertmp = new User($db);
diff --git a/htdocs/core/menus/init_menu_auguria.sql b/htdocs/core/menus/init_menu_auguria.sql
index 96625dd1f95..8a9186e49c0 100644
--- a/htdocs/core/menus/init_menu_auguria.sql
+++ b/htdocs/core/menus/init_menu_auguria.sql
@@ -12,7 +12,7 @@ delete from llx_menu where menu_handler=__HANDLER__ and entity=__ENTITY__;
-- Top-Menu
-- old: (module, enabled, rowid, ...)
insert into llx_menu (rowid, module, enabled, menu_handler, type, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ( 1__+MAX_llx_menu__, '', '1', __HANDLER__, 'top', 'home', '', 0, '/index.php?mainmenu=home&leftmenu=', 'Home', -1, '', '', '', 2, 10, __ENTITY__);
-insert into llx_menu (rowid, module, enabled, menu_handler, type, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ( 2__+MAX_llx_menu__, 'societe|fournisseur|supplier_order|supplier_invoice', '($conf->societe->enabled && (empty($conf->global->SOCIETE_DISABLE_PROSPECTS) || empty($conf->global->SOCIETE_DISABLE_CUSTOMERS) || !empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || $conf->supplier_order->enabled || $conf->supplier_invoice->enabled))', __HANDLER__, 'top', 'companies', '', 0, '/societe/index.php?mainmenu=companies&leftmenu=', 'ThirdParties', -1, 'companies', '$user->rights->societe->lire || $user->rights->societe->contact->lire', '', 2, 20, __ENTITY__);
+insert into llx_menu (rowid, module, enabled, menu_handler, type, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ( 2__+MAX_llx_menu__, 'societe|fournisseur|supplier_order|supplier_invoice', '($conf->societe->enabled && (empty($conf->global->SOCIETE_DISABLE_PROSPECTS) || empty($conf->global->SOCIETE_DISABLE_CUSTOMERS) || isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || $conf->supplier_order->enabled || $conf->supplier_invoice->enabled))', __HANDLER__, 'top', 'companies', '', 0, '/societe/index.php?mainmenu=companies&leftmenu=', 'ThirdParties', -1, 'companies', '$user->rights->societe->lire || $user->rights->societe->contact->lire', '', 2, 20, __ENTITY__);
insert into llx_menu (rowid, module, enabled, menu_handler, type, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ( 3__+MAX_llx_menu__, 'product|service', '$conf->product->enabled || $conf->service->enabled', __HANDLER__, 'top', 'products', '', 0, '/product/index.php?mainmenu=products&leftmenu=', 'ProductsPipeServices', -1, 'products', '$user->rights->produit->lire||$user->rights->service->lire', '', 0, 30, __ENTITY__);
insert into llx_menu (rowid, module, enabled, menu_handler, type, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ( 16__+MAX_llx_menu__, 'bom|mrp', '$conf->bom->enabled || $conf->mrp->enabled', __HANDLER__, 'top', 'mrp', '', 0, '/mrp/index.php?mainmenu=mrp&leftmenu=', 'MRP', -1, 'mrp', '$user->rights->bom->read||$user->rights->mrp->read', '', 0, 31, __ENTITY__);
insert into llx_menu (rowid, module, enabled, menu_handler, type, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ( 7__+MAX_llx_menu__, 'projet', '$conf->project->enabled', __HANDLER__, 'top', 'project', '', 0, '/projet/index.php?mainmenu=project&leftmenu=', 'Projects', -1, 'projects', '$user->rights->projet->lire', '', 2, 32, __ENTITY__);
@@ -86,8 +86,8 @@ insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, left
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled', __HANDLER__, 'left', 500__+MAX_llx_menu__, 'companies', 'thirdparties', 2__+MAX_llx_menu__, '/societe/index.php?mainmenu=companies&leftmenu=thirdparties', 'ThirdParty', 0, 'companies', '$user->rights->societe->lire', '', 2, 0, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled', __HANDLER__, 'left', 501__+MAX_llx_menu__, 'companies', '', 500__+MAX_llx_menu__, '/societe/card.php?mainmenu=companies&action=create', 'MenuNewThirdParty', 1, 'companies', '$user->rights->societe->creer', '', 2, 0, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled', __HANDLER__, 'left', 502__+MAX_llx_menu__, 'companies', '', 500__+MAX_llx_menu__, '/societe/list.php?mainmenu=companies&leftmenu=thirdparties', 'List', 1, 'companies', '$user->rights->societe->lire', '', 2, 0, __ENTITY__);
-insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled && (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled))', __HANDLER__, 'left', 503__+MAX_llx_menu__, 'companies', '', 500__+MAX_llx_menu__, '/societe/list.php?mainmenu=companies&type=f&leftmenu=suppliers', 'ListSuppliersShort', 1, 'suppliers', '$user->rights->societe->lire && $user->rights->fournisseur->lire', '', 2, 5, __ENTITY__);
-insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled && (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled))', __HANDLER__, 'left', 504__+MAX_llx_menu__, 'companies', '', 503__+MAX_llx_menu__, '/societe/card.php?mainmenu=companies&leftmenu=supplier&action=create&type=f', 'NewSupplier', 2, 'suppliers', '$user->rights->societe->creer', '', 2, 0, __ENTITY__);
+insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled && (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice"))', __HANDLER__, 'left', 503__+MAX_llx_menu__, 'companies', '', 500__+MAX_llx_menu__, '/societe/list.php?mainmenu=companies&type=f&leftmenu=suppliers', 'ListSuppliersShort', 1, 'suppliers', '$user->rights->societe->lire && $user->rights->fournisseur->lire', '', 2, 5, __ENTITY__);
+insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled && (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice"))', __HANDLER__, 'left', 504__+MAX_llx_menu__, 'companies', '', 503__+MAX_llx_menu__, '/societe/card.php?mainmenu=companies&leftmenu=supplier&action=create&type=f', 'NewSupplier', 2, 'suppliers', '$user->rights->societe->creer', '', 2, 0, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled', __HANDLER__, 'left', 506__+MAX_llx_menu__, 'companies', '', 500__+MAX_llx_menu__, '/societe/list.php?mainmenu=companies&type=p&leftmenu=prospects', 'ListProspectsShort', 1, 'companies', '$user->rights->societe->lire', '', 2, 3, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled', __HANDLER__, 'left', 507__+MAX_llx_menu__, 'companies', '', 506__+MAX_llx_menu__, '/societe/card.php?mainmenu=companies&leftmenu=prospects&action=create&type=p', 'MenuNewProspect', 2, 'companies', '$user->rights->societe->creer', '', 2, 0, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled', __HANDLER__, 'left', 509__+MAX_llx_menu__, 'companies', '', 500__+MAX_llx_menu__, '/societe/list.php?mainmenu=companies&type=c&leftmenu=customers', 'ListCustomersShort', 1, 'companies', '$user->rights->societe->lire', '', 2, 4, __ENTITY__);
@@ -99,7 +99,7 @@ insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, left
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled', __HANDLER__, 'left', 602__+MAX_llx_menu__, 'companies', '', 600__+MAX_llx_menu__, '/contact/list.php?mainmenu=companies&leftmenu=contacts', 'List', 1, 'companies', '$user->rights->societe->lire', '', 2, 1, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled', __HANDLER__, 'left', 604__+MAX_llx_menu__, 'companies', '', 602__+MAX_llx_menu__, '/contact/list.php?mainmenu=companies&leftmenu=contacts&type=p', 'ThirdPartyProspects', 2, 'companies', '$user->rights->societe->contact->lire', '', 2, 1, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled', __HANDLER__, 'left', 605__+MAX_llx_menu__, 'companies', '', 602__+MAX_llx_menu__, '/contact/list.php?mainmenu=companies&leftmenu=contacts&type=c', 'ThirdPartyCustomers', 2, 'companies', '$user->rights->societe->contact->lire', '', 2, 2, __ENTITY__);
-insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled && (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled))', __HANDLER__, 'left', 606__+MAX_llx_menu__, 'companies', '', 602__+MAX_llx_menu__, '/contact/list.php?mainmenu=companies&leftmenu=contacts&type=f', 'ThirdPartySuppliers', 2, 'companies', '$user->rights->societe->contact->lire', '', 2, 3, __ENTITY__);
+insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled && (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice"))', __HANDLER__, 'left', 606__+MAX_llx_menu__, 'companies', '', 602__+MAX_llx_menu__, '/contact/list.php?mainmenu=companies&leftmenu=contacts&type=f', 'ThirdPartySuppliers', 2, 'companies', '$user->rights->societe->contact->lire', '', 2, 3, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled', __HANDLER__, 'left', 607__+MAX_llx_menu__, 'companies', '', 602__+MAX_llx_menu__, '/contact/list.php?mainmenu=companies&leftmenu=contacts&type=o', 'Others', 2, 'companies', '$user->rights->societe->contact->lire', '', 2, 4, __ENTITY__);
-- Third parties - Category customer
@@ -107,8 +107,8 @@ insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, left
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled && $conf->categorie->enabled', __HANDLER__, 'left', 651__+MAX_llx_menu__, 'companies', '', 650__+MAX_llx_menu__, '/categories/card.php?mainmenu=companies&action=create&type=1', 'NewCategory', 1, 'categories', '$user->rights->categorie->creer', '', 2, 0, __ENTITY__);
-- Third parties - Category supplier
-insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '(!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && $conf->categorie->enabled', __HANDLER__, 'left', 660__+MAX_llx_menu__, 'companies', 'cat', 2__+MAX_llx_menu__, '/categories/index.php?mainmenu=companies&leftmenu=cat&type=2', 'CustomersProspectsCategoriesShort', 0, 'categories', '$user->rights->categorie->lire', '', 2, 4, __ENTITY__);
-insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '(!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && $conf->categorie->enabled', __HANDLER__, 'left', 661__+MAX_llx_menu__, 'companies', '', 660__+MAX_llx_menu__, '/categories/card.php?mainmenu=companies&action=create&type=2', 'NewCategory', 1, 'categories', '$user->rights->categorie->creer', '', 2, 0, __ENTITY__);
+insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '(isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) && $conf->categorie->enabled', __HANDLER__, 'left', 660__+MAX_llx_menu__, 'companies', 'cat', 2__+MAX_llx_menu__, '/categories/index.php?mainmenu=companies&leftmenu=cat&type=2', 'CustomersProspectsCategoriesShort', 0, 'categories', '$user->rights->categorie->lire', '', 2, 4, __ENTITY__);
+insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '(isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) && $conf->categorie->enabled', __HANDLER__, 'left', 661__+MAX_llx_menu__, 'companies', '', 660__+MAX_llx_menu__, '/categories/card.php?mainmenu=companies&action=create&type=2', 'NewCategory', 1, 'categories', '$user->rights->categorie->creer', '', 2, 0, __ENTITY__);
-- Third parties - Category contact
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->societe->enabled && $conf->categorie->enabled', __HANDLER__, 'left', 670__+MAX_llx_menu__, 'companies', 'cat', 2__+MAX_llx_menu__, '/categories/index.php?mainmenu=companies&leftmenu=cat&type=4', 'ContactCategoriesShort', 0, 'categories', '$user->rights->categorie->lire', '', 2, 3, __ENTITY__);
@@ -119,7 +119,7 @@ insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, left
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->product->enabled', __HANDLER__, 'left', 2801__+MAX_llx_menu__, 'products', '', 2800__+MAX_llx_menu__, '/product/card.php?mainmenu=products&leftmenu=product&action=create&type=0', 'NewProduct', 1, 'products', '$user->rights->produit->creer', '', 2, 0, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->product->enabled', __HANDLER__, 'left', 2802__+MAX_llx_menu__, 'products', '', 2800__+MAX_llx_menu__, '/product/list.php?mainmenu=products&leftmenu=product&type=0', 'List', 1, 'products', '$user->rights->produit->lire', '', 2, 1, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->product->enabled', __HANDLER__, 'left', 2803__+MAX_llx_menu__, 'products', '', 2800__+MAX_llx_menu__, '/product/reassort.php?mainmenu=products&type=0', 'MenuStocks', 1, 'products', '$user->rights->produit->lire && $user->rights->stock->lire', '', 2, 4, __ENTITY__);
-insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->productbatch->enabled', __HANDLER__, 'left', 2805__+MAX_llx_menu__, 'products', '', 2800__+MAX_llx_menu__, '/product/reassortlot.php?mainmenu=products&type=0', 'StocksByLotSerial', 1, 'products', '$user->rights->produit->lire && $user->rights->stock->lire', '', 2, 5, __ENTITY__);
+insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->productbatch->enabled', __HANDLER__, 'left', 2805__+MAX_llx_menu__, 'products', '', 2800__+MAX_llx_menu__, '/product/reassortlot.php?mainmenu=products&type=0&search_subjecttolotserial=1', 'StocksByLotSerial', 1, 'products', '$user->rights->produit->lire && $user->rights->stock->lire', '', 2, 5, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->productbatch->enabled', __HANDLER__, 'left', 2806__+MAX_llx_menu__, 'products', '', 2800__+MAX_llx_menu__, '/product/stock/productlot_list.php?mainmenu=products', 'LotSerial', 1, 'products', '$user->rights->produit->lire && $user->rights->stock->lire', '', 2, 6, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->variants->enabled', __HANDLER__, 'left', 2807__+MAX_llx_menu__, 'products', '', 2800__+MAX_llx_menu__, '/variants/list.php?mainmenu=products', 'VariantAttributes', 1, 'products', '$user->rights->produit->lire', '', 2, 7, __ENTITY__);
@@ -257,7 +257,7 @@ insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, left
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->tax->enabled && $leftmenu=="tax_social"', __HANDLER__, 'left', 2251__+MAX_llx_menu__, 'billing', '', 2250__+MAX_llx_menu__, '/compta/sociales/card.php?mainmenu=billing&leftmenu=tax_social&action=create', 'MenuNewSocialContribution', 2, '', '$user->rights->tax->charges->creer', '', 0, 2, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->tax->enabled && $leftmenu=="tax_social"', __HANDLER__, 'left', 2252__+MAX_llx_menu__, 'billing', '', 2250__+MAX_llx_menu__, '/compta/sociales/payments.php?mainmenu=billing&leftmenu=tax_social', 'Payments', 2, '', '$user->rights->tax->charges->lire', '', 0, 3, __ENTITY__);
--- VAT/TVA/IVA
+-- VAT/TVA/IVA
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS)', __HANDLER__, 'left', 2300__+MAX_llx_menu__, 'billing', 'tax_vat', 2200__+MAX_llx_menu__, '/compta/tva/list.php?mainmenu=billing&leftmenu=tax_vat', 'VAT', 1, 'companies', '$user->rights->tax->charges->lire', '', 0, 7, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS) && $leftmenu=="tax_vat"', __HANDLER__, 'left', 2301__+MAX_llx_menu__, 'billing', '', 2300__+MAX_llx_menu__, '/compta/tva/card.php?mainmenu=billing&leftmenu=tax_vat&action=create', 'New', 2, 'companies', '$user->rights->tax->charges->creer', '', 0, 0, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->tax->enabled && empty($conf->global->TAX_DISABLE_VAT_MENUS) && $leftmenu=="tax_vat"', __HANDLER__, 'left', 2302__+MAX_llx_menu__, 'billing', '', 2300__+MAX_llx_menu__, '/compta/tva/list.php?mainmenu=billing&leftmenu=tax_vat', 'List', 2, 'companies', '$user->rights->tax->charges->lire', '', 0, 1, __ENTITY__);
@@ -313,9 +313,9 @@ insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, left
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $conf->facture->enabled && empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_SALES)', __HANDLER__, 'left', 2401__+MAX_llx_menu__, 'accountancy', 'accountancy_dispatch_customer', 2400__+MAX_llx_menu__, '/accountancy/customer/index.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_customer', 'CustomersVentilation', 1, 'accountancy', '$user->rights->accounting->bind->write', '', 0, 2, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $conf->facture->enabled && empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_SALES) && $leftmenu=="accountancy_dispatch_customer"', __HANDLER__, 'left', 2402__+MAX_llx_menu__, 'accountancy', '', 2401__+MAX_llx_menu__, '/accountancy/customer/list.php?mainmenu=accountancy', 'ToDispatch', 2, 'accountancy', '$user->rights->accounting->bind->write', '', 0, 3, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $conf->facture->enabled && empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_SALES) && $leftmenu=="accountancy_dispatch_customer"', __HANDLER__, 'left', 2403__+MAX_llx_menu__, 'accountancy', '', 2401__+MAX_llx_menu__, '/accountancy/customer/lines.php?mainmenu=accountancy', 'Dispatched', 2, 'accountancy', '$user->rights->accounting->bind->write', '', 0, 4, __ENTITY__);
-insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_invoice->enabled)) && empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_PURCHASES)', __HANDLER__, 'left', 2410__+MAX_llx_menu__, 'accountancy', 'accountancy_dispatch_supplier', 2400__+MAX_llx_menu__, '/accountancy/supplier/index.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_supplier', 'SuppliersVentilation', 1, 'accountancy', '$user->rights->accounting->bind->write', '', 0, 5, __ENTITY__);
-insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_invoice->enabled)) && empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_PURCHASES) && $leftmenu=="accountancy_dispatch_supplier"', __HANDLER__, 'left', 2411__+MAX_llx_menu__, 'accountancy', '', 2410__+MAX_llx_menu__, '/accountancy/supplier/list.php?mainmenu=accountancy', 'ToDispatch', 2, 'accountancy', '$user->rights->accounting->bind->write', '', 0, 6, __ENTITY__);
-insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_invoice->enabled)) && empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_PURCHASES) && $leftmenu=="accountancy_dispatch_supplier"', __HANDLER__, 'left', 2412__+MAX_llx_menu__, 'accountancy', '', 2410__+MAX_llx_menu__, '/accountancy/supplier/lines.php?mainmenu=accountancy', 'Dispatched', 2, 'accountancy', '$user->rights->accounting->bind->write', '', 0, 7, __ENTITY__);
+insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_invoice")) && empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_PURCHASES)', __HANDLER__, 'left', 2410__+MAX_llx_menu__, 'accountancy', 'accountancy_dispatch_supplier', 2400__+MAX_llx_menu__, '/accountancy/supplier/index.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_supplier', 'SuppliersVentilation', 1, 'accountancy', '$user->rights->accounting->bind->write', '', 0, 5, __ENTITY__);
+insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_invoice")) && empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_PURCHASES) && $leftmenu=="accountancy_dispatch_supplier"', __HANDLER__, 'left', 2411__+MAX_llx_menu__, 'accountancy', '', 2410__+MAX_llx_menu__, '/accountancy/supplier/list.php?mainmenu=accountancy', 'ToDispatch', 2, 'accountancy', '$user->rights->accounting->bind->write', '', 0, 6, __ENTITY__);
+insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_invoice")) && empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_PURCHASES) && $leftmenu=="accountancy_dispatch_supplier"', __HANDLER__, 'left', 2412__+MAX_llx_menu__, 'accountancy', '', 2410__+MAX_llx_menu__, '/accountancy/supplier/lines.php?mainmenu=accountancy', 'Dispatched', 2, 'accountancy', '$user->rights->accounting->bind->write', '', 0, 7, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $conf->expensereport->enabled && empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_EXPENSEREPORTS)', __HANDLER__, 'left', 2420__+MAX_llx_menu__, 'accountancy', 'accountancy_dispatch_expensereport', 2400__+MAX_llx_menu__, '/accountancy/expensereport/index.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_expensereport', 'ExpenseReportsVentilation', 1, 'accountancy', '$user->rights->accounting->bind->write', '', 0, 5, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $conf->expensereport->enabled && empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_EXPENSEREPORTS) && $leftmenu=="accountancy_dispatch_expensereport"', __HANDLER__, 'left', 2421__+MAX_llx_menu__, 'accountancy', '', 2420__+MAX_llx_menu__, '/accountancy/expensereport/list.php?mainmenu=accountancy', 'ToDispatch', 2, 'accountancy', '$user->rights->accounting->bind->write', '', 0, 6, __ENTITY__);
insert into llx_menu (module, enabled, menu_handler, type, rowid, mainmenu, leftmenu, fk_menu, url, titre, level, langs, perms, target, usertype, position, entity) values ('', '$conf->accounting->enabled && $conf->expensereport->enabled && empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_EXPENSEREPORTS) && $leftmenu=="accountancy_dispatch_expensereport"', __HANDLER__, 'left', 2422__+MAX_llx_menu__, 'accountancy', '', 2420__+MAX_llx_menu__, '/accountancy/expensereport/lines.php?mainmenu=accountancy', 'Dispatched', 2, 'accountancy', '$user->rights->accounting->bind->write', '', 0, 7, __ENTITY__);
diff --git a/htdocs/core/menus/standard/auguria.lib.php b/htdocs/core/menus/standard/auguria.lib.php
index 71f399497c7..037d1fee8c2 100644
--- a/htdocs/core/menus/standard/auguria.lib.php
+++ b/htdocs/core/menus/standard/auguria.lib.php
@@ -148,7 +148,7 @@ function print_auguria_menu($db, $atarget, $type_user, &$tabMenu, &$menu, $noout
if (!empty($mysoc->logo_squarred_mini) && is_readable($conf->mycompany->dir_output.'/logos/thumbs/'.$mysoc->logo_squarred_mini)) {
$urllogo = DOL_URL_ROOT.'/viewimage.php?cache=1&modulepart=mycompany&file='.urlencode('logos/thumbs/'.$mysoc->logo_squarred_mini);
- /*} elseif (! empty($mysoc->logo_mini) && is_readable($conf->mycompany->dir_output.'/logos/thumbs/'.$mysoc->logo_mini))
+ /*} elseif (!empty($mysoc->logo_mini) && is_readable($conf->mycompany->dir_output.'/logos/thumbs/'.$mysoc->logo_mini))
{
$urllogo=DOL_URL_ROOT.'/viewimage.php?cache=1&modulepart=mycompany&file='.urlencode('logos/thumbs/'.$mysoc->logo_mini);
}*/
diff --git a/htdocs/core/menus/standard/eldy.lib.php b/htdocs/core/menus/standard/eldy.lib.php
index 4707657d3e3..a1b505da46a 100644
--- a/htdocs/core/menus/standard/eldy.lib.php
+++ b/htdocs/core/menus/standard/eldy.lib.php
@@ -95,8 +95,8 @@ function print_eldy_menu($db, $atarget, $type_user, &$tabMenu, &$menu, $noout =
// Members
$tmpentry = array(
- 'enabled' => (isModEnabled('adherent')),
- 'perms' => (!empty($user->rights->adherent->lire)),
+ 'enabled' => isModEnabled('adherent'),
+ 'perms' => $user->hasRight('adherent', 'lire'),
'module' => 'adherent'
);
$menu_arr[] = array(
@@ -125,7 +125,7 @@ function print_eldy_menu($db, $atarget, $type_user, &$tabMenu, &$menu, $noout =
)
|| ((isModEnabled('fournisseur') && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled('supplier_order') || isModEnabled('supplier_invoice'))
),
- 'perms'=> (!empty($user->rights->societe->lire) || !empty($user->rights->fournisseur->lire) || !empty($user->rights->supplier_order->lire) || !empty($user->rights->supplier_invoice->lire) || !empty($user->rights->supplier_proposal->lire)),
+ 'perms'=> ($user->hasRight('societe', 'lire') || $user->hasRight('fournisseur', 'lire') || $user->hasRight('supplier_order', 'lire') || $user->hasRight('supplier_invoice', 'lire') || $user->hasRight('supplier_proposal', 'lire')),
'module'=>'societe|fournisseur'
);
$menu_arr[] = array(
@@ -150,7 +150,7 @@ function print_eldy_menu($db, $atarget, $type_user, &$tabMenu, &$menu, $noout =
// Products-Services
$tmpentry = array(
'enabled'=> (isModEnabled('product') || isModEnabled('service') || isModEnabled('expedition')),
- 'perms'=> (!empty($user->rights->produit->lire) || !empty($user->rights->service->lire) || !empty($user->rights->expedition->lire)),
+ 'perms'=> ($user->hasRight('produit', 'lire') || $user->hasRight('service', 'lire') || $user->hasRight('expedition', 'lire')),
'module'=>'product|service'
);
$menu_arr[] = array(
@@ -177,7 +177,7 @@ function print_eldy_menu($db, $atarget, $type_user, &$tabMenu, &$menu, $noout =
// MRP - GPAO
$tmpentry = array(
'enabled'=>(isModEnabled('bom') || isModEnabled('mrp')),
- 'perms'=>(!empty($user->rights->bom->read) || !empty($user->rights->mrp->read)),
+ 'perms'=>($user->hasRight('bom', 'read') || $user->hasRight('mrp', 'read')),
'module'=>'bom|mrp'
);
$menu_arr[] = array(
@@ -202,13 +202,13 @@ function print_eldy_menu($db, $atarget, $type_user, &$tabMenu, &$menu, $noout =
// Projects
$tmpentry = array(
'enabled'=> (isModEnabled('projet') ? 1 : 0),
- 'perms'=> (!empty($user->rights->projet->lire) ? 1 : 0),
+ 'perms'=> ($user->hasRight('projet', 'lire') ? 1 : 0),
'module'=>'projet'
);
$menu_arr[] = array(
'name' => 'Projet',
'link' => '/projet/index.php?mainmenu=project&leftmenu=',
- 'title' => (! empty($conf->global->PROJECT_USE_OPPORTUNITIES) && $conf->global->PROJECT_USE_OPPORTUNITIES == 2 ? "Leads" : "Projects"),
+ 'title' => (!empty($conf->global->PROJECT_USE_OPPORTUNITIES) && $conf->global->PROJECT_USE_OPPORTUNITIES == 2 ? "Leads" : "Projects"),
'level' => 0,
'enabled' => $showmode = isVisibleToUserType($type_user, $tmpentry, $listofmodulesforexternal),
'target' => $atarget,
@@ -234,25 +234,25 @@ function print_eldy_menu($db, $atarget, $type_user, &$tabMenu, &$menu, $noout =
|| isModEnabled('contrat')
|| isModEnabled('ficheinter')
) ? 1 : 0,
- 'perms'=>(!empty($user->rights->propal->lire)
- || !empty($user->rights->commande->lire)
- || !empty($user->rights->supplier_proposal->lire)
- || !empty($user->rights->fournisseur->lire)
- || !empty($user->rights->fournisseur->commande->lire)
- || !empty($user->rights->supplier_order->lire)
- || !empty($user->rights->contrat->lire)
- || !empty($user->rights->ficheinter->lire)
+ 'perms'=>($user->hasRight('propal', 'read')
+ || $user->hasRight('commande', 'lire')
+ || $user->hasRight('supplier_proposal', 'lire')
+ || $user->hasRight('fournisseur', 'lire')
+ || $user->hasRight('fournisseur', 'commande', 'lire')
+ || $user->hasRight('supplier_order', 'lire')
+ || $user->hasRight('contrat', 'lire')
+ || $user->hasRight('ficheinter', 'lire')
),
'module'=>'propal|commande|supplier_proposal|supplier_order|contrat|ficheinter'
);
- $onlysupplierorder = !empty($user->rights->fournisseur->commande->lire) &&
- empty($user->rights->propal->lire) &&
- empty($user->rights->commande->lire) &&
- empty($user->rights->supplier_order->lire) &&
- empty($user->rights->supplier_proposal->lire) &&
- empty($user->rights->contrat->lire) &&
- empty($user->rights->ficheinter->lire);
+ $onlysupplierorder = $user->hasRight('fournisseur', 'commande', 'lire') &&
+ !$user->hasRight('propal', 'lire') &&
+ !$user->hasRight('commande', 'lire') &&
+ !$user->hasRight('supplier_order', 'lire') &&
+ !$user->hasRight('supplier_proposal', 'lire') &&
+ !$user->hasRight('contrat', 'lire') &&
+ !$user->hasRight('ficheinter', 'lire');
$menu_arr[] = array(
'name' => 'Commercial',
@@ -283,9 +283,9 @@ function print_eldy_menu($db, $atarget, $type_user, &$tabMenu, &$menu, $noout =
isModEnabled('loan') ||
isModEnabled('margins')
) ? 1 : 0,
- 'perms'=>(!empty($user->rights->facture->lire) || !empty($user->rights->don->contact->lire)
- || !empty($user->rights->tax->charges->lire) || !empty($user->rights->salaries->read)
- || !empty($user->rights->fournisseur->facture->lire) || !empty($user->rights->loan->read) || !empty($user->rights->margins->liretous)),
+ 'perms'=>($user->hasRight('facture', 'lire') || $user->hasRight('don', 'contact', 'lire')
+ || $user->hasRight('tax', 'charges', 'lire') || $user->hasRight('salaries', 'read')
+ || $user->hasRight('fournisseur', 'facture', 'lire') || $user->hasRight('loan', 'read') || $user->hasRight('margins', 'liretous')),
'module'=>'facture|supplier_invoice|don|tax|salaries|loan'
);
$menu_arr[] = array(
@@ -310,7 +310,7 @@ function print_eldy_menu($db, $atarget, $type_user, &$tabMenu, &$menu, $noout =
// Bank
$tmpentry = array(
'enabled'=>(isModEnabled('banque') || isModEnabled('prelevement')),
- 'perms'=>(!empty($user->rights->banque->lire) || !empty($user->rights->prelevement->lire) || !empty($user->rights->paymentbybanktransfer->read)),
+ 'perms'=>($user->hasRight('banque', 'lire') || $user->hasRight('prelevement', 'lire') || $user->hasRight('paymentbybanktransfer', 'read')),
'module'=>'banque|prelevement|paymentbybanktransfer'
);
$menu_arr[] = array(
@@ -335,7 +335,7 @@ function print_eldy_menu($db, $atarget, $type_user, &$tabMenu, &$menu, $noout =
// Accounting
$tmpentry = array(
'enabled'=>(isModEnabled('comptabilite') || isModEnabled('accounting') || isModEnabled('asset') || isModEnabled('intracommreport')),
- 'perms'=>(!empty($user->rights->compta->resultat->lire) || !empty($user->rights->accounting->comptarapport->lire) || !empty($user->rights->accounting->mouvements->lire) || !empty($user->rights->asset->read) || !empty($user->rights->intracommreport->read)),
+ 'perms'=>($user->hasRight('compta', 'resultat', 'lire') || $user->hasRight('accounting', 'comptarapport', 'lire') || $user->hasRight('accounting', 'mouvements', 'lire') || $user->hasRight('asset', 'read') || $user->hasRight('intracommreport', 'read')),
'module'=>'comptabilite|accounting|asset|intracommreport'
);
$menu_arr[] = array(
@@ -360,7 +360,7 @@ function print_eldy_menu($db, $atarget, $type_user, &$tabMenu, &$menu, $noout =
// HRM
$tmpentry = array(
'enabled'=>(isModEnabled('hrm') || (isModEnabled('holiday')) || isModEnabled('deplacement') || isModEnabled('expensereport') || isModEnabled('recruitment')),
- 'perms'=>(!empty($user->rights->user->user->lire) || !empty($user->rights->holiday->read) || !empty($user->rights->deplacement->lire) || !empty($user->rights->expensereport->lire) || !empty($user->rights->recruitment->recruitmentjobposition->read)),
+ 'perms'=>($user->hasRight('user', 'user', 'lire') || $user->hasRight('holiday', 'read') || $user->hasRight('deplacement', 'lire') || $user->hasRight('expensereport', 'lire') || $user->hasRight('recruitment', 'recruitmentjobposition', 'read')),
'module'=>'hrm|holiday|deplacement|expensereport|recruitment'
);
@@ -386,7 +386,7 @@ function print_eldy_menu($db, $atarget, $type_user, &$tabMenu, &$menu, $noout =
// Tickets and knowledge base
$tmpentry = array(
'enabled'=>(isModEnabled('ticket') || isModEnabled('knowledgemanagement')),
- 'perms'=>(!empty($user->rights->ticket->read) || !empty($user->rights->knowledgemanagement->knowledgerecord->read)),
+ 'perms'=>($user->hasRight('ticket', 'read') || $user->hasRight('knowledgemanagement', 'knowledgerecord', 'read')),
'module'=>'ticket|knowledgemanagement'
);
$link = '';
@@ -544,7 +544,7 @@ function print_eldy_menu($db, $atarget, $type_user, &$tabMenu, &$menu, $noout =
if (!empty($mysoc->logo_squarred_mini) && is_readable($conf->mycompany->dir_output.'/logos/thumbs/'.$mysoc->logo_squarred_mini)) {
$urllogo = DOL_URL_ROOT.'/viewimage.php?cache=1&modulepart=mycompany&file='.urlencode('logos/thumbs/'.$mysoc->logo_squarred_mini);
- /*} elseif (! empty($mysoc->logo_mini) && is_readable($conf->mycompany->dir_output.'/logos/thumbs/'.$mysoc->logo_mini))
+ /*} elseif (!empty($mysoc->logo_mini) && is_readable($conf->mycompany->dir_output.'/logos/thumbs/'.$mysoc->logo_mini))
{
$urllogo=DOL_URL_ROOT.'/viewimage.php?cache=1&modulepart=mycompany&file='.urlencode('logos/thumbs/'.$mysoc->logo_mini);
}*/
@@ -1150,20 +1150,20 @@ function get_left_menu_home($mainmenu, &$newmenu, $usemenuhider = 1, $leftmenu =
}
}
- $newmenu->add("/user/home.php?leftmenu=users", $langs->trans("MenuUsersAndGroups"), 0, $user->rights->user->user->lire, '', $mainmenu, 'users', 0, '', '', '', img_picto('', 'user', 'class="paddingright pictofixedwidth"'));
- if ($user->rights->user->user->lire) {
+ $newmenu->add("/user/home.php?leftmenu=users", $langs->trans("MenuUsersAndGroups"), 0, $user->hasRight('user', 'user', 'read'), '', $mainmenu, 'users', 0, '', '', '', img_picto('', 'user', 'class="paddingright pictofixedwidth"'));
+ if ($user->hasRight('user', 'user', 'read')) {
if ($usemenuhider || empty($leftmenu) || $leftmenu == "users") {
- $newmenu->add("", $langs->trans("Users"), 1, $user->rights->user->user->lire || $user->admin);
+ $newmenu->add("", $langs->trans("Users"), 1, $user->hasRight('user', 'user', 'lire') || $user->admin);
$newmenu->add("/user/card.php?leftmenu=users&action=create", $langs->trans("NewUser"), 2, ($user->hasRight("user", "user", "write") || $user->admin) && !(isModEnabled('multicompany') && $conf->entity > 1 && $conf->global->MULTICOMPANY_TRANSVERSE_MODE), '', 'home');
- $newmenu->add("/user/list.php?leftmenu=users", $langs->trans("ListOfUsers"), 2, $user->rights->user->user->lire || $user->admin);
- $newmenu->add("/user/hierarchy.php?leftmenu=users", $langs->trans("HierarchicView"), 2, $user->rights->user->user->lire || $user->admin);
+ $newmenu->add("/user/list.php?leftmenu=users", $langs->trans("ListOfUsers"), 2, $user->hasRight('user', 'user', 'lire') || $user->admin);
+ $newmenu->add("/user/hierarchy.php?leftmenu=users", $langs->trans("HierarchicView"), 2, $user->hasRight('user', 'user', 'lire') || $user->admin);
if (isModEnabled('categorie')) {
$langs->load("categories");
- $newmenu->add("/categories/index.php?leftmenu=users&type=7", $langs->trans("UsersCategoriesShort"), 2, $user->rights->categorie->lire, '', $mainmenu, 'cat');
+ $newmenu->add("/categories/index.php?leftmenu=users&type=7", $langs->trans("UsersCategoriesShort"), 2, $user->hasRight('categorie', 'lire'), '', $mainmenu, 'cat');
}
- $newmenu->add("", $langs->trans("Groups"), 1, ($user->rights->user->user->lire || $user->admin) && !(isModEnabled('multicompany') && $conf->entity > 1 && $conf->global->MULTICOMPANY_TRANSVERSE_MODE));
+ $newmenu->add("", $langs->trans("Groups"), 1, ($user->hasRight('user', 'user', 'lire') || $user->admin) && !(isModEnabled('multicompany') && $conf->entity > 1 && $conf->global->MULTICOMPANY_TRANSVERSE_MODE));
$newmenu->add("/user/group/card.php?leftmenu=users&action=create", $langs->trans("NewGroup"), 2, ((!empty($conf->global->MAIN_USE_ADVANCED_PERMS) ? $user->hasRight("user", "group_advance", "create") : $user->hasRight("user", "user", "create")) || $user->admin) && !(isModEnabled('multicompany') && $conf->entity > 1 && $conf->global->MULTICOMPANY_TRANSVERSE_MODE));
- $newmenu->add("/user/group/list.php?leftmenu=users", $langs->trans("ListOfGroups"), 2, ((!empty($conf->global->MAIN_USE_ADVANCED_PERMS) ? $user->rights->user->group_advance->read : $user->rights->user->user->lire) || $user->admin) && !(isModEnabled('multicompany') && $conf->entity > 1 && $conf->global->MULTICOMPANY_TRANSVERSE_MODE));
+ $newmenu->add("/user/group/list.php?leftmenu=users", $langs->trans("ListOfGroups"), 2, ((!empty($conf->global->MAIN_USE_ADVANCED_PERMS) ? $user->hasRight('user', 'group_advance', 'read') : $user->hasRight('user', 'user', 'lire')) || $user->admin) && !(isModEnabled('multicompany') && $conf->entity > 1 && $conf->global->MULTICOMPANY_TRANSVERSE_MODE));
}
}
}
@@ -1187,9 +1187,9 @@ function get_left_menu_thridparties($mainmenu, &$newmenu, $usemenuhider = 1, $le
// Societes
if (isModEnabled('societe')) {
$langs->load("companies");
- $newmenu->add("/societe/index.php?leftmenu=thirdparties", $langs->trans("ThirdParty"), 0, $user->rights->societe->lire, '', $mainmenu, 'thirdparties', 0, '', '', '', img_picto('', 'company', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/societe/index.php?leftmenu=thirdparties", $langs->trans("ThirdParty"), 0, $user->hasRight('societe', 'lire'), '', $mainmenu, 'thirdparties', 0, '', '', '', img_picto('', 'company', 'class="paddingright pictofixedwidth"'));
- if ($user->rights->societe->creer) {
+ if ($user->hasRight('societe', 'creer')) {
$newmenu->add("/societe/card.php?action=create", $langs->trans("MenuNewThirdParty"), 1);
if (!$conf->use_javascript_ajax) {
$newmenu->add("/societe/card.php?action=create&private=1", $langs->trans("MenuNewPrivateIndividual"), 1);
@@ -1202,30 +1202,30 @@ function get_left_menu_thridparties($mainmenu, &$newmenu, $usemenuhider = 1, $le
// Prospects
if (isModEnabled('societe') && empty($conf->global->SOCIETE_DISABLE_PROSPECTS)) {
$langs->load("commercial");
- $newmenu->add("/societe/list.php?type=p&leftmenu=prospects", $langs->trans("ListProspectsShort"), 2, $user->rights->societe->lire, '', $mainmenu, 'prospects');
+ $newmenu->add("/societe/list.php?type=p&leftmenu=prospects", $langs->trans("ListProspectsShort"), 2, $user->hasRight('societe', 'lire'), '', $mainmenu, 'prospects');
/* no more required, there is a filter that can do more
- if ($usemenuhider || empty($leftmenu) || $leftmenu=="prospects") $newmenu->add("/societe/list.php?type=p&sortfield=s.datec&sortorder=desc&begin=&search_stcomm=-1", $langs->trans("LastProspectDoNotContact"), 2, $user->rights->societe->lire);
- if ($usemenuhider || empty($leftmenu) || $leftmenu=="prospects") $newmenu->add("/societe/list.php?type=p&sortfield=s.datec&sortorder=desc&begin=&search_stcomm=0", $langs->trans("LastProspectNeverContacted"), 2, $user->rights->societe->lire);
- if ($usemenuhider || empty($leftmenu) || $leftmenu=="prospects") $newmenu->add("/societe/list.php?type=p&sortfield=s.datec&sortorder=desc&begin=&search_stcomm=1", $langs->trans("LastProspectToContact"), 2, $user->rights->societe->lire);
- if ($usemenuhider || empty($leftmenu) || $leftmenu=="prospects") $newmenu->add("/societe/list.php?type=p&sortfield=s.datec&sortorder=desc&begin=&search_stcomm=2", $langs->trans("LastProspectContactInProcess"), 2, $user->rights->societe->lire);
- if ($usemenuhider || empty($leftmenu) || $leftmenu=="prospects") $newmenu->add("/societe/list.php?type=p&sortfield=s.datec&sortorder=desc&begin=&search_stcomm=3", $langs->trans("LastProspectContactDone"), 2, $user->rights->societe->lire);
+ if ($usemenuhider || empty($leftmenu) || $leftmenu=="prospects") $newmenu->add("/societe/list.php?type=p&sortfield=s.datec&sortorder=desc&begin=&search_stcomm=-1", $langs->trans("LastProspectDoNotContact"), 2, $user->hasRight('societe', 'lire'));
+ if ($usemenuhider || empty($leftmenu) || $leftmenu=="prospects") $newmenu->add("/societe/list.php?type=p&sortfield=s.datec&sortorder=desc&begin=&search_stcomm=0", $langs->trans("LastProspectNeverContacted"), 2, $user->hasRight('societe', 'lire'));
+ if ($usemenuhider || empty($leftmenu) || $leftmenu=="prospects") $newmenu->add("/societe/list.php?type=p&sortfield=s.datec&sortorder=desc&begin=&search_stcomm=1", $langs->trans("LastProspectToContact"), 2, $user->hasRight('societe', 'lire'));
+ if ($usemenuhider || empty($leftmenu) || $leftmenu=="prospects") $newmenu->add("/societe/list.php?type=p&sortfield=s.datec&sortorder=desc&begin=&search_stcomm=2", $langs->trans("LastProspectContactInProcess"), 2, $user->hasRight('societe', 'lire'));
+ if ($usemenuhider || empty($leftmenu) || $leftmenu=="prospects") $newmenu->add("/societe/list.php?type=p&sortfield=s.datec&sortorder=desc&begin=&search_stcomm=3", $langs->trans("LastProspectContactDone"), 2, $user->hasRight('societe', 'lire'));
*/
- $newmenu->add("/societe/card.php?leftmenu=prospects&action=create&type=p", $langs->trans("MenuNewProspect"), 3, $user->rights->societe->creer);
+ $newmenu->add("/societe/card.php?leftmenu=prospects&action=create&type=p", $langs->trans("MenuNewProspect"), 3, $user->hasRight('societe', 'creer'));
}
// Customers/Prospects
if (isModEnabled('societe') && empty($conf->global->SOCIETE_DISABLE_CUSTOMERS)) {
$langs->load("commercial");
- $newmenu->add("/societe/list.php?type=c&leftmenu=customers", $langs->trans("ListCustomersShort"), 2, $user->rights->societe->lire, '', $mainmenu, 'customers');
+ $newmenu->add("/societe/list.php?type=c&leftmenu=customers", $langs->trans("ListCustomersShort"), 2, $user->hasRight('societe', 'lire'), '', $mainmenu, 'customers');
- $newmenu->add("/societe/card.php?leftmenu=customers&action=create&type=c", $langs->trans("MenuNewCustomer"), 3, $user->rights->societe->creer);
+ $newmenu->add("/societe/card.php?leftmenu=customers&action=create&type=c", $langs->trans("MenuNewCustomer"), 3, $user->hasRight('societe', 'creer'));
}
// Suppliers
if (isModEnabled('societe') && (((isModEnabled('fournisseur') && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled('supplier_order') || isModEnabled('supplier_invoice')) || isModEnabled('supplier_proposal'))) {
$langs->load("suppliers");
- $newmenu->add("/societe/list.php?type=f&leftmenu=suppliers", $langs->trans("ListSuppliersShort"), 2, ($user->rights->fournisseur->lire || $user->rights->supplier_order->lire || $user->rights->supplier_invoice->lire || $user->rights->supplier_proposal->lire), '', $mainmenu, 'suppliers');
- $newmenu->add("/societe/card.php?leftmenu=suppliers&action=create&type=f", $langs->trans("MenuNewSupplier"), 3, $user->rights->societe->creer && ($user->rights->fournisseur->lire || $user->rights->supplier_order->lire || $user->rights->supplier_invoice->lire || $user->rights->supplier_proposal->lire));
+ $newmenu->add("/societe/list.php?type=f&leftmenu=suppliers", $langs->trans("ListSuppliersShort"), 2, ($user->hasRight('fournisseur', 'lire') || $user->hasRight('supplier_order', 'lire') || $user->hasRight('supplier_invoice', 'lire') || $user->hasRight('supplier_proposal', 'lire')), '', $mainmenu, 'suppliers');
+ $newmenu->add("/societe/card.php?leftmenu=suppliers&action=create&type=f", $langs->trans("MenuNewSupplier"), 3, $user->hasRight('societe', 'creer') && ($user->hasRight('fournisseur', 'lire') || $user->hasRight('supplier_order', 'lire') || $user->hasRight('supplier_invoice', 'lire') || $user->hasRight('supplier_proposal', 'lire')));
}
// Categories
@@ -1240,36 +1240,36 @@ function get_left_menu_thridparties($mainmenu, &$newmenu, $usemenuhider = 1, $le
if (!empty($conf->global->SOCIETE_DISABLE_CUSTOMERS)) {
$menutoshow = $langs->trans("ProspectsCategoriesShort");
}
- $newmenu->add("/categories/index.php?leftmenu=cat&type=2", $menutoshow, 1, $user->rights->categorie->lire, '', $mainmenu, 'cat');
+ $newmenu->add("/categories/index.php?leftmenu=cat&type=2", $menutoshow, 1, $user->hasRight('categorie', 'lire'), '', $mainmenu, 'cat');
}
// Categories suppliers
if ((isModEnabled('fournisseur') && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled('supplier_order') || isModEnabled('supplier_invoice')) {
- $newmenu->add("/categories/index.php?leftmenu=catfournish&type=1", $langs->trans("SuppliersCategoriesShort"), 1, $user->rights->categorie->lire);
+ $newmenu->add("/categories/index.php?leftmenu=catfournish&type=1", $langs->trans("SuppliersCategoriesShort"), 1, $user->hasRight('categorie', 'lire'));
}
}
// Contacts
- $newmenu->add("/societe/index.php?leftmenu=thirdparties", (!empty($conf->global->SOCIETE_ADDRESSES_MANAGEMENT) ? $langs->trans("Contacts") : $langs->trans("ContactsAddresses")), 0, $user->rights->societe->contact->lire, '', $mainmenu, 'contacts', 0, '', '', '', img_picto('', 'contact', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/societe/index.php?leftmenu=thirdparties", (!empty($conf->global->SOCIETE_ADDRESSES_MANAGEMENT) ? $langs->trans("Contacts") : $langs->trans("ContactsAddresses")), 0, $user->hasRight('societe', 'contact', 'lire'), '', $mainmenu, 'contacts', 0, '', '', '', img_picto('', 'contact', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/contact/card.php?leftmenu=contacts&action=create", (!empty($conf->global->SOCIETE_ADDRESSES_MANAGEMENT) ? $langs->trans("NewContact") : $langs->trans("NewContactAddress")), 1, $user->rights->societe->contact->creer);
- $newmenu->add("/contact/list.php?leftmenu=contacts", $langs->trans("List"), 1, $user->rights->societe->contact->lire);
+ $newmenu->add("/contact/card.php?leftmenu=contacts&action=create", (!empty($conf->global->SOCIETE_ADDRESSES_MANAGEMENT) ? $langs->trans("NewContact") : $langs->trans("NewContactAddress")), 1, $user->hasRight('societe', 'contact', 'creer'));
+ $newmenu->add("/contact/list.php?leftmenu=contacts", $langs->trans("List"), 1, $user->hasRight('societe', 'contact', 'lire'));
if (empty($conf->global->SOCIETE_DISABLE_PROSPECTS)) {
- $newmenu->add("/contact/list.php?leftmenu=contacts&type=p", $langs->trans("Prospects"), 2, $user->rights->societe->contact->lire);
+ $newmenu->add("/contact/list.php?leftmenu=contacts&type=p", $langs->trans("Prospects"), 2, $user->hasRight('societe', 'contact', 'lire'));
}
if (empty($conf->global->SOCIETE_DISABLE_CUSTOMERS)) {
- $newmenu->add("/contact/list.php?leftmenu=contacts&type=c", $langs->trans("Customers"), 2, $user->rights->societe->contact->lire);
+ $newmenu->add("/contact/list.php?leftmenu=contacts&type=c", $langs->trans("Customers"), 2, $user->hasRight('societe', 'contact', 'lire'));
}
if ((isModEnabled('fournisseur') && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled('supplier_order') || isModEnabled('supplier_invoice')) {
- $newmenu->add("/contact/list.php?leftmenu=contacts&type=f", $langs->trans("Suppliers"), 2, $user->rights->societe->contact->lire);
+ $newmenu->add("/contact/list.php?leftmenu=contacts&type=f", $langs->trans("Suppliers"), 2, $user->hasRight('societe', 'contact', 'lire'));
}
- $newmenu->add("/contact/list.php?leftmenu=contacts&type=o", $langs->trans("ContactOthers"), 2, $user->rights->societe->contact->lire);
- //$newmenu->add("/contact/list.php?userid=$user->id", $langs->trans("MyContacts"), 1, $user->rights->societe->contact->lire);
+ $newmenu->add("/contact/list.php?leftmenu=contacts&type=o", $langs->trans("ContactOthers"), 2, $user->hasRight('societe', 'contact', 'lire'));
+ //$newmenu->add("/contact/list.php?userid=$user->id", $langs->trans("MyContacts"), 1, $user->hasRight('societe', 'contact', 'lire'));
// Categories
if (isModEnabled('categorie')) {
$langs->load("categories");
// Categories Contact
- $newmenu->add("/categories/index.php?leftmenu=catcontact&type=4", $langs->trans("ContactCategoriesShort"), 1, $user->rights->categorie->lire, '', $mainmenu, 'cat');
+ $newmenu->add("/categories/index.php?leftmenu=catcontact&type=4", $langs->trans("ContactCategoriesShort"), 1, $user->hasRight('categorie', 'lire'), '', $mainmenu, 'cat');
}
}
}
@@ -1294,98 +1294,98 @@ function get_left_menu_commercial($mainmenu, &$newmenu, $usemenuhider = 1, $left
// Customer proposal
if (isModEnabled('propal')) {
$langs->load("propal");
- $newmenu->add("/comm/propal/index.php?leftmenu=propals", $langs->trans("Proposals"), 0, $user->rights->propale->lire, '', $mainmenu, 'propals', 100, '', '', '', img_picto('', 'propal', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/comm/propal/card.php?action=create&leftmenu=propals", $langs->trans("NewPropal"), 1, $user->rights->propale->creer);
- $newmenu->add("/comm/propal/list.php?leftmenu=propals", $langs->trans("List"), 1, $user->rights->propale->lire);
+ $newmenu->add("/comm/propal/index.php?leftmenu=propals", $langs->trans("Proposals"), 0, $user->hasRight('propal', 'read'), '', $mainmenu, 'propals', 100, '', '', '', img_picto('', 'propal', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/comm/propal/card.php?action=create&leftmenu=propals", $langs->trans("NewPropal"), 1, $user->hasRight('propal', 'write'));
+ $newmenu->add("/comm/propal/list.php?leftmenu=propals", $langs->trans("List"), 1, $user->hasRight('propal', 'read'));
if ($usemenuhider || empty($leftmenu) || $leftmenu == "propals") {
- $newmenu->add("/comm/propal/list.php?leftmenu=propals&search_status=0", $langs->trans("PropalsDraft"), 2, $user->rights->propale->lire);
- $newmenu->add("/comm/propal/list.php?leftmenu=propals&search_status=1", $langs->trans("PropalsOpened"), 2, $user->rights->propale->lire);
- $newmenu->add("/comm/propal/list.php?leftmenu=propals&search_status=2", $langs->trans("PropalStatusSigned"), 2, $user->rights->propale->lire);
- $newmenu->add("/comm/propal/list.php?leftmenu=propals&search_status=3", $langs->trans("PropalStatusNotSigned"), 2, $user->rights->propale->lire);
- $newmenu->add("/comm/propal/list.php?leftmenu=propals&search_status=4", $langs->trans("PropalStatusBilled"), 2, $user->rights->propale->lire);
- //$newmenu->add("/comm/propal/list.php?leftmenu=propals&search_status=2,3,4", $langs->trans("PropalStatusClosedShort"), 2, $user->rights->propale->lire);
+ $newmenu->add("/comm/propal/list.php?leftmenu=propals&search_status=0", $langs->trans("PropalsDraft"), 2, $user->hasRight('propal', 'read'));
+ $newmenu->add("/comm/propal/list.php?leftmenu=propals&search_status=1", $langs->trans("PropalsOpened"), 2, $user->hasRight('propal', 'read'));
+ $newmenu->add("/comm/propal/list.php?leftmenu=propals&search_status=2", $langs->trans("PropalStatusSigned"), 2, $user->hasRight('propal', 'read'));
+ $newmenu->add("/comm/propal/list.php?leftmenu=propals&search_status=3", $langs->trans("PropalStatusNotSigned"), 2, $user->hasRight('propal', 'read'));
+ $newmenu->add("/comm/propal/list.php?leftmenu=propals&search_status=4", $langs->trans("PropalStatusBilled"), 2, $user->hasRight('propal', 'read'));
+ //$newmenu->add("/comm/propal/list.php?leftmenu=propals&search_status=2,3,4", $langs->trans("PropalStatusClosedShort"), 2, $user->hasRight('propal', 'read'));
}
- $newmenu->add("/comm/propal/stats/index.php?leftmenu=propals", $langs->trans("Statistics"), 1, $user->rights->propale->lire);
+ $newmenu->add("/comm/propal/stats/index.php?leftmenu=propals", $langs->trans("Statistics"), 1, $user->hasRight('propal', 'read'));
}
// Customers orders
if (isModEnabled('commande')) {
$langs->load("orders");
- $newmenu->add("/commande/index.php?leftmenu=orders", $langs->trans("CustomersOrders"), 0, $user->rights->commande->lire, '', $mainmenu, 'orders', 200, '', '', '', img_picto('', 'order', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/commande/card.php?action=create&leftmenu=orders", $langs->trans("NewOrder"), 1, $user->rights->commande->creer);
- $newmenu->add("/commande/list.php?leftmenu=orders", $langs->trans("List"), 1, $user->rights->commande->lire);
+ $newmenu->add("/commande/index.php?leftmenu=orders", $langs->trans("CustomersOrders"), 0, $user->hasRight('commande', 'lire'), '', $mainmenu, 'orders', 200, '', '', '', img_picto('', 'order', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/commande/card.php?action=create&leftmenu=orders", $langs->trans("NewOrder"), 1, $user->hasRight('commande', 'creer'));
+ $newmenu->add("/commande/list.php?leftmenu=orders", $langs->trans("List"), 1, $user->hasRight('commande', 'lire'));
if ($usemenuhider || empty($leftmenu) || $leftmenu == "orders") {
- $newmenu->add("/commande/list.php?leftmenu=orders&search_status=0", $langs->trans("StatusOrderDraftShort"), 2, $user->rights->commande->lire);
- $newmenu->add("/commande/list.php?leftmenu=orders&search_status=1", $langs->trans("StatusOrderValidated"), 2, $user->rights->commande->lire);
+ $newmenu->add("/commande/list.php?leftmenu=orders&search_status=0", $langs->trans("StatusOrderDraftShort"), 2, $user->hasRight('commande', 'lire'));
+ $newmenu->add("/commande/list.php?leftmenu=orders&search_status=1", $langs->trans("StatusOrderValidated"), 2, $user->hasRight('commande', 'lire'));
if (isModEnabled('expedition')) {
- $newmenu->add("/commande/list.php?leftmenu=orders&search_status=2", $langs->trans("StatusOrderSentShort"), 2, $user->rights->commande->lire);
+ $newmenu->add("/commande/list.php?leftmenu=orders&search_status=2", $langs->trans("StatusOrderSentShort"), 2, $user->hasRight('commande', 'lire'));
}
- $newmenu->add("/commande/list.php?leftmenu=orders&search_status=3", $langs->trans("StatusOrderDelivered"), 2, $user->rights->commande->lire);
- //$newmenu->add("/commande/list.php?leftmenu=orders&search_status=4", $langs->trans("StatusOrderProcessed"), 2, $user->rights->commande->lire);
- $newmenu->add("/commande/list.php?leftmenu=orders&search_status=-1", $langs->trans("StatusOrderCanceledShort"), 2, $user->rights->commande->lire);
+ $newmenu->add("/commande/list.php?leftmenu=orders&search_status=3", $langs->trans("StatusOrderDelivered"), 2, $user->hasRight('commande', 'lire'));
+ //$newmenu->add("/commande/list.php?leftmenu=orders&search_status=4", $langs->trans("StatusOrderProcessed"), 2, $user->hasRight('commande', 'lire'));
+ $newmenu->add("/commande/list.php?leftmenu=orders&search_status=-1", $langs->trans("StatusOrderCanceledShort"), 2, $user->hasRight('commande', 'lire'));
}
- $newmenu->add("/commande/stats/index.php?leftmenu=orders", $langs->trans("Statistics"), 1, $user->rights->commande->lire);
+ $newmenu->add("/commande/stats/index.php?leftmenu=orders", $langs->trans("Statistics"), 1, $user->hasRight('commande', 'lire'));
}
// Supplier proposal
if (isModEnabled('supplier_proposal')) {
$langs->load("supplier_proposal");
- $newmenu->add("/supplier_proposal/index.php?leftmenu=propals_supplier", $langs->trans("SupplierProposalsShort"), 0, $user->rights->supplier_proposal->lire, '', $mainmenu, 'propals_supplier', 300, '', '', '', img_picto('', 'supplier_proposal', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/supplier_proposal/card.php?action=create&leftmenu=supplier_proposals", $langs->trans("SupplierProposalNew"), 1, $user->rights->supplier_proposal->creer);
- $newmenu->add("/supplier_proposal/list.php?leftmenu=supplier_proposals", $langs->trans("List"), 1, $user->rights->supplier_proposal->lire);
- $newmenu->add("/comm/propal/stats/index.php?leftmenu=supplier_proposals&mode=supplier", $langs->trans("Statistics"), 1, $user->rights->supplier_proposal->lire);
+ $newmenu->add("/supplier_proposal/index.php?leftmenu=propals_supplier", $langs->trans("SupplierProposalsShort"), 0, $user->hasRight('supplier_proposal', 'lire'), '', $mainmenu, 'propals_supplier', 300, '', '', '', img_picto('', 'supplier_proposal', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/supplier_proposal/card.php?action=create&leftmenu=supplier_proposals", $langs->trans("SupplierProposalNew"), 1, $user->hasRight('supplier_proposal', 'creer'));
+ $newmenu->add("/supplier_proposal/list.php?leftmenu=supplier_proposals", $langs->trans("List"), 1, $user->hasRight('supplier_proposal', 'lire'));
+ $newmenu->add("/comm/propal/stats/index.php?leftmenu=supplier_proposals&mode=supplier", $langs->trans("Statistics"), 1, $user->hasRight('supplier_proposal', 'lire'));
}
// Suppliers orders
if (isModEnabled('supplier_order')) {
$langs->load("orders");
- $newmenu->add("/fourn/commande/index.php?leftmenu=orders_suppliers", $langs->trans("SuppliersOrders"), 0, $user->rights->fournisseur->commande->lire, '', $mainmenu, 'orders_suppliers', 400, '', '', '', img_picto('', 'supplier_order', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/fourn/commande/card.php?action=create&leftmenu=orders_suppliers", $langs->trans("NewSupplierOrderShort"), 1, $user->rights->fournisseur->commande->creer);
- $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers", $langs->trans("List"), 1, $user->rights->fournisseur->commande->lire);
+ $newmenu->add("/fourn/commande/index.php?leftmenu=orders_suppliers", $langs->trans("SuppliersOrders"), 0, $user->hasRight('fournisseur', 'commande', 'lire'), '', $mainmenu, 'orders_suppliers', 400, '', '', '', img_picto('', 'supplier_order', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/fourn/commande/card.php?action=create&leftmenu=orders_suppliers", $langs->trans("NewSupplierOrderShort"), 1, $user->hasRight('fournisseur', 'commande', 'creer'));
+ $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers", $langs->trans("List"), 1, $user->hasRight('fournisseur', 'commande', 'lire'));
if ($usemenuhider || empty($leftmenu) || $leftmenu == "orders_suppliers") {
- $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=0", $langs->trans("StatusSupplierOrderDraftShort"), 2, $user->rights->fournisseur->commande->lire);
+ $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=0", $langs->trans("StatusSupplierOrderDraftShort"), 2, $user->hasRight('fournisseur', 'commande', 'lire'));
if (empty($conf->global->SUPPLIER_ORDER_HIDE_VALIDATED)) {
- $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=1", $langs->trans("StatusSupplierOrderValidated"), 2, $user->rights->fournisseur->commande->lire);
+ $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=1", $langs->trans("StatusSupplierOrderValidated"), 2, $user->hasRight('fournisseur', 'commande', 'lire'));
}
- $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=2", $langs->trans("StatusSupplierOrderApprovedShort"), 2, $user->rights->fournisseur->commande->lire);
- $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=3", $langs->trans("StatusSupplierOrderOnProcessShort"), 2, $user->rights->fournisseur->commande->lire);
- $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=4", $langs->trans("StatusSupplierOrderReceivedPartiallyShort"), 2, $user->rights->fournisseur->commande->lire);
- $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=5", $langs->trans("StatusSupplierOrderReceivedAll"), 2, $user->rights->fournisseur->commande->lire);
- $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=6,7", $langs->trans("StatusSupplierOrderCanceled"), 2, $user->rights->fournisseur->commande->lire);
- $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=9", $langs->trans("StatusSupplierOrderRefused"), 2, $user->rights->fournisseur->commande->lire);
+ $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=2", $langs->trans("StatusSupplierOrderApprovedShort"), 2, $user->hasRight('fournisseur', 'commande', 'lire'));
+ $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=3", $langs->trans("StatusSupplierOrderOnProcessShort"), 2, $user->hasRight('fournisseur', 'commande', 'lire'));
+ $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=4", $langs->trans("StatusSupplierOrderReceivedPartiallyShort"), 2, $user->hasRight('fournisseur', 'commande', 'lire'));
+ $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=5", $langs->trans("StatusSupplierOrderReceivedAll"), 2, $user->hasRight('fournisseur', 'commande', 'lire'));
+ $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=6,7", $langs->trans("StatusSupplierOrderCanceled"), 2, $user->hasRight('fournisseur', 'commande', 'lire'));
+ $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&statut=9", $langs->trans("StatusSupplierOrderRefused"), 2, $user->hasRight('fournisseur', 'commande', 'lire'));
}
- // Billed is another field. We should add instead a dedicated filter on list. if ($usemenuhider || empty($leftmenu) || $leftmenu=="orders_suppliers") $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&billed=1", $langs->trans("Billed"), 2, $user->rights->fournisseur->commande->lire);
+ // Billed is another field. We should add instead a dedicated filter on list. if ($usemenuhider || empty($leftmenu) || $leftmenu=="orders_suppliers") $newmenu->add("/fourn/commande/list.php?leftmenu=orders_suppliers&billed=1", $langs->trans("Billed"), 2, $user->hasRight('fournisseur', 'commande', 'lire'));
- $newmenu->add("/commande/stats/index.php?leftmenu=orders_suppliers&mode=supplier", $langs->trans("Statistics"), 1, $user->rights->fournisseur->commande->lire);
+ $newmenu->add("/commande/stats/index.php?leftmenu=orders_suppliers&mode=supplier", $langs->trans("Statistics"), 1, $user->hasRight('fournisseur', 'commande', 'lire'));
}
// Contrat
if (isModEnabled('contrat')) {
$langs->load("contracts");
- $newmenu->add("/contrat/index.php?leftmenu=contracts", $langs->trans("ContractsSubscriptions"), 0, $user->rights->contrat->lire, '', $mainmenu, 'contracts', 2000, '', '', '', img_picto('', 'contract', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/contrat/card.php?action=create&leftmenu=contracts", $langs->trans("NewContractSubscription"), 1, $user->rights->contrat->creer);
- $newmenu->add("/contrat/list.php?leftmenu=contracts", $langs->trans("List"), 1, $user->rights->contrat->lire);
- $newmenu->add("/contrat/services_list.php?leftmenu=contracts", $langs->trans("MenuServices"), 1, $user->rights->contrat->lire);
+ $newmenu->add("/contrat/index.php?leftmenu=contracts", $langs->trans("ContractsSubscriptions"), 0, $user->hasRight('contrat', 'lire'), '', $mainmenu, 'contracts', 2000, '', '', '', img_picto('', 'contract', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/contrat/card.php?action=create&leftmenu=contracts", $langs->trans("NewContractSubscription"), 1, $user->hasRight('contrat', 'creer'));
+ $newmenu->add("/contrat/list.php?leftmenu=contracts", $langs->trans("List"), 1, $user->hasRight('contrat', 'lire'));
+ $newmenu->add("/contrat/services_list.php?leftmenu=contracts", $langs->trans("MenuServices"), 1, $user->hasRight('contrat', 'lire'));
if ($usemenuhider || empty($leftmenu) || $leftmenu == "contracts") {
- $newmenu->add("/contrat/services_list.php?leftmenu=contracts&mode=0", $langs->trans("MenuInactiveServices"), 2, $user->rights->contrat->lire);
- $newmenu->add("/contrat/services_list.php?leftmenu=contracts&mode=4", $langs->trans("MenuRunningServices"), 2, $user->rights->contrat->lire);
- $newmenu->add("/contrat/services_list.php?leftmenu=contracts&mode=4&filter=expired", $langs->trans("MenuExpiredServices"), 2, $user->rights->contrat->lire);
- $newmenu->add("/contrat/services_list.php?leftmenu=contracts&mode=5", $langs->trans("MenuClosedServices"), 2, $user->rights->contrat->lire);
+ $newmenu->add("/contrat/services_list.php?leftmenu=contracts&mode=0", $langs->trans("MenuInactiveServices"), 2, $user->hasRight('contrat', 'lire'));
+ $newmenu->add("/contrat/services_list.php?leftmenu=contracts&mode=4", $langs->trans("MenuRunningServices"), 2, $user->hasRight('contrat', 'lire'));
+ $newmenu->add("/contrat/services_list.php?leftmenu=contracts&mode=4&filter=expired", $langs->trans("MenuExpiredServices"), 2, $user->hasRight('contrat', 'lire'));
+ $newmenu->add("/contrat/services_list.php?leftmenu=contracts&mode=5", $langs->trans("MenuClosedServices"), 2, $user->hasRight('contrat', 'lire'));
}
}
// Interventions
if (isModEnabled('ficheinter')) {
$langs->load("interventions");
- $newmenu->add("/fichinter/index.php?leftmenu=ficheinter", $langs->trans("Interventions"), 0, $user->rights->ficheinter->lire, '', $mainmenu, 'ficheinter', 2200, '', '', '', img_picto('', 'intervention', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/fichinter/card.php?action=create&leftmenu=ficheinter", $langs->trans("NewIntervention"), 1, $user->rights->ficheinter->creer, '', '', '', 201);
- $newmenu->add("/fichinter/list.php?leftmenu=ficheinter", $langs->trans("List"), 1, $user->rights->ficheinter->lire, '', '', '', 202);
+ $newmenu->add("/fichinter/index.php?leftmenu=ficheinter", $langs->trans("Interventions"), 0, $user->hasRight('ficheinter', 'lire'), '', $mainmenu, 'ficheinter', 2200, '', '', '', img_picto('', 'intervention', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/fichinter/card.php?action=create&leftmenu=ficheinter", $langs->trans("NewIntervention"), 1, $user->hasRight('ficheinter', 'creer'), '', '', '', 201);
+ $newmenu->add("/fichinter/list.php?leftmenu=ficheinter", $langs->trans("List"), 1, $user->hasRight('ficheinter', 'lire'), '', '', '', 202);
if ($conf->global->MAIN_FEATURES_LEVEL >= 2) {
- $newmenu->add("/fichinter/card-rec.php?leftmenu=ficheinter", $langs->trans("ListOfTemplates"), 1, $user->rights->ficheinter->lire, '', '', '', 203);
+ $newmenu->add("/fichinter/card-rec.php?leftmenu=ficheinter", $langs->trans("ListOfTemplates"), 1, $user->hasRight('ficheinter', 'lire'), '', '', '', 203);
}
- $newmenu->add("/fichinter/stats/index.php?leftmenu=ficheinter", $langs->trans("Statistics"), 1, $user->rights->ficheinter->lire);
+ $newmenu->add("/fichinter/stats/index.php?leftmenu=ficheinter", $langs->trans("Statistics"), 1, $user->hasRight('ficheinter', 'lire'));
}
}
}
@@ -1410,69 +1410,69 @@ function get_left_menu_billing($mainmenu, &$newmenu, $usemenuhider = 1, $leftmen
// Customers invoices
if (isModEnabled('facture')) {
$langs->load("bills");
- $newmenu->add("/compta/facture/index.php?leftmenu=customers_bills", $langs->trans("BillsCustomers"), 0, $user->rights->facture->lire, '', $mainmenu, 'customers_bills', 0, '', '', '', img_picto('', 'bill', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/compta/facture/card.php?action=create", $langs->trans("NewBill"), 1, $user->rights->facture->creer);
- $newmenu->add("/compta/facture/list.php?leftmenu=customers_bills", $langs->trans("List"), 1, $user->rights->facture->lire, '', $mainmenu, 'customers_bills_list');
+ $newmenu->add("/compta/facture/index.php?leftmenu=customers_bills", $langs->trans("BillsCustomers"), 0, $user->hasRight('facture', 'lire'), '', $mainmenu, 'customers_bills', 0, '', '', '', img_picto('', 'bill', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/compta/facture/card.php?action=create", $langs->trans("NewBill"), 1, $user->hasRight('facture', 'creer'));
+ $newmenu->add("/compta/facture/list.php?leftmenu=customers_bills", $langs->trans("List"), 1, $user->hasRight('facture', 'lire'), '', $mainmenu, 'customers_bills_list');
if ($usemenuhider || empty($leftmenu) || preg_match('/customers_bills(|_draft|_notpaid|_paid|_canceled)$/', $leftmenu)) {
- $newmenu->add("/compta/facture/list.php?leftmenu=customers_bills_draft&search_status=0", $langs->trans("BillShortStatusDraft"), 2, $user->rights->facture->lire);
- $newmenu->add("/compta/facture/list.php?leftmenu=customers_bills_notpaid&search_status=1", $langs->trans("BillShortStatusNotPaid"), 2, $user->rights->facture->lire);
- $newmenu->add("/compta/facture/list.php?leftmenu=customers_bills_paid&search_status=2", $langs->trans("BillShortStatusPaid"), 2, $user->rights->facture->lire);
- $newmenu->add("/compta/facture/list.php?leftmenu=customers_bills_canceled&search_status=3", $langs->trans("BillShortStatusCanceled"), 2, $user->rights->facture->lire);
+ $newmenu->add("/compta/facture/list.php?leftmenu=customers_bills_draft&search_status=0", $langs->trans("BillShortStatusDraft"), 2, $user->hasRight('facture', 'lire'));
+ $newmenu->add("/compta/facture/list.php?leftmenu=customers_bills_notpaid&search_status=1", $langs->trans("BillShortStatusNotPaid"), 2, $user->hasRight('facture', 'lire'));
+ $newmenu->add("/compta/facture/list.php?leftmenu=customers_bills_paid&search_status=2", $langs->trans("BillShortStatusPaid"), 2, $user->hasRight('facture', 'lire'));
+ $newmenu->add("/compta/facture/list.php?leftmenu=customers_bills_canceled&search_status=3", $langs->trans("BillShortStatusCanceled"), 2, $user->hasRight('facture', 'lire'));
}
- $newmenu->add("/compta/facture/invoicetemplate_list.php?leftmenu=customers_bills_templates", $langs->trans("ListOfTemplates"), 1, $user->rights->facture->creer, '', $mainmenu, 'customers_bills_templates'); // No need to see recurring invoices, if user has no permission to create invoice.
+ $newmenu->add("/compta/facture/invoicetemplate_list.php?leftmenu=customers_bills_templates", $langs->trans("ListOfTemplates"), 1, $user->hasRight('facture', 'creer'), '', $mainmenu, 'customers_bills_templates'); // No need to see recurring invoices, if user has no permission to create invoice.
- $newmenu->add("/compta/paiement/list.php?leftmenu=customers_bills_payment", $langs->trans("Payments"), 1, $user->rights->facture->lire, '', $mainmenu, 'customers_bills_payment');
+ $newmenu->add("/compta/paiement/list.php?leftmenu=customers_bills_payment", $langs->trans("Payments"), 1, $user->hasRight('facture', 'lire'), '', $mainmenu, 'customers_bills_payment');
if (!empty($conf->global->BILL_ADD_PAYMENT_VALIDATION)) {
- $newmenu->add("/compta/paiement/tovalidate.php?leftmenu=customers_bills_tovalid", $langs->trans("MenuToValid"), 2, $user->rights->facture->lire, '', $mainmenu, 'customer_bills_tovalid');
+ $newmenu->add("/compta/paiement/tovalidate.php?leftmenu=customers_bills_tovalid", $langs->trans("MenuToValid"), 2, $user->hasRight('facture', 'lire'), '', $mainmenu, 'customer_bills_tovalid');
}
if ($usemenuhider || empty($leftmenu) || preg_match('/customers_bills/', $leftmenu)) {
- $newmenu->add("/compta/paiement/rapport.php?leftmenu=customers_bills_payment_report", $langs->trans("Reportings"), 2, $user->rights->facture->lire, '', $mainmenu, 'customers_bills_payment_report');
+ $newmenu->add("/compta/paiement/rapport.php?leftmenu=customers_bills_payment_report", $langs->trans("Reportings"), 2, $user->hasRight('facture', 'lire'), '', $mainmenu, 'customers_bills_payment_report');
}
- $newmenu->add("/compta/facture/stats/index.php?leftmenu=customers_bills_stats", $langs->trans("Statistics"), 1, $user->rights->facture->lire, '', $mainmenu, 'customers_bills_stats');
+ $newmenu->add("/compta/facture/stats/index.php?leftmenu=customers_bills_stats", $langs->trans("Statistics"), 1, $user->hasRight('facture', 'lire'), '', $mainmenu, 'customers_bills_stats');
}
// Suppliers invoices
if (isModEnabled('societe') && isModEnabled('supplier_invoice')) {
$langs->load("bills");
- $newmenu->add("/fourn/facture/index.php?leftmenu=suppliers_bills", $langs->trans("BillsSuppliers"), 0, $user->rights->fournisseur->facture->lire, '', $mainmenu, 'suppliers_bills', 0, '', '', '', img_picto('', 'supplier_invoice', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/fourn/facture/card.php?leftmenu=suppliers_bills&action=create", $langs->trans("NewBill"), 1, ($user->rights->fournisseur->facture->creer || $user->rights->supplier_invoice->creer), '', $mainmenu, 'suppliers_bills_create');
- $newmenu->add("/fourn/facture/list.php?leftmenu=suppliers_bills", $langs->trans("List"), 1, $user->rights->fournisseur->facture->lire, '', $mainmenu, 'suppliers_bills_list');
+ $newmenu->add("/fourn/facture/index.php?leftmenu=suppliers_bills", $langs->trans("BillsSuppliers"), 0, $user->hasRight('fournisseur', 'facture', 'lire'), '', $mainmenu, 'suppliers_bills', 0, '', '', '', img_picto('', 'supplier_invoice', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/fourn/facture/card.php?leftmenu=suppliers_bills&action=create", $langs->trans("NewBill"), 1, ($user->hasRight('fournisseur', 'facture', 'creer') || $user->hasRight('supplier_invoice', 'creer')), '', $mainmenu, 'suppliers_bills_create');
+ $newmenu->add("/fourn/facture/list.php?leftmenu=suppliers_bills", $langs->trans("List"), 1, $user->hasRight('fournisseur', 'facture', 'lire'), '', $mainmenu, 'suppliers_bills_list');
if ($usemenuhider || empty($leftmenu) || preg_match('/suppliers_bills/', $leftmenu)) {
- $newmenu->add("/fourn/facture/list.php?leftmenu=suppliers_bills_draft&search_status=0", $langs->trans("BillShortStatusDraft"), 2, $user->rights->fournisseur->facture->lire, '', $mainmenu, 'suppliers_bills_draft');
- $newmenu->add("/fourn/facture/list.php?leftmenu=suppliers_bills_notpaid&search_status=1", $langs->trans("BillShortStatusNotPaid"), 2, $user->rights->fournisseur->facture->lire, '', $mainmenu, 'suppliers_bills_notpaid');
- $newmenu->add("/fourn/facture/list.php?leftmenu=suppliers_bills_paid&search_status=2", $langs->trans("BillShortStatusPaid"), 2, $user->rights->fournisseur->facture->lire, '', $mainmenu, 'suppliers_bills_paid');
+ $newmenu->add("/fourn/facture/list.php?leftmenu=suppliers_bills_draft&search_status=0", $langs->trans("BillShortStatusDraft"), 2, $user->hasRight('fournisseur', 'facture', 'lire'), '', $mainmenu, 'suppliers_bills_draft');
+ $newmenu->add("/fourn/facture/list.php?leftmenu=suppliers_bills_notpaid&search_status=1", $langs->trans("BillShortStatusNotPaid"), 2, $user->hasRight('fournisseur', 'facture', 'lire'), '', $mainmenu, 'suppliers_bills_notpaid');
+ $newmenu->add("/fourn/facture/list.php?leftmenu=suppliers_bills_paid&search_status=2", $langs->trans("BillShortStatusPaid"), 2, $user->hasRight('fournisseur', 'facture', 'lire'), '', $mainmenu, 'suppliers_bills_paid');
}
- $newmenu->add("/fourn/facture/list-rec.php?leftmenu=supplierinvoicestemplate_list", $langs->trans("ListOfTemplates"), 1, $user->rights->fournisseur->facture->lire, '', $mainmenu, 'supplierinvoicestemplate_list');
+ $newmenu->add("/fourn/facture/list-rec.php?leftmenu=supplierinvoicestemplate_list", $langs->trans("ListOfTemplates"), 1, $user->hasRight('fournisseur', 'facture', 'lire'), '', $mainmenu, 'supplierinvoicestemplate_list');
- $newmenu->add("/fourn/paiement/list.php?leftmenu=suppliers_bills_payment", $langs->trans("Payments"), 1, $user->rights->fournisseur->facture->lire, '', $mainmenu, 'suppliers_bills_payment');
+ $newmenu->add("/fourn/paiement/list.php?leftmenu=suppliers_bills_payment", $langs->trans("Payments"), 1, $user->hasRight('fournisseur', 'facture', 'lire'), '', $mainmenu, 'suppliers_bills_payment');
if ($usemenuhider || empty($leftmenu) || preg_match('/suppliers_bills/', $leftmenu)) {
- $newmenu->add("/fourn/facture/rapport.php?leftmenu=suppliers_bills_payment_report", $langs->trans("Reportings"), 2, $user->rights->fournisseur->facture->lire, '', $mainmenu, 'suppliers_bills_payment_report');
+ $newmenu->add("/fourn/facture/rapport.php?leftmenu=suppliers_bills_payment_report", $langs->trans("Reportings"), 2, $user->hasRight('fournisseur', 'facture', 'lire'), '', $mainmenu, 'suppliers_bills_payment_report');
}
- $newmenu->add("/compta/facture/stats/index.php?mode=supplier&leftmenu=suppliers_bills_stats", $langs->trans("Statistics"), 1, $user->rights->fournisseur->facture->lire, '', $mainmenu, 'suppliers_bills_stats');
+ $newmenu->add("/compta/facture/stats/index.php?mode=supplier&leftmenu=suppliers_bills_stats", $langs->trans("Statistics"), 1, $user->hasRight('fournisseur', 'facture', 'lire'), '', $mainmenu, 'suppliers_bills_stats');
}
// Orders
if (isModEnabled('commande')) {
$langs->load("orders");
if (isModEnabled('facture')) {
- $newmenu->add("/commande/list.php?leftmenu=orders&search_status=-3&billed=0&contextpage=billableorders", $langs->trans("MenuOrdersToBill2"), 0, $user->rights->commande->lire, '', $mainmenu, 'orders', 0, '', '', '', img_picto('', 'order', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/commande/list.php?leftmenu=orders&search_status=-3&billed=0&contextpage=billableorders", $langs->trans("MenuOrdersToBill2"), 0, $user->hasRight('commande', 'lire'), '', $mainmenu, 'orders', 0, '', '', '', img_picto('', 'order', 'class="paddingright pictofixedwidth"'));
}
- //if ($usemenuhider || empty($leftmenu) || $leftmenu=="orders") $newmenu->add("/commande/", $langs->trans("StatusOrderToBill"), 1, $user->rights->commande->lire);
+ //if ($usemenuhider || empty($leftmenu) || $leftmenu=="orders") $newmenu->add("/commande/", $langs->trans("StatusOrderToBill"), 1, $user->hasRight('commande', 'lire'));
}
// Supplier Orders to bill
if (isModEnabled('supplier_invoice')) {
if (!empty($conf->global->SUPPLIER_MENU_ORDER_RECEIVED_INTO_INVOICE)) {
$langs->load("supplier");
- $newmenu->add("/fourn/commande/list.php?leftmenu=orders&search_status=5&billed=0", $langs->trans("MenuOrdersSupplierToBill"), 0, $user->rights->commande->lire, '', $mainmenu, 'orders', 0, '', '', '', img_picto('', 'supplier_order', 'class="paddingright pictofixedwidth"'));
- //if ($usemenuhider || empty($leftmenu) || $leftmenu=="orders") $newmenu->add("/commande/", $langs->trans("StatusOrderToBill"), 1, $user->rights->commande->lire);
+ $newmenu->add("/fourn/commande/list.php?leftmenu=orders&search_status=5&billed=0", $langs->trans("MenuOrdersSupplierToBill"), 0, $user->hasRight('commande', 'lire'), '', $mainmenu, 'orders', 0, '', '', '', img_picto('', 'supplier_order', 'class="paddingright pictofixedwidth"'));
+ //if ($usemenuhider || empty($leftmenu) || $leftmenu=="orders") $newmenu->add("/commande/", $langs->trans("StatusOrderToBill"), 1, $user->hasRight('commande', 'lire'));
}
}
@@ -1480,58 +1480,58 @@ function get_left_menu_billing($mainmenu, &$newmenu, $usemenuhider = 1, $leftmen
// Donations
if (isModEnabled('don')) {
$langs->load("donations");
- $newmenu->add("/don/index.php?leftmenu=donations&mainmenu=billing", $langs->trans("Donations"), 0, $user->rights->don->lire, '', $mainmenu, 'donations', 0, '', '', '', img_picto('', 'donation', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/don/index.php?leftmenu=donations&mainmenu=billing", $langs->trans("Donations"), 0, $user->hasRight('don', 'lire'), '', $mainmenu, 'donations', 0, '', '', '', img_picto('', 'donation', 'class="paddingright pictofixedwidth"'));
if ($usemenuhider || empty($leftmenu) || $leftmenu == "donations") {
- $newmenu->add("/don/card.php?leftmenu=donations&action=create", $langs->trans("NewDonation"), 1, $user->rights->don->creer);
- $newmenu->add("/don/list.php?leftmenu=donations", $langs->trans("List"), 1, $user->rights->don->lire);
+ $newmenu->add("/don/card.php?leftmenu=donations&action=create", $langs->trans("NewDonation"), 1, $user->hasRight('don', 'creer'));
+ $newmenu->add("/don/list.php?leftmenu=donations", $langs->trans("List"), 1, $user->hasRight('don', 'lire'));
}
- // if ($leftmenu=="donations") $newmenu->add("/don/stats/index.php",$langs->trans("Statistics"), 1, $user->rights->don->lire);
+ // if ($leftmenu=="donations") $newmenu->add("/don/stats/index.php",$langs->trans("Statistics"), 1, $user->hasRight('don', 'lire'));
}
// Taxes and social contributions
if (isModEnabled('tax')) {
- $newmenu->add("/compta/charges/index.php?leftmenu=tax&mainmenu=billing", $langs->trans("MenuTaxesAndSpecialExpenses"), 0, $user->rights->tax->charges->lire, '', $mainmenu, 'tax', 0, '', '', '', img_picto('', 'payment', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/compta/charges/index.php?leftmenu=tax&mainmenu=billing", $langs->trans("MenuTaxesAndSpecialExpenses"), 0, $user->hasRight('tax', 'charges', 'lire'), '', $mainmenu, 'tax', 0, '', '', '', img_picto('', 'payment', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/compta/sociales/list.php?leftmenu=tax_social", $langs->trans("MenuSocialContributions"), 1, $user->rights->tax->charges->lire);
+ $newmenu->add("/compta/sociales/list.php?leftmenu=tax_social", $langs->trans("MenuSocialContributions"), 1, $user->hasRight('tax', 'charges', 'lire'));
if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_social/i', $leftmenu)) {
- $newmenu->add("/compta/sociales/card.php?leftmenu=tax_social&action=create", $langs->trans("MenuNewSocialContribution"), 2, $user->rights->tax->charges->creer);
- $newmenu->add("/compta/sociales/list.php?leftmenu=tax_social", $langs->trans("List"), 2, $user->rights->tax->charges->lire);
- $newmenu->add("/compta/sociales/payments.php?leftmenu=tax_social&mainmenu=billing", $langs->trans("Payments"), 2, $user->rights->tax->charges->lire);
+ $newmenu->add("/compta/sociales/card.php?leftmenu=tax_social&action=create", $langs->trans("MenuNewSocialContribution"), 2, $user->hasRight('tax', 'charges', 'creer'));
+ $newmenu->add("/compta/sociales/list.php?leftmenu=tax_social", $langs->trans("List"), 2, $user->hasRight('tax', 'charges', 'lire'));
+ $newmenu->add("/compta/sociales/payments.php?leftmenu=tax_social&mainmenu=billing", $langs->trans("Payments"), 2, $user->hasRight('tax', 'charges', 'lire'));
}
// VAT
if (empty($conf->global->TAX_DISABLE_VAT_MENUS)) {
global $mysoc;
- $newmenu->add("/compta/tva/list.php?leftmenu=tax_vat&mainmenu=billing", $langs->transcountry("VAT", $mysoc->country_code), 1, $user->rights->tax->charges->lire, '', $mainmenu, 'tax_vat');
+ $newmenu->add("/compta/tva/list.php?leftmenu=tax_vat&mainmenu=billing", $langs->transcountry("VAT", $mysoc->country_code), 1, $user->hasRight('tax', 'charges', 'lire'), '', $mainmenu, 'tax_vat');
if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_vat/i', $leftmenu)) {
- $newmenu->add("/compta/tva/card.php?leftmenu=tax_vat&action=create", $langs->trans("New"), 2, $user->rights->tax->charges->creer);
- $newmenu->add("/compta/tva/list.php?leftmenu=tax_vat", $langs->trans("List"), 2, $user->rights->tax->charges->lire);
- $newmenu->add("/compta/tva/payments.php?mode=tvaonly&leftmenu=tax_vat", $langs->trans("Payments"), 2, $user->rights->tax->charges->lire);
- $newmenu->add("/compta/tva/index.php?leftmenu=tax_vat", $langs->trans("ReportByMonth"), 2, $user->rights->tax->charges->lire);
- $newmenu->add("/compta/tva/clients.php?leftmenu=tax_vat", $langs->trans("ReportByThirdparties"), 2, $user->rights->tax->charges->lire);
- $newmenu->add("/compta/tva/quadri_detail.php?leftmenu=tax_vat", $langs->trans("ReportByQuarter"), 2, $user->rights->tax->charges->lire);
+ $newmenu->add("/compta/tva/card.php?leftmenu=tax_vat&action=create", $langs->trans("New"), 2, $user->hasRight('tax', 'charges', 'creer'));
+ $newmenu->add("/compta/tva/list.php?leftmenu=tax_vat", $langs->trans("List"), 2, $user->hasRight('tax', 'charges', 'lire'));
+ $newmenu->add("/compta/tva/payments.php?mode=tvaonly&leftmenu=tax_vat", $langs->trans("Payments"), 2, $user->hasRight('tax', 'charges', 'lire'));
+ $newmenu->add("/compta/tva/index.php?leftmenu=tax_vat", $langs->trans("ReportByMonth"), 2, $user->hasRight('tax', 'charges', 'lire'));
+ $newmenu->add("/compta/tva/clients.php?leftmenu=tax_vat", $langs->trans("ReportByThirdparties"), 2, $user->hasRight('tax', 'charges', 'lire'));
+ $newmenu->add("/compta/tva/quadri_detail.php?leftmenu=tax_vat", $langs->trans("ReportByQuarter"), 2, $user->hasRight('tax', 'charges', 'lire'));
}
//Local Taxes 1
if ($mysoc->useLocalTax(1) && (isset($mysoc->localtax1_assuj) && $mysoc->localtax1_assuj == "1")) {
- $newmenu->add("/compta/localtax/list.php?leftmenu=tax_1_vat&mainmenu=billing&localTaxType=1", $langs->transcountry("LT1", $mysoc->country_code), 1, $user->rights->tax->charges->lire);
+ $newmenu->add("/compta/localtax/list.php?leftmenu=tax_1_vat&mainmenu=billing&localTaxType=1", $langs->transcountry("LT1", $mysoc->country_code), 1, $user->hasRight('tax', 'charges', 'lire'));
if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_1_vat/i', $leftmenu)) {
- $newmenu->add("/compta/localtax/card.php?leftmenu=tax_1_vat&action=create&localTaxType=1", $langs->trans("New"), 2, $user->rights->tax->charges->creer);
- $newmenu->add("/compta/localtax/list.php?leftmenu=tax_1_vat&localTaxType=1", $langs->trans("List"), 2, $user->rights->tax->charges->lire);
- $newmenu->add("/compta/localtax/index.php?leftmenu=tax_1_vat&localTaxType=1", $langs->trans("ReportByMonth"), 2, $user->rights->tax->charges->lire);
- $newmenu->add("/compta/localtax/clients.php?leftmenu=tax_1_vat&localTaxType=1", $langs->trans("ReportByThirdparties"), 2, $user->rights->tax->charges->lire);
- $newmenu->add("/compta/localtax/quadri_detail.php?leftmenu=tax_1_vat&localTaxType=1", $langs->trans("ReportByQuarter"), 2, $user->rights->tax->charges->lire);
+ $newmenu->add("/compta/localtax/card.php?leftmenu=tax_1_vat&action=create&localTaxType=1", $langs->trans("New"), 2, $user->hasRight('tax', 'charges', 'creer'));
+ $newmenu->add("/compta/localtax/list.php?leftmenu=tax_1_vat&localTaxType=1", $langs->trans("List"), 2, $user->hasRight('tax', 'charges', 'lire'));
+ $newmenu->add("/compta/localtax/index.php?leftmenu=tax_1_vat&localTaxType=1", $langs->trans("ReportByMonth"), 2, $user->hasRight('tax', 'charges', 'lire'));
+ $newmenu->add("/compta/localtax/clients.php?leftmenu=tax_1_vat&localTaxType=1", $langs->trans("ReportByThirdparties"), 2, $user->hasRight('tax', 'charges', 'lire'));
+ $newmenu->add("/compta/localtax/quadri_detail.php?leftmenu=tax_1_vat&localTaxType=1", $langs->trans("ReportByQuarter"), 2, $user->hasRight('tax', 'charges', 'lire'));
}
}
//Local Taxes 2
if ($mysoc->useLocalTax(2) && (isset($mysoc->localtax2_assuj) && $mysoc->localtax2_assuj == "1")) {
- $newmenu->add("/compta/localtax/list.php?leftmenu=tax_2_vat&mainmenu=billing&localTaxType=2", $langs->transcountry("LT2", $mysoc->country_code), 1, $user->rights->tax->charges->lire);
+ $newmenu->add("/compta/localtax/list.php?leftmenu=tax_2_vat&mainmenu=billing&localTaxType=2", $langs->transcountry("LT2", $mysoc->country_code), 1, $user->hasRight('tax', 'charges', 'lire'));
if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_2_vat/i', $leftmenu)) {
- $newmenu->add("/compta/localtax/card.php?leftmenu=tax_2_vat&action=create&localTaxType=2", $langs->trans("New"), 2, $user->rights->tax->charges->creer);
- $newmenu->add("/compta/localtax/list.php?leftmenu=tax_2_vat&localTaxType=2", $langs->trans("List"), 2, $user->rights->tax->charges->lire);
- $newmenu->add("/compta/localtax/index.php?leftmenu=tax_2_vat&localTaxType=2", $langs->trans("ReportByMonth"), 2, $user->rights->tax->charges->lire);
- $newmenu->add("/compta/localtax/clients.php?leftmenu=tax_2_vat&localTaxType=2", $langs->trans("ReportByThirdparties"), 2, $user->rights->tax->charges->lire);
- $newmenu->add("/compta/localtax/quadri_detail.php?leftmenu=tax_2_vat&localTaxType=2", $langs->trans("ReportByQuarter"), 2, $user->rights->tax->charges->lire);
+ $newmenu->add("/compta/localtax/card.php?leftmenu=tax_2_vat&action=create&localTaxType=2", $langs->trans("New"), 2, $user->hasRight('tax', 'charges', 'creer'));
+ $newmenu->add("/compta/localtax/list.php?leftmenu=tax_2_vat&localTaxType=2", $langs->trans("List"), 2, $user->hasRight('tax', 'charges', 'lire'));
+ $newmenu->add("/compta/localtax/index.php?leftmenu=tax_2_vat&localTaxType=2", $langs->trans("ReportByMonth"), 2, $user->hasRight('tax', 'charges', 'lire'));
+ $newmenu->add("/compta/localtax/clients.php?leftmenu=tax_2_vat&localTaxType=2", $langs->trans("ReportByThirdparties"), 2, $user->hasRight('tax', 'charges', 'lire'));
+ $newmenu->add("/compta/localtax/quadri_detail.php?leftmenu=tax_2_vat&localTaxType=2", $langs->trans("ReportByQuarter"), 2, $user->hasRight('tax', 'charges', 'lire'));
}
}
}
@@ -1540,32 +1540,32 @@ function get_left_menu_billing($mainmenu, &$newmenu, $usemenuhider = 1, $leftmen
// Salaries
if (isModEnabled('salaries')) {
$langs->load("salaries");
- $newmenu->add("/salaries/list.php?leftmenu=tax_salary&mainmenu=billing", $langs->trans("Salaries"), 0, $user->rights->salaries->read, '', $mainmenu, 'tax_salary', 0, '', '', '', img_picto('', 'salary', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/salaries/list.php?leftmenu=tax_salary&mainmenu=billing", $langs->trans("Salaries"), 0, $user->hasRight('salaries', 'read'), '', $mainmenu, 'tax_salary', 0, '', '', '', img_picto('', 'salary', 'class="paddingright pictofixedwidth"'));
if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_salary/i', $leftmenu)) {
- $newmenu->add("/salaries/card.php?leftmenu=tax_salary&action=create", $langs->trans("New"), 1, $user->rights->salaries->write);
- $newmenu->add("/salaries/list.php?leftmenu=tax_salary", $langs->trans("List"), 1, $user->rights->salaries->read);
- $newmenu->add("/salaries/payments.php?leftmenu=tax_salary", $langs->trans("Payments"), 1, $user->rights->salaries->read);
- $newmenu->add("/salaries/stats/index.php?leftmenu=tax_salary", $langs->trans("Statistics"), 1, $user->rights->salaries->read);
+ $newmenu->add("/salaries/card.php?leftmenu=tax_salary&action=create", $langs->trans("New"), 1, $user->hasRight('salaries', 'write'));
+ $newmenu->add("/salaries/list.php?leftmenu=tax_salary", $langs->trans("List"), 1, $user->hasRight('salaries', 'read'));
+ $newmenu->add("/salaries/payments.php?leftmenu=tax_salary", $langs->trans("Payments"), 1, $user->hasRight('salaries', 'read'));
+ $newmenu->add("/salaries/stats/index.php?leftmenu=tax_salary", $langs->trans("Statistics"), 1, $user->hasRight('salaries', 'read'));
}
}
// Loan
if (isModEnabled('loan')) {
$langs->load("loan");
- $newmenu->add("/loan/list.php?leftmenu=tax_loan&mainmenu=billing", $langs->trans("Loans"), 0, $user->rights->loan->read, '', $mainmenu, 'tax_loan', 0, '', '', '', img_picto('', 'loan', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/loan/list.php?leftmenu=tax_loan&mainmenu=billing", $langs->trans("Loans"), 0, $user->hasRight('loan', 'read'), '', $mainmenu, 'tax_loan', 0, '', '', '', img_picto('', 'loan', 'class="paddingright pictofixedwidth"'));
if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_loan/i', $leftmenu)) {
- $newmenu->add("/loan/card.php?leftmenu=tax_loan&action=create", $langs->trans("NewLoan"), 1, $user->rights->loan->write);
- //$newmenu->add("/loan/payment/list.php?leftmenu=tax_loan",$langs->trans("Payments"),2,$user->rights->loan->read);
+ $newmenu->add("/loan/card.php?leftmenu=tax_loan&action=create", $langs->trans("NewLoan"), 1, $user->hasRight('loan', 'write'));
+ //$newmenu->add("/loan/payment/list.php?leftmenu=tax_loan",$langs->trans("Payments"),2,$user->hasRight('loan', 'read'));
}
}
// Various payment
if (isModEnabled('banque') && empty($conf->global->BANK_USE_OLD_VARIOUS_PAYMENT)) {
$langs->load("banks");
- $newmenu->add("/compta/bank/various_payment/list.php?leftmenu=tax_various&mainmenu=billing", $langs->trans("MenuVariousPayment"), 0, $user->rights->banque->lire, '', $mainmenu, 'tax_various', 0, '', '', '', img_picto('', 'payment', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/compta/bank/various_payment/list.php?leftmenu=tax_various&mainmenu=billing", $langs->trans("MenuVariousPayment"), 0, $user->hasRight('banque', 'lire'), '', $mainmenu, 'tax_various', 0, '', '', '', img_picto('', 'payment', 'class="paddingright pictofixedwidth"'));
if ($usemenuhider || empty($leftmenu) || preg_match('/^tax_various/i', $leftmenu)) {
- $newmenu->add("/compta/bank/various_payment/card.php?leftmenu=tax_various&action=create", $langs->trans("New"), 1, $user->rights->banque->modifier);
- $newmenu->add("/compta/bank/various_payment/list.php?leftmenu=tax_various", $langs->trans("List"), 1, $user->rights->banque->lire);
+ $newmenu->add("/compta/bank/various_payment/card.php?leftmenu=tax_various&action=create", $langs->trans("New"), 1, $user->hasRight('banque', 'modifier'));
+ $newmenu->add("/compta/bank/various_payment/list.php?leftmenu=tax_various", $langs->trans("List"), 1, $user->hasRight('banque', 'lire'));
}
}
}
@@ -1591,75 +1591,75 @@ function get_left_menu_accountancy($mainmenu, &$newmenu, $usemenuhider = 1, $lef
// Accounting (Double entries)
if (isModEnabled('accounting')) {
- //$permtoshowmenu = (isModEnabled('accounting') || $user->rights->accounting->bind->write || $user->rights->compta->resultat->lire);
+ //$permtoshowmenu = (isModEnabled('accounting') || $user->hasRight('accounting', 'bind', 'write') || $user->hasRight('compta', 'resultat', 'lire'));
//$newmenu->add("/accountancy/index.php?leftmenu=accountancy", $langs->trans("MenuAccountancy"), 0, $permtoshowmenu, '', $mainmenu, 'accountancy');
// Configuration
- $newmenu->add("/accountancy/index.php?leftmenu=accountancy_admin", $langs->trans("Setup"), 0, $user->rights->accounting->chartofaccount, '', $mainmenu, 'accountancy_admin', 1, '', '', '', img_picto('', 'technic', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/accountancy/index.php?leftmenu=accountancy_admin", $langs->trans("Setup"), 0, $user->hasRight('accounting', 'chartofaccount'), '', $mainmenu, 'accountancy_admin', 1, '', '', '', img_picto('', 'technic', 'class="paddingright pictofixedwidth"'));
if ($usemenuhider || empty($leftmenu) || preg_match('/accountancy_admin/', $leftmenu)) {
global $mysoc;
- $newmenu->add("/accountancy/admin/index.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("General"), 1, $user->rights->accounting->chartofaccount, '', $mainmenu, 'accountancy_admin_general', 10);
+ $newmenu->add("/accountancy/admin/index.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("General"), 1, $user->hasRight('accounting', 'chartofaccount'), '', $mainmenu, 'accountancy_admin_general', 10);
// Fiscal year - Not really yet used. In a future will lock some periods.
if ($conf->global->MAIN_FEATURES_LEVEL > 1) {
- $newmenu->add("/accountancy/admin/fiscalyear.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("FiscalPeriod"), 1, $user->rights->accounting->fiscalyear->write, '', $mainmenu, 'fiscalyear', 20);
+ $newmenu->add("/accountancy/admin/fiscalyear.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("FiscalPeriod"), 1, $user->hasRight('accounting', 'fiscalyear', 'write'), '', $mainmenu, 'fiscalyear', 20);
}
- $newmenu->add("/accountancy/admin/journals_list.php?id=35&mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("AccountingJournals"), 1, $user->rights->accounting->chartofaccount, '', $mainmenu, 'accountancy_admin_journal', 30);
- $newmenu->add("/accountancy/admin/accountmodel.php?id=31&mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("Pcg_version"), 1, $user->rights->accounting->chartofaccount, '', $mainmenu, 'accountancy_admin_chartmodel', 40);
- $newmenu->add("/accountancy/admin/account.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("Chartofaccounts"), 1, $user->rights->accounting->chartofaccount, '', $mainmenu, 'accountancy_admin_chart', 41);
- $newmenu->add("/accountancy/admin/subaccount.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("ChartOfSubaccounts"), 1, $user->rights->accounting->chartofaccount, '', $mainmenu, 'accountancy_admin_chart', 41);
- $newmenu->add("/accountancy/admin/categories_list.php?id=32&search_country_id=".$mysoc->country_id."&mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("AccountingCategory"), 1, $user->rights->accounting->chartofaccount, '', $mainmenu, 'accountancy_admin_chart', 50);
- $newmenu->add("/accountancy/admin/defaultaccounts.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("MenuDefaultAccounts"), 1, $user->rights->accounting->chartofaccount, '', $mainmenu, 'accountancy_admin_default', 60);
+ $newmenu->add("/accountancy/admin/journals_list.php?id=35&mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("AccountingJournals"), 1, $user->hasRight('accounting', 'chartofaccount'), '', $mainmenu, 'accountancy_admin_journal', 30);
+ $newmenu->add("/accountancy/admin/accountmodel.php?id=31&mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("Pcg_version"), 1, $user->hasRight('accounting', 'chartofaccount'), '', $mainmenu, 'accountancy_admin_chartmodel', 40);
+ $newmenu->add("/accountancy/admin/account.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("Chartofaccounts"), 1, $user->hasRight('accounting', 'chartofaccount'), '', $mainmenu, 'accountancy_admin_chart', 41);
+ $newmenu->add("/accountancy/admin/subaccount.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("ChartOfSubaccounts"), 1, $user->hasRight('accounting', 'chartofaccount'), '', $mainmenu, 'accountancy_admin_chart', 41);
+ $newmenu->add("/accountancy/admin/categories_list.php?id=32&search_country_id=".$mysoc->country_id."&mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("AccountingCategory"), 1, $user->hasRight('accounting', 'chartofaccount'), '', $mainmenu, 'accountancy_admin_chart', 50);
+ $newmenu->add("/accountancy/admin/defaultaccounts.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("MenuDefaultAccounts"), 1, $user->hasRight('accounting', 'chartofaccount'), '', $mainmenu, 'accountancy_admin_default', 60);
if (isModEnabled('banque')) {
- $newmenu->add("/compta/bank/list.php?mainmenu=accountancy&leftmenu=accountancy_admin&search_status=-1", $langs->trans("MenuBankAccounts"), 1, $user->rights->accounting->chartofaccount, '', $mainmenu, 'accountancy_admin_bank', 70);
+ $newmenu->add("/compta/bank/list.php?mainmenu=accountancy&leftmenu=accountancy_admin&search_status=-1", $langs->trans("MenuBankAccounts"), 1, $user->hasRight('accounting', 'chartofaccount'), '', $mainmenu, 'accountancy_admin_bank', 70);
}
if (isModEnabled('facture') || ((isModEnabled('fournisseur') && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled('supplier_invoice'))) {
- $newmenu->add("/admin/dict.php?id=10&from=accountancy&search_country_id=".$mysoc->country_id."&mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("MenuVatAccounts"), 1, $user->rights->accounting->chartofaccount, '', $mainmenu, 'accountancy_admin_default', 80);
+ $newmenu->add("/admin/dict.php?id=10&from=accountancy&search_country_id=".$mysoc->country_id."&mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("MenuVatAccounts"), 1, $user->hasRight('accounting', 'chartofaccount'), '', $mainmenu, 'accountancy_admin_default', 80);
}
if (isModEnabled('tax')) {
- $newmenu->add("/admin/dict.php?id=7&from=accountancy&search_country_id=".$mysoc->country_id."&mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("MenuTaxAccounts"), 1, $user->rights->accounting->chartofaccount, '', $mainmenu, 'accountancy_admin_default', 90);
+ $newmenu->add("/admin/dict.php?id=7&from=accountancy&search_country_id=".$mysoc->country_id."&mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("MenuTaxAccounts"), 1, $user->hasRight('accounting', 'chartofaccount'), '', $mainmenu, 'accountancy_admin_default', 90);
}
if (isModEnabled('expensereport')) {
- $newmenu->add("/admin/dict.php?id=17&from=accountancy&mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("MenuExpenseReportAccounts"), 1, $user->rights->accounting->chartofaccount, '', $mainmenu, 'accountancy_admin_default', 100);
+ $newmenu->add("/admin/dict.php?id=17&from=accountancy&mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("MenuExpenseReportAccounts"), 1, $user->hasRight('accounting', 'chartofaccount'), '', $mainmenu, 'accountancy_admin_default', 100);
}
- $newmenu->add("/accountancy/admin/productaccount.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("MenuProductsAccounts"), 1, $user->rights->accounting->chartofaccount, '', $mainmenu, 'accountancy_admin_product', 110);
+ $newmenu->add("/accountancy/admin/productaccount.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("MenuProductsAccounts"), 1, $user->hasRight('accounting', 'chartofaccount'), '', $mainmenu, 'accountancy_admin_product', 110);
if ($conf->global->MAIN_FEATURES_LEVEL > 1) {
- $newmenu->add("/accountancy/admin/closure.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("MenuClosureAccounts"), 1, $user->rights->accounting->chartofaccount, '', $mainmenu, 'accountancy_admin_closure', 120);
+ $newmenu->add("/accountancy/admin/closure.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("MenuClosureAccounts"), 1, $user->hasRight('accounting', 'chartofaccount'), '', $mainmenu, 'accountancy_admin_closure', 120);
}
- $newmenu->add("/accountancy/admin/export.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("ExportOptions"), 1, $user->rights->accounting->chartofaccount, '', $mainmenu, 'accountancy_admin_export', 130);
+ $newmenu->add("/accountancy/admin/export.php?mainmenu=accountancy&leftmenu=accountancy_admin", $langs->trans("ExportOptions"), 1, $user->hasRight('accounting', 'chartofaccount'), '', $mainmenu, 'accountancy_admin_export', 130);
}
// Transfer in accounting
- $newmenu->add("/accountancy/index.php?leftmenu=accountancy_transfer", $langs->trans("TransferInAccounting"), 0, $user->rights->accounting->bind->write, '', $mainmenu, 'transfer', 1, '', '', '', img_picto('', 'long-arrow-alt-right', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/accountancy/index.php?leftmenu=accountancy_transfer", $langs->trans("TransferInAccounting"), 0, $user->hasRight('accounting', 'bind', 'write'), '', $mainmenu, 'transfer', 1, '', '', '', img_picto('', 'long-arrow-alt-right', 'class="paddingright pictofixedwidth"'));
// Binding
- // $newmenu->add("", $langs->trans("Binding"), 0, $user->rights->accounting->bind->write, '', $mainmenu, 'dispatch');
+ // $newmenu->add("", $langs->trans("Binding"), 0, $user->hasRight('accounting', 'bind', 'write'), '', $mainmenu, 'dispatch');
if (isModEnabled('facture') && empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_SALES)) {
- $newmenu->add("/accountancy/customer/index.php?leftmenu=accountancy_dispatch_customer&mainmenu=accountancy", $langs->trans("CustomersVentilation"), 1, $user->rights->accounting->bind->write, '', $mainmenu, 'dispatch_customer');
+ $newmenu->add("/accountancy/customer/index.php?leftmenu=accountancy_dispatch_customer&mainmenu=accountancy", $langs->trans("CustomersVentilation"), 1, $user->hasRight('accounting', 'bind', 'write'), '', $mainmenu, 'dispatch_customer');
if ($usemenuhider || empty($leftmenu) || preg_match('/accountancy_dispatch_customer/', $leftmenu)) {
- $newmenu->add("/accountancy/customer/list.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_customer", $langs->trans("ToBind"), 2, $user->rights->accounting->bind->write);
- $newmenu->add("/accountancy/customer/lines.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_customer", $langs->trans("Binded"), 2, $user->rights->accounting->bind->write);
+ $newmenu->add("/accountancy/customer/list.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_customer", $langs->trans("ToBind"), 2, $user->hasRight('accounting', 'bind', 'write'));
+ $newmenu->add("/accountancy/customer/lines.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_customer", $langs->trans("Binded"), 2, $user->hasRight('accounting', 'bind', 'write'));
}
}
if (isModEnabled('supplier_invoice') && empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_PURCHASES)) {
- $newmenu->add("/accountancy/supplier/index.php?leftmenu=accountancy_dispatch_supplier&mainmenu=accountancy", $langs->trans("SuppliersVentilation"), 1, $user->rights->accounting->bind->write, '', $mainmenu, 'dispatch_supplier');
+ $newmenu->add("/accountancy/supplier/index.php?leftmenu=accountancy_dispatch_supplier&mainmenu=accountancy", $langs->trans("SuppliersVentilation"), 1, $user->hasRight('accounting', 'bind', 'write'), '', $mainmenu, 'dispatch_supplier');
if ($usemenuhider || empty($leftmenu) || preg_match('/accountancy_dispatch_supplier/', $leftmenu)) {
- $newmenu->add("/accountancy/supplier/list.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_supplier", $langs->trans("ToBind"), 2, $user->rights->accounting->bind->write);
- $newmenu->add("/accountancy/supplier/lines.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_supplier", $langs->trans("Binded"), 2, $user->rights->accounting->bind->write);
+ $newmenu->add("/accountancy/supplier/list.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_supplier", $langs->trans("ToBind"), 2, $user->hasRight('accounting', 'bind', 'write'));
+ $newmenu->add("/accountancy/supplier/lines.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_supplier", $langs->trans("Binded"), 2, $user->hasRight('accounting', 'bind', 'write'));
}
}
if (isModEnabled('expensereport') && empty($conf->global->ACCOUNTING_DISABLE_BINDING_ON_EXPENSEREPORTS)) {
- $newmenu->add("/accountancy/expensereport/index.php?leftmenu=accountancy_dispatch_expensereport&mainmenu=accountancy", $langs->trans("ExpenseReportsVentilation"), 1, $user->rights->accounting->bind->write, '', $mainmenu, 'dispatch_expensereport');
+ $newmenu->add("/accountancy/expensereport/index.php?leftmenu=accountancy_dispatch_expensereport&mainmenu=accountancy", $langs->trans("ExpenseReportsVentilation"), 1, $user->hasRight('accounting', 'bind', 'write'), '', $mainmenu, 'dispatch_expensereport');
if ($usemenuhider || empty($leftmenu) || preg_match('/accountancy_dispatch_expensereport/', $leftmenu)) {
- $newmenu->add("/accountancy/expensereport/list.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_expensereport", $langs->trans("ToBind"), 2, $user->rights->accounting->bind->write);
- $newmenu->add("/accountancy/expensereport/lines.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_expensereport", $langs->trans("Binded"), 2, $user->rights->accounting->bind->write);
+ $newmenu->add("/accountancy/expensereport/list.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_expensereport", $langs->trans("ToBind"), 2, $user->hasRight('accounting', 'bind', 'write'));
+ $newmenu->add("/accountancy/expensereport/lines.php?mainmenu=accountancy&leftmenu=accountancy_dispatch_expensereport", $langs->trans("Binded"), 2, $user->hasRight('accounting', 'bind', 'write'));
}
}
// Journals
- if (isModEnabled('accounting') && !empty($user->rights->accounting->comptarapport->lire) && $mainmenu == 'accountancy') {
- $newmenu->add('', $langs->trans("RegistrationInAccounting"), 1, $user->rights->accounting->comptarapport->lire, '', '', '');
+ if (isModEnabled('accounting') && $user->hasRight('accounting', 'comptarapport', 'lire') && $mainmenu == 'accountancy') {
+ $newmenu->add('', $langs->trans("RegistrationInAccounting"), 1, $user->hasRight('accounting', 'comptarapport', 'lire'), '', '', '');
// Multi journal
$sql = "SELECT rowid, code, label, nature";
@@ -1714,13 +1714,13 @@ function get_left_menu_accountancy($mainmenu, &$newmenu, $usemenuhider = 1, $lef
if ($nature) {
$langs->load('accountancy');
$journallabel = $langs->transnoentities($objp->label); // Labels in this table are set by loading llx_accounting_abc.sql. Label can be 'ACCOUNTING_SELL_JOURNAL', 'InventoryJournal', ...
- $newmenu->add('/accountancy/journal/'.$nature.'journal.php?mainmenu=accountancy&leftmenu=accountancy_journal&id_journal='.$objp->rowid, $journallabel, 2, $user->rights->accounting->comptarapport->lire);
+ $newmenu->add('/accountancy/journal/'.$nature.'journal.php?mainmenu=accountancy&leftmenu=accountancy_journal&id_journal='.$objp->rowid, $journallabel, 2, $user->hasRight('accounting', 'comptarapport', 'lire'));
}
$i++;
}
} else {
// Should not happend. Entries are added
- $newmenu->add('', $langs->trans("NoJournalDefined"), 2, $user->rights->accounting->comptarapport->lire);
+ $newmenu->add('', $langs->trans("NoJournalDefined"), 2, $user->hasRight('accounting', 'comptarapport', 'lire'));
}
} else {
dol_print_error($db);
@@ -1730,80 +1730,80 @@ function get_left_menu_accountancy($mainmenu, &$newmenu, $usemenuhider = 1, $lef
// Files
if (empty($conf->global->ACCOUNTANCY_HIDE_EXPORT_FILES_MENU)) {
- $newmenu->add("/compta/accounting-files.php?mainmenu=accountancy&leftmenu=accountancy_files", $langs->trans("AccountantFiles"), 1, $user->rights->accounting->mouvements->lire);
+ $newmenu->add("/compta/accounting-files.php?mainmenu=accountancy&leftmenu=accountancy_files", $langs->trans("AccountantFiles"), 1, $user->hasRight('accounting', 'mouvements', 'lire'));
}
// Accounting
- $newmenu->add("/accountancy/index.php?leftmenu=accountancy_accountancy", $langs->trans("MenuAccountancy"), 0, $user->rights->accounting->mouvements->lire || $user->rights->accounting->comptarapport->lire, '', $mainmenu, 'accountancy', 1, '', '', '', img_picto('', 'accountancy', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/accountancy/index.php?leftmenu=accountancy_accountancy", $langs->trans("MenuAccountancy"), 0, $user->hasRight('accounting', 'mouvements', 'lire') || $user->hasRight('accounting', 'comptarapport', 'lire'), '', $mainmenu, 'accountancy', 1, '', '', '', img_picto('', 'accountancy', 'class="paddingright pictofixedwidth"'));
// General Ledger
- $newmenu->add("/accountancy/bookkeeping/listbyaccount.php?mainmenu=accountancy&leftmenu=accountancy_accountancy", $langs->trans("Bookkeeping"), 1, $user->rights->accounting->mouvements->lire);
+ $newmenu->add("/accountancy/bookkeeping/listbyaccount.php?mainmenu=accountancy&leftmenu=accountancy_accountancy", $langs->trans("Bookkeeping"), 1, $user->hasRight('accounting', 'mouvements', 'lire'));
// Journals
- $newmenu->add("/accountancy/bookkeeping/list.php?mainmenu=accountancy&leftmenu=accountancy_accountancy", $langs->trans("Journals"), 1, $user->rights->accounting->mouvements->lire);
+ $newmenu->add("/accountancy/bookkeeping/list.php?mainmenu=accountancy&leftmenu=accountancy_accountancy", $langs->trans("Journals"), 1, $user->hasRight('accounting', 'mouvements', 'lire'));
// Account Balance
- $newmenu->add("/accountancy/bookkeeping/balance.php?mainmenu=accountancy&leftmenu=accountancy_accountancy", $langs->trans("AccountBalance"), 1, $user->rights->accounting->mouvements->lire);
+ $newmenu->add("/accountancy/bookkeeping/balance.php?mainmenu=accountancy&leftmenu=accountancy_accountancy", $langs->trans("AccountBalance"), 1, $user->hasRight('accounting', 'mouvements', 'lire'));
// Closure
- $newmenu->add("/accountancy/closure/index.php?mainmenu=accountancy&leftmenu=accountancy_closure", $langs->trans("MenuAccountancyClosure"), 1, $user->rights->accounting->fiscalyear->write, '', $mainmenu, 'closure');
+ $newmenu->add("/accountancy/closure/index.php?mainmenu=accountancy&leftmenu=accountancy_closure", $langs->trans("MenuAccountancyClosure"), 1, $user->hasRight('accounting', 'fiscalyear', 'write'), '', $mainmenu, 'closure');
// Reports
- $newmenu->add("/accountancy/index.php?leftmenu=accountancy_report", $langs->trans("Reportings"), 1, $user->rights->accounting->comptarapport->lire, '', $mainmenu, 'ca');
+ $newmenu->add("/accountancy/index.php?leftmenu=accountancy_report", $langs->trans("Reportings"), 1, $user->hasRight('accounting', 'comptarapport', 'lire'), '', $mainmenu, 'ca');
if ($usemenuhider || empty($leftmenu) || preg_match('/accountancy_report/', $leftmenu)) {
- $newmenu->add("/compta/resultat/index.php?leftmenu=accountancy_report", $langs->trans("MenuReportInOut"), 2, $user->rights->accounting->comptarapport->lire);
- $newmenu->add("/compta/resultat/clientfourn.php?leftmenu=accountancy_report", $langs->trans("ByPredefinedAccountGroups"), 3, $user->rights->accounting->comptarapport->lire);
- $newmenu->add("/compta/resultat/result.php?leftmenu=accountancy_report", $langs->trans("ByPersonalizedAccountGroups"), 3, $user->rights->accounting->comptarapport->lire);
+ $newmenu->add("/compta/resultat/index.php?leftmenu=accountancy_report", $langs->trans("MenuReportInOut"), 2, $user->hasRight('accounting', 'comptarapport', 'lire'));
+ $newmenu->add("/compta/resultat/clientfourn.php?leftmenu=accountancy_report", $langs->trans("ByPredefinedAccountGroups"), 3, $user->hasRight('accounting', 'comptarapport', 'lire'));
+ $newmenu->add("/compta/resultat/result.php?leftmenu=accountancy_report", $langs->trans("ByPersonalizedAccountGroups"), 3, $user->hasRight('accounting', 'comptarapport', 'lire'));
}
$modecompta = 'CREANCES-DETTES';
- if (isModEnabled('accounting') && !empty($user->rights->accounting->comptarapport->lire) && $mainmenu == 'accountancy') {
+ if (isModEnabled('accounting') && $user->hasRight('accounting', 'comptarapport', 'lire') && $mainmenu == 'accountancy') {
$modecompta = 'BOOKKEEPING'; // Not yet implemented. Should be BOOKKEEPINGCOLLECTED
}
if ($modecompta) {
if ($usemenuhider || empty($leftmenu) || preg_match('/accountancy_report/', $leftmenu)) {
- $newmenu->add("/compta/stats/index.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ReportTurnover"), 2, $user->rights->accounting->comptarapport->lire);
- $newmenu->add("/compta/stats/casoc.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 3, $user->rights->accounting->comptarapport->lire);
- $newmenu->add("/compta/stats/cabyuser.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByUsers"), 3, $user->rights->accounting->comptarapport->lire);
- $newmenu->add("/compta/stats/cabyprodserv.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByProductsAndServices"), 3, $user->rights->accounting->comptarapport->lire);
- $newmenu->add("/compta/stats/byratecountry.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByVatRate"), 3, $user->rights->accounting->comptarapport->lire);
+ $newmenu->add("/compta/stats/index.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ReportTurnover"), 2, $user->hasRight('accounting', 'comptarapport', 'lire'));
+ $newmenu->add("/compta/stats/casoc.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 3, $user->hasRight('accounting', 'comptarapport', 'lire'));
+ $newmenu->add("/compta/stats/cabyuser.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByUsers"), 3, $user->hasRight('accounting', 'comptarapport', 'lire'));
+ $newmenu->add("/compta/stats/cabyprodserv.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByProductsAndServices"), 3, $user->hasRight('accounting', 'comptarapport', 'lire'));
+ $newmenu->add("/compta/stats/byratecountry.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByVatRate"), 3, $user->hasRight('accounting', 'comptarapport', 'lire'));
}
}
$modecompta = 'RECETTES-DEPENSES';
- //if (isModEnabled('accounting') && ! empty($user->rights->accounting->comptarapport->lire) && $mainmenu == 'accountancy') $modecompta=''; // Not yet implemented. Should be BOOKKEEPINGCOLLECTED
+ //if (isModEnabled('accounting') && $user->hasRight('accounting', 'comptarapport', 'lire') && $mainmenu == 'accountancy') $modecompta=''; // Not yet implemented. Should be BOOKKEEPINGCOLLECTED
if ($modecompta) {
if ($usemenuhider || empty($leftmenu) || preg_match('/accountancy_report/', $leftmenu)) {
- $newmenu->add("/compta/stats/index.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ReportTurnoverCollected"), 2, $user->rights->accounting->comptarapport->lire);
- $newmenu->add("/compta/stats/casoc.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 3, $user->rights->accounting->comptarapport->lire);
- $newmenu->add("/compta/stats/cabyuser.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByUsers"), 3, $user->rights->accounting->comptarapport->lire);
- //$newmenu->add("/compta/stats/cabyprodserv.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByProductsAndServices"),3,$user->rights->accounting->comptarapport->lire);
- //$newmenu->add("/compta/stats/byratecountry.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByVatRate"),3,$user->rights->accounting->comptarapport->lire);
+ $newmenu->add("/compta/stats/index.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ReportTurnoverCollected"), 2, $user->hasRight('accounting', 'comptarapport', 'lire'));
+ $newmenu->add("/compta/stats/casoc.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 3, $user->hasRight('accounting', 'comptarapport', 'lire'));
+ $newmenu->add("/compta/stats/cabyuser.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByUsers"), 3, $user->hasRight('accounting', 'comptarapport', 'lire'));
+ //$newmenu->add("/compta/stats/cabyprodserv.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByProductsAndServices"),3,$user->hasRight('accounting', 'comptarapport', 'lire'));
+ //$newmenu->add("/compta/stats/byratecountry.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByVatRate"),3,$user->hasRight('accounting', 'comptarapport', 'lire'));
}
}
$modecompta = 'CREANCES-DETTES';
- if (isModEnabled('accounting') && !empty($user->rights->accounting->comptarapport->lire) && $mainmenu == 'accountancy') {
+ if (isModEnabled('accounting') && $user->hasRight('accounting', 'comptarapport', 'lire') && $mainmenu == 'accountancy') {
$modecompta = 'BOOKKEEPING'; // Not yet implemented.
}
if ($modecompta && ((isModEnabled('fournisseur') && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled('supplier_invoice'))) {
if ($usemenuhider || empty($leftmenu) || preg_match('/accountancy_report/', $leftmenu)) {
- $newmenu->add("/compta/stats/supplier_turnover.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ReportPurchaseTurnover"), 2, $user->rights->accounting->comptarapport->lire);
- $newmenu->add("/compta/stats/supplier_turnover_by_thirdparty.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 3, $user->rights->accounting->comptarapport->lire);
- $newmenu->add("/compta/stats/supplier_turnover_by_prodserv.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByProductsAndServices"), 3, $user->rights->accounting->comptarapport->lire);
+ $newmenu->add("/compta/stats/supplier_turnover.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ReportPurchaseTurnover"), 2, $user->hasRight('accounting', 'comptarapport', 'lire'));
+ $newmenu->add("/compta/stats/supplier_turnover_by_thirdparty.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 3, $user->hasRight('accounting', 'comptarapport', 'lire'));
+ $newmenu->add("/compta/stats/supplier_turnover_by_prodserv.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByProductsAndServices"), 3, $user->hasRight('accounting', 'comptarapport', 'lire'));
}
}
$modecompta = 'RECETTES-DEPENSES';
- if (isModEnabled('accounting') && !empty($user->rights->accounting->comptarapport->lire) && $mainmenu == 'accountancy') {
+ if (isModEnabled('accounting') && $user->hasRight('accounting', 'comptarapport', 'lire') && $mainmenu == 'accountancy') {
$modecompta = 'BOOKKEEPINGCOLLECTED'; // Not yet implemented.
}
if ($modecompta && ((isModEnabled('fournisseur') && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled('supplier_invoice'))) {
if ($usemenuhider || empty($leftmenu) || preg_match('/accountancy_report/', $leftmenu)) {
- $newmenu->add("/compta/stats/supplier_turnover.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ReportPurchaseTurnoverCollected"), 2, $user->rights->accounting->comptarapport->lire);
- $newmenu->add("/compta/stats/supplier_turnover_by_thirdparty.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 3, $user->rights->accounting->comptarapport->lire);
+ $newmenu->add("/compta/stats/supplier_turnover.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ReportPurchaseTurnoverCollected"), 2, $user->hasRight('accounting', 'comptarapport', 'lire'));
+ $newmenu->add("/compta/stats/supplier_turnover_by_thirdparty.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 3, $user->hasRight('accounting', 'comptarapport', 'lire'));
}
}
}
@@ -1812,79 +1812,79 @@ function get_left_menu_accountancy($mainmenu, &$newmenu, $usemenuhider = 1, $lef
if (isModEnabled('comptabilite')) {
// Files
if (empty($conf->global->ACCOUNTANCY_HIDE_EXPORT_FILES_MENU)) {
- $newmenu->add("/compta/accounting-files.php?mainmenu=accountancy&leftmenu=accountancy_files", $langs->trans("AccountantFiles"), 0, $user->rights->compta->resultat->lire, '', $mainmenu, 'files');
+ $newmenu->add("/compta/accounting-files.php?mainmenu=accountancy&leftmenu=accountancy_files", $langs->trans("AccountantFiles"), 0, $user->hasRight('compta', 'resultat', 'lire'), '', $mainmenu, 'files', 0, '', '', '', img_picto('', 'accountancy', 'class="paddingright pictofixedwidth"'));
}
// Bilan, resultats
- $newmenu->add("/compta/resultat/index.php?leftmenu=report&mainmenu=accountancy", $langs->trans("Reportings"), 0, $user->rights->compta->resultat->lire, '', $mainmenu, 'ca');
+ $newmenu->add("/compta/resultat/index.php?leftmenu=report&mainmenu=accountancy", $langs->trans("Reportings"), 0, $user->hasRight('compta', 'resultat', 'lire'), '', $mainmenu, 'ca', 0, '', '', '', img_picto('', 'accountancy', 'class="paddingright pictofixedwidth"'));
if ($usemenuhider || empty($leftmenu) || preg_match('/report/', $leftmenu)) {
- $newmenu->add("/compta/resultat/index.php?leftmenu=report", $langs->trans("MenuReportInOut"), 1, $user->rights->compta->resultat->lire);
- $newmenu->add("/compta/resultat/clientfourn.php?leftmenu=report", $langs->trans("ByCompanies"), 2, $user->rights->compta->resultat->lire);
+ $newmenu->add("/compta/resultat/index.php?leftmenu=report", $langs->trans("MenuReportInOut"), 1, $user->hasRight('compta', 'resultat', 'lire'));
+ $newmenu->add("/compta/resultat/clientfourn.php?leftmenu=report", $langs->trans("ByCompanies"), 2, $user->hasRight('compta', 'resultat', 'lire'));
/* On verra ca avec module compabilite expert
- $newmenu->add("/compta/resultat/compteres.php?leftmenu=report","Compte de resultat",2,$user->rights->compta->resultat->lire);
- $newmenu->add("/compta/resultat/bilan.php?leftmenu=report","Bilan",2,$user->rights->compta->resultat->lire);
+ $newmenu->add("/compta/resultat/compteres.php?leftmenu=report","Compte de resultat",2,$user->hasRight('compta', 'resultat', 'lire'));
+ $newmenu->add("/compta/resultat/bilan.php?leftmenu=report","Bilan",2,$user->hasRight('compta', 'resultat', 'lire'));
*/
/*
- $newmenu->add("/compta/stats/cumul.php?leftmenu=report","Cumule",2,$user->rights->compta->resultat->lire);
+ $newmenu->add("/compta/stats/cumul.php?leftmenu=report","Cumule",2,$user->hasRight('compta', 'resultat', 'lire'));
if (isModEnabled('propal')) {
- $newmenu->add("/compta/stats/prev.php?leftmenu=report","Previsionnel",2,$user->rights->compta->resultat->lire);
- $newmenu->add("/compta/stats/comp.php?leftmenu=report","Transforme",2,$user->rights->compta->resultat->lire);
+ $newmenu->add("/compta/stats/prev.php?leftmenu=report","Previsionnel",2,$user->hasRight('compta', 'resultat', 'lire'));
+ $newmenu->add("/compta/stats/comp.php?leftmenu=report","Transforme",2,$user->hasRight('compta', 'resultat', 'lire'));
}
*/
$modecompta = 'CREANCES-DETTES';
- $newmenu->add("/compta/stats/index.php?leftmenu=report&modecompta=".$modecompta, $langs->trans("ReportTurnover"), 1, $user->rights->compta->resultat->lire);
- $newmenu->add("/compta/stats/casoc.php?leftmenu=report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 2, $user->rights->compta->resultat->lire);
- $newmenu->add("/compta/stats/cabyuser.php?leftmenu=report&modecompta=".$modecompta, $langs->trans("ByUsers"), 2, $user->rights->compta->resultat->lire);
- $newmenu->add("/compta/stats/cabyprodserv.php?leftmenu=report&modecompta=".$modecompta, $langs->trans("ByProductsAndServices"), 2, $user->rights->compta->resultat->lire);
- $newmenu->add("/compta/stats/byratecountry.php?leftmenu=report&modecompta=".$modecompta, $langs->trans("ByVatRate"), 2, $user->rights->compta->resultat->lire);
+ $newmenu->add("/compta/stats/index.php?leftmenu=report&modecompta=".$modecompta, $langs->trans("ReportTurnover"), 1, $user->hasRight('compta', 'resultat', 'lire'));
+ $newmenu->add("/compta/stats/casoc.php?leftmenu=report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 2, $user->hasRight('compta', 'resultat', 'lire'));
+ $newmenu->add("/compta/stats/cabyuser.php?leftmenu=report&modecompta=".$modecompta, $langs->trans("ByUsers"), 2, $user->hasRight('compta', 'resultat', 'lire'));
+ $newmenu->add("/compta/stats/cabyprodserv.php?leftmenu=report&modecompta=".$modecompta, $langs->trans("ByProductsAndServices"), 2, $user->hasRight('compta', 'resultat', 'lire'));
+ $newmenu->add("/compta/stats/byratecountry.php?leftmenu=report&modecompta=".$modecompta, $langs->trans("ByVatRate"), 2, $user->hasRight('compta', 'resultat', 'lire'));
$modecompta = 'RECETTES-DEPENSES';
- $newmenu->add("/compta/stats/index.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ReportTurnoverCollected"), 1, $user->rights->compta->resultat->lire);
- $newmenu->add("/compta/stats/casoc.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 2, $user->rights->compta->resultat->lire);
- $newmenu->add("/compta/stats/cabyuser.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByUsers"), 2, $user->rights->compta->resultat->lire);
+ $newmenu->add("/compta/stats/index.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ReportTurnoverCollected"), 1, $user->hasRight('compta', 'resultat', 'lire'));
+ $newmenu->add("/compta/stats/casoc.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 2, $user->hasRight('compta', 'resultat', 'lire'));
+ $newmenu->add("/compta/stats/cabyuser.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByUsers"), 2, $user->hasRight('compta', 'resultat', 'lire'));
//Achats
$modecompta = 'CREANCES-DETTES';
- $newmenu->add("/compta/stats/supplier_turnover.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ReportPurchaseTurnover"), 1, $user->rights->compta->resultat->lire);
- $newmenu->add("/compta/stats/supplier_turnover_by_thirdparty.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 2, $user->rights->compta->resultat->lire);
- $newmenu->add("/compta/stats/supplier_turnover_by_prodserv.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByProductsAndServices"), 2, $user->rights->compta->resultat->lire);
+ $newmenu->add("/compta/stats/supplier_turnover.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ReportPurchaseTurnover"), 1, $user->hasRight('compta', 'resultat', 'lire'));
+ $newmenu->add("/compta/stats/supplier_turnover_by_thirdparty.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 2, $user->hasRight('compta', 'resultat', 'lire'));
+ $newmenu->add("/compta/stats/supplier_turnover_by_prodserv.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByProductsAndServices"), 2, $user->hasRight('compta', 'resultat', 'lire'));
/*
$modecompta = 'RECETTES-DEPENSES';
- $newmenu->add("/compta/stats/index.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ReportPurchaseTurnoverCollected"), 1, $user->rights->compta->resultat->lire);
- $newmenu->add("/compta/stats/casoc.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 2, $user->rights->compta->resultat->lire);
- $newmenu->add("/compta/stats/cabyuser.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByUsers"), 2, $user->rights->compta->resultat->lire);
+ $newmenu->add("/compta/stats/index.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ReportPurchaseTurnoverCollected"), 1, $user->hasRight('compta', 'resultat', 'lire'));
+ $newmenu->add("/compta/stats/casoc.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByCompanies"), 2, $user->hasRight('compta', 'resultat', 'lire'));
+ $newmenu->add("/compta/stats/cabyuser.php?leftmenu=accountancy_report&modecompta=".$modecompta, $langs->trans("ByUsers"), 2, $user->hasRight('compta', 'resultat', 'lire'));
*/
// Journals
- $newmenu->add("/compta/journal/sellsjournal.php?leftmenu=report", $langs->trans("SellsJournal"), 1, $user->rights->compta->resultat->lire, '', '', '', 50);
- $newmenu->add("/compta/journal/purchasesjournal.php?leftmenu=report", $langs->trans("PurchasesJournal"), 1, $user->rights->compta->resultat->lire, '', '', '', 51);
+ $newmenu->add("/compta/journal/sellsjournal.php?leftmenu=report", $langs->trans("SellsJournal"), 1, $user->hasRight('compta', 'resultat', 'lire'), '', '', '', 50);
+ $newmenu->add("/compta/journal/purchasesjournal.php?leftmenu=report", $langs->trans("PurchasesJournal"), 1, $user->hasRight('compta', 'resultat', 'lire'), '', '', '', 51);
}
- //if ($leftmenu=="ca") $newmenu->add("/compta/journaux/index.php?leftmenu=ca",$langs->trans("Journals"),1,$user->rights->compta->resultat->lire||$user->rights->accounting->comptarapport->lire);
+ //if ($leftmenu=="ca") $newmenu->add("/compta/journaux/index.php?leftmenu=ca",$langs->trans("Journals"),1,$user->hasRight('compta', 'resultat', 'lire')||$user->hasRight('accounting', 'comptarapport', 'lire'));
}
// Intracomm report
if (isModEnabled('intracommreport')) {
- $newmenu->add("/intracommreport/list.php?leftmenu=intracommreport", $langs->trans("MenuIntracommReport"), 0, $user->rights->intracommreport->read, '', $mainmenu, 'intracommreport', 60, '', '', '', img_picto('', 'intracommreport', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/intracommreport/list.php?leftmenu=intracommreport", $langs->trans("MenuIntracommReport"), 0, $user->hasRight('intracommreport', 'read'), '', $mainmenu, 'intracommreport', 60, '', '', '', img_picto('', 'intracommreport', 'class="paddingright pictofixedwidth"'));
if ($usemenuhider || empty($leftmenu) || preg_match('/intracommreport/', $leftmenu)) {
// DEB / DES
- $newmenu->add("/intracommreport/card.php?action=create&leftmenu=intracommreport", $langs->trans("MenuIntracommReportNew"), 1, $user->rights->intracommreport->write, '', $mainmenu, 'intracommreport', 1);
- $newmenu->add("/intracommreport/list.php?leftmenu=intracommreport", $langs->trans("MenuIntracommReportList"), 1, $user->rights->intracommreport->read, '', $mainmenu, 'intracommreport', 1);
+ $newmenu->add("/intracommreport/card.php?action=create&leftmenu=intracommreport", $langs->trans("MenuIntracommReportNew"), 1, $user->hasRight('intracommreport', 'write'), '', $mainmenu, 'intracommreport', 1);
+ $newmenu->add("/intracommreport/list.php?leftmenu=intracommreport", $langs->trans("MenuIntracommReportList"), 1, $user->hasRight('intracommreport', 'read'), '', $mainmenu, 'intracommreport', 1);
}
}
// Assets
if (isModEnabled('asset')) {
- $newmenu->add("/asset/list.php?leftmenu=asset&mainmenu=accountancy", $langs->trans("MenuAssets"), 0, $user->rights->asset->read, '', $mainmenu, 'asset', 100, '', '', '', img_picto('', 'payment', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/asset/card.php?leftmenu=asset&action=create", $langs->trans("MenuNewAsset"), 1, $user->rights->asset->write);
- $newmenu->add("/asset/list.php?leftmenu=asset&mainmenu=accountancy", $langs->trans("MenuListAssets"), 1, $user->rights->asset->read);
- $newmenu->add("/asset/model/list.php?leftmenu=asset_model", $langs->trans("MenuAssetModels"), 1, (empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->rights->asset->read) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->asset->model_advance->read)), '', $mainmenu, 'asset_model');
+ $newmenu->add("/asset/list.php?leftmenu=asset&mainmenu=accountancy", $langs->trans("MenuAssets"), 0, $user->hasRight('asset', 'read'), '', $mainmenu, 'asset', 100, '', '', '', img_picto('', 'payment', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/asset/card.php?leftmenu=asset&action=create", $langs->trans("MenuNewAsset"), 1, $user->hasRight('asset', 'write'));
+ $newmenu->add("/asset/list.php?leftmenu=asset&mainmenu=accountancy", $langs->trans("MenuListAssets"), 1, $user->hasRight('asset', 'read'));
+ $newmenu->add("/asset/model/list.php?leftmenu=asset_model", $langs->trans("MenuAssetModels"), 1, (empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->hasRight('asset', 'read')) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->hasRight('asset', 'model_advance', 'read')), '', $mainmenu, 'asset_model');
if ($usemenuhider || empty($leftmenu) || preg_match('/asset_model/', $leftmenu)) {
- $newmenu->add("/asset/model/card.php?leftmenu=asset_model&action=create", $langs->trans("MenuNewAssetModel"), 2, (empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->rights->asset->write) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->asset->model_advance->write)));
- $newmenu->add("/asset/model/list.php?leftmenu=asset_model", $langs->trans("MenuListAssetModels"), 2, (empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->rights->asset->read) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->asset->model_advance->read)));
+ $newmenu->add("/asset/model/card.php?leftmenu=asset_model&action=create", $langs->trans("MenuNewAssetModel"), 2, (empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->hasRight('asset', 'write')) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->hasRight('asset', 'model_advance', 'write')));
+ $newmenu->add("/asset/model/list.php?leftmenu=asset_model", $langs->trans("MenuListAssetModels"), 2, (empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->hasRight('asset', 'read')) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && $user->hasRight('asset', 'model_advance', 'read')));
}
}
}
@@ -1910,56 +1910,56 @@ function get_left_menu_bank($mainmenu, &$newmenu, $usemenuhider = 1, $leftmenu =
// Bank-Cash account
if (isModEnabled('banque')) {
- $newmenu->add("/compta/bank/list.php?leftmenu=bank&mainmenu=bank", $langs->trans("MenuBankCash"), 0, $user->rights->banque->lire, '', $mainmenu, 'bank', 0, '', '', '', img_picto('', 'bank_account', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/compta/bank/list.php?leftmenu=bank&mainmenu=bank", $langs->trans("MenuBankCash"), 0, $user->hasRight('banque', 'lire'), '', $mainmenu, 'bank', 0, '', '', '', img_picto('', 'bank_account', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/compta/bank/card.php?action=create", $langs->trans("MenuNewFinancialAccount"), 1, $user->rights->banque->configurer);
- $newmenu->add("/compta/bank/list.php?leftmenu=bank&mainmenu=bank", $langs->trans("List"), 1, $user->rights->banque->lire, '', $mainmenu, 'bank');
- $newmenu->add("/compta/bank/bankentries_list.php", $langs->trans("ListTransactions"), 1, $user->rights->banque->lire);
- $newmenu->add("/compta/bank/budget.php", $langs->trans("ListTransactionsByCategory"), 1, $user->rights->banque->lire);
+ $newmenu->add("/compta/bank/card.php?action=create", $langs->trans("MenuNewFinancialAccount"), 1, $user->hasRight('banque', 'configurer'));
+ $newmenu->add("/compta/bank/list.php?leftmenu=bank&mainmenu=bank", $langs->trans("List"), 1, $user->hasRight('banque', 'lire'), '', $mainmenu, 'bank');
+ $newmenu->add("/compta/bank/bankentries_list.php", $langs->trans("ListTransactions"), 1, $user->hasRight('banque', 'lire'));
+ $newmenu->add("/compta/bank/budget.php", $langs->trans("ListTransactionsByCategory"), 1, $user->hasRight('banque', 'lire'));
- $newmenu->add("/compta/bank/transfer.php", $langs->trans("MenuBankInternalTransfer"), 1, $user->rights->banque->transfer);
+ $newmenu->add("/compta/bank/transfer.php", $langs->trans("MenuBankInternalTransfer"), 1, $user->hasRight('banque', 'transfer'));
}
if (isModEnabled('categorie')) {
$langs->load("categories");
- $newmenu->add("/categories/index.php?type=5", $langs->trans("Rubriques"), 1, $user->rights->categorie->creer, '', $mainmenu, 'tags');
- $newmenu->add("/compta/bank/categ.php", $langs->trans("RubriquesTransactions"), 1, $user->rights->banque->configurer, '', $mainmenu, 'tags');
+ $newmenu->add("/categories/index.php?type=5", $langs->trans("Rubriques"), 1, $user->hasRight('categorie', 'creer'), '', $mainmenu, 'tags');
+ $newmenu->add("/compta/bank/categ.php", $langs->trans("RubriquesTransactions"), 1, $user->hasRight('banque', 'configurer'), '', $mainmenu, 'tags');
}
// Direct debit order
if (isModEnabled('prelevement')) {
- $newmenu->add("/compta/prelevement/index.php?leftmenu=withdraw&mainmenu=bank", $langs->trans("PaymentByDirectDebit"), 0, $user->rights->prelevement->bons->lire, '', $mainmenu, 'withdraw', 0, '', '', '', img_picto('', 'payment', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/compta/prelevement/index.php?leftmenu=withdraw&mainmenu=bank", $langs->trans("PaymentByDirectDebit"), 0, $user->hasRight('prelevement', 'bons', 'lire'), '', $mainmenu, 'withdraw', 0, '', '', '', img_picto('', 'payment', 'class="paddingright pictofixedwidth"'));
if ($usemenuhider || empty($leftmenu) || $leftmenu == "withdraw") {
- $newmenu->add("/compta/prelevement/create.php?mainmenu=bank", $langs->trans("NewStandingOrder"), 1, $user->rights->prelevement->bons->creer);
+ $newmenu->add("/compta/prelevement/create.php?mainmenu=bank", $langs->trans("NewStandingOrder"), 1, $user->hasRight('prelevement', 'bons', 'creer'));
- $newmenu->add("/compta/prelevement/orders_list.php?mainmenu=bank", $langs->trans("WithdrawalsReceipts"), 1, $user->rights->prelevement->bons->lire);
- $newmenu->add("/compta/prelevement/list.php?mainmenu=bank", $langs->trans("WithdrawalsLines"), 1, $user->rights->prelevement->bons->lire);
- $newmenu->add("/compta/prelevement/rejets.php?mainmenu=bank", $langs->trans("Rejects"), 1, $user->rights->prelevement->bons->lire);
- $newmenu->add("/compta/prelevement/stats.php?mainmenu=bank", $langs->trans("Statistics"), 1, $user->rights->prelevement->bons->lire);
+ $newmenu->add("/compta/prelevement/orders_list.php?mainmenu=bank", $langs->trans("WithdrawalsReceipts"), 1, $user->hasRight('prelevement', 'bons', 'lire'));
+ $newmenu->add("/compta/prelevement/list.php?mainmenu=bank", $langs->trans("WithdrawalsLines"), 1, $user->hasRight('prelevement', 'bons', 'lire'));
+ $newmenu->add("/compta/prelevement/rejets.php?mainmenu=bank", $langs->trans("Rejects"), 1, $user->hasRight('prelevement', 'bons', 'lire'));
+ $newmenu->add("/compta/prelevement/stats.php?mainmenu=bank", $langs->trans("Statistics"), 1, $user->hasRight('prelevement', 'bons', 'lire'));
}
}
// Bank transfer order
if (isModEnabled('paymentbybanktransfer')) {
- $newmenu->add("/compta/paymentbybanktransfer/index.php?leftmenu=banktransfer&mainmenu=bank", $langs->trans("PaymentByBankTransfer"), 0, $user->rights->paymentbybanktransfer->read, '', $mainmenu, 'banktransfer', 0, '', '', '', img_picto('', 'payment', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/compta/paymentbybanktransfer/index.php?leftmenu=banktransfer&mainmenu=bank", $langs->trans("PaymentByBankTransfer"), 0, $user->hasRight('paymentbybanktransfer', 'read'), '', $mainmenu, 'banktransfer', 0, '', '', '', img_picto('', 'payment', 'class="paddingright pictofixedwidth"'));
if ($usemenuhider || empty($leftmenu) || $leftmenu == "banktransfer") {
- $newmenu->add("/compta/prelevement/create.php?type=bank-transfer&mainmenu=bank", $langs->trans("NewPaymentByBankTransfer"), 1, $user->rights->paymentbybanktransfer->create);
+ $newmenu->add("/compta/prelevement/create.php?type=bank-transfer&mainmenu=bank", $langs->trans("NewPaymentByBankTransfer"), 1, $user->hasRight('paymentbybanktransfer', 'create'));
- $newmenu->add("/compta/prelevement/orders_list.php?type=bank-transfer&mainmenu=bank", $langs->trans("PaymentByBankTransferReceipts"), 1, $user->rights->paymentbybanktransfer->read);
- $newmenu->add("/compta/prelevement/list.php?type=bank-transfer&mainmenu=bank", $langs->trans("PaymentByBankTransferLines"), 1, $user->rights->paymentbybanktransfer->read);
- $newmenu->add("/compta/prelevement/rejets.php?type=bank-transfer&mainmenu=bank", $langs->trans("Rejects"), 1, $user->rights->paymentbybanktransfer->read);
- $newmenu->add("/compta/prelevement/stats.php?type=bank-transfer&mainmenu=bank", $langs->trans("Statistics"), 1, $user->rights->paymentbybanktransfer->read);
+ $newmenu->add("/compta/prelevement/orders_list.php?type=bank-transfer&mainmenu=bank", $langs->trans("PaymentByBankTransferReceipts"), 1, $user->hasRight('paymentbybanktransfer', 'read'));
+ $newmenu->add("/compta/prelevement/list.php?type=bank-transfer&mainmenu=bank", $langs->trans("PaymentByBankTransferLines"), 1, $user->hasRight('paymentbybanktransfer', 'read'));
+ $newmenu->add("/compta/prelevement/rejets.php?type=bank-transfer&mainmenu=bank", $langs->trans("Rejects"), 1, $user->hasRight('paymentbybanktransfer', 'read'));
+ $newmenu->add("/compta/prelevement/stats.php?type=bank-transfer&mainmenu=bank", $langs->trans("Statistics"), 1, $user->hasRight('paymentbybanktransfer', 'read'));
}
}
// Management of checks
if (empty($conf->global->BANK_DISABLE_CHECK_DEPOSIT) && isModEnabled('banque') && (isModEnabled('facture') || !empty($conf->global->MAIN_MENU_CHEQUE_DEPOSIT_ON))) {
- $newmenu->add("/compta/paiement/cheque/index.php?leftmenu=checks&mainmenu=bank", $langs->trans("MenuChequeDeposits"), 0, $user->rights->banque->cheque, '', $mainmenu, 'checks', 0, '', '', '', img_picto('', 'payment', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/compta/paiement/cheque/index.php?leftmenu=checks&mainmenu=bank", $langs->trans("MenuChequeDeposits"), 0, $user->hasRight('banque', 'cheque'), '', $mainmenu, 'checks', 0, '', '', '', img_picto('', 'payment', 'class="paddingright pictofixedwidth"'));
if (preg_match('/checks/', $leftmenu)) {
- $newmenu->add("/compta/paiement/cheque/card.php?leftmenu=checks_bis&action=new&mainmenu=bank", $langs->trans("NewChequeDeposit"), 1, $user->rights->banque->cheque);
- $newmenu->add("/compta/paiement/cheque/list.php?leftmenu=checks_bis&mainmenu=bank", $langs->trans("List"), 1, $user->rights->banque->cheque);
+ $newmenu->add("/compta/paiement/cheque/card.php?leftmenu=checks_bis&action=new&mainmenu=bank", $langs->trans("NewChequeDeposit"), 1, $user->hasRight('banque', 'cheque'));
+ $newmenu->add("/compta/paiement/cheque/list.php?leftmenu=checks_bis&mainmenu=bank", $langs->trans("List"), 1, $user->hasRight('banque', 'cheque'));
}
}
@@ -1990,88 +1990,88 @@ function get_left_menu_products($mainmenu, &$newmenu, $usemenuhider = 1, $leftme
if ($mainmenu == 'products') {
// Products
if (isModEnabled('product')) {
- $newmenu->add("/product/index.php?leftmenu=product&type=0", $langs->trans("Products"), 0, $user->rights->produit->lire, '', $mainmenu, 'product', 0, '', '', '', img_picto('', 'product', 'class="pictofixedwidth"'));
- $newmenu->add("/product/card.php?leftmenu=product&action=create&type=0", $langs->trans("NewProduct"), 1, $user->rights->produit->creer);
- $newmenu->add("/product/list.php?leftmenu=product&type=0", $langs->trans("List"), 1, $user->rights->produit->lire);
+ $newmenu->add("/product/index.php?leftmenu=product&type=0", $langs->trans("Products"), 0, $user->hasRight('produit', 'lire'), '', $mainmenu, 'product', 0, '', '', '', img_picto('', 'product', 'class="pictofixedwidth"'));
+ $newmenu->add("/product/card.php?leftmenu=product&action=create&type=0", $langs->trans("NewProduct"), 1, $user->hasRight('produit', 'creer'));
+ $newmenu->add("/product/list.php?leftmenu=product&type=0", $langs->trans("List"), 1, $user->hasRight('produit', 'lire'));
if (isModEnabled('stock')) {
- $newmenu->add("/product/reassort.php?type=0", $langs->trans("MenuStocks"), 1, $user->rights->produit->lire && $user->rights->stock->lire);
+ $newmenu->add("/product/reassort.php?type=0", $langs->trans("MenuStocks"), 1, $user->hasRight('produit', 'lire') && $user->hasRight('stock', 'lire'));
}
if (isModEnabled('productbatch')) {
$langs->load("stocks");
- $newmenu->add("/product/reassortlot.php?type=0", $langs->trans("StocksByLotSerial"), 1, $user->rights->produit->lire && $user->rights->stock->lire);
- $newmenu->add("/product/stock/productlot_list.php", $langs->trans("LotSerial"), 1, $user->rights->produit->lire && $user->rights->stock->lire);
+ $newmenu->add("/product/reassortlot.php?type=0&search_subjecttolotserial=1", $langs->trans("StocksByLotSerial"), 1, $user->hasRight('produit', 'lire') && $user->hasRight('stock', 'lire'));
+ $newmenu->add("/product/stock/productlot_list.php", $langs->trans("LotSerial"), 1, $user->hasRight('produit', 'lire') && $user->hasRight('stock', 'lire'));
}
if (isModEnabled('variants')) {
- $newmenu->add("/variants/list.php", $langs->trans("VariantAttributes"), 1, $user->rights->produit->lire);
+ $newmenu->add("/variants/list.php", $langs->trans("VariantAttributes"), 1, $user->hasRight('produit', 'lire'));
}
if (isModEnabled('propal') || (isModEnabled('commande') && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled('facture') || isModEnabled('fournisseur') || isModEnabled('supplier_proposal') || isModEnabled('supplier_order') || isModEnabled('supplier_invoice')) {
- $newmenu->add("/product/stats/card.php?id=all&leftmenu=stats&type=0", $langs->trans("Statistics"), 1, $user->rights->produit->lire);
+ $newmenu->add("/product/stats/card.php?id=all&leftmenu=stats&type=0", $langs->trans("Statistics"), 1, $user->hasRight('produit', 'lire'));
}
// Categories
if (isModEnabled('categorie')) {
$langs->load("categories");
- $newmenu->add("/categories/index.php?leftmenu=cat&type=0", $langs->trans("Categories"), 1, $user->rights->categorie->lire, '', $mainmenu, 'cat');
- //if ($usemenuhider || empty($leftmenu) || $leftmenu=="cat") $newmenu->add("/categories/list.php", $langs->trans("List"), 1, $user->rights->categorie->lire);
+ $newmenu->add("/categories/index.php?leftmenu=cat&type=0", $langs->trans("Categories"), 1, $user->hasRight('categorie', 'lire'), '', $mainmenu, 'cat');
+ //if ($usemenuhider || empty($leftmenu) || $leftmenu=="cat") $newmenu->add("/categories/list.php", $langs->trans("List"), 1, $user->hasRight('categorie', 'lire'));
}
}
// Services
if (isModEnabled('service')) {
- $newmenu->add("/product/index.php?leftmenu=service&type=1", $langs->trans("Services"), 0, $user->rights->service->lire, '', $mainmenu, 'service', 0, '', '', '', img_picto('', 'service', 'class="pictofixedwidth"'));
- $newmenu->add("/product/card.php?leftmenu=service&action=create&type=1", $langs->trans("NewService"), 1, $user->rights->service->creer);
- $newmenu->add("/product/list.php?leftmenu=service&type=1", $langs->trans("List"), 1, $user->rights->service->lire);
+ $newmenu->add("/product/index.php?leftmenu=service&type=1", $langs->trans("Services"), 0, $user->hasRight('service', 'lire'), '', $mainmenu, 'service', 0, '', '', '', img_picto('', 'service', 'class="pictofixedwidth"'));
+ $newmenu->add("/product/card.php?leftmenu=service&action=create&type=1", $langs->trans("NewService"), 1, $user->hasRight('service', 'creer'));
+ $newmenu->add("/product/list.php?leftmenu=service&type=1", $langs->trans("List"), 1, $user->hasRight('service', 'lire'));
if (isModEnabled('propal') || isModEnabled('commande') || isModEnabled('facture') || (isModEnabled('fournisseur') && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled('supplier_proposal') || isModEnabled('supplier_order') || isModEnabled('supplier_invoice')) {
- $newmenu->add("/product/stats/card.php?id=all&leftmenu=stats&type=1", $langs->trans("Statistics"), 1, $user->rights->service->lire);
+ $newmenu->add("/product/stats/card.php?id=all&leftmenu=stats&type=1", $langs->trans("Statistics"), 1, $user->hasRight('service', 'lire'));
}
// Categories
if (isModEnabled('categorie')) {
$langs->load("categories");
- $newmenu->add("/categories/index.php?leftmenu=cat&type=0", $langs->trans("Categories"), 1, $user->rights->categorie->lire, '', $mainmenu, 'cat');
- //if ($usemenuhider || empty($leftmenu) || $leftmenu=="cat") $newmenu->add("/categories/list.php", $langs->trans("List"), 1, $user->rights->categorie->lire);
+ $newmenu->add("/categories/index.php?leftmenu=cat&type=0", $langs->trans("Categories"), 1, $user->hasRight('categorie', 'lire'), '', $mainmenu, 'cat');
+ //if ($usemenuhider || empty($leftmenu) || $leftmenu=="cat") $newmenu->add("/categories/list.php", $langs->trans("List"), 1, $user->hasRight('categorie', 'lire'));
}
}
// Warehouse
if (isModEnabled('stock')) {
$langs->load("stocks");
- $newmenu->add("/product/stock/index.php?leftmenu=stock", $langs->trans("Warehouses"), 0, $user->rights->stock->lire, '', $mainmenu, 'stock', 0, '', '', '', img_picto('', 'stock', 'class="pictofixedwidth"'));
- $newmenu->add("/product/stock/card.php?action=create", $langs->trans("MenuNewWarehouse"), 1, $user->rights->stock->creer);
- $newmenu->add("/product/stock/list.php", $langs->trans("List"), 1, $user->rights->stock->lire);
- $newmenu->add("/product/stock/movement_list.php", $langs->trans("Movements"), 1, $user->rights->stock->mouvement->lire);
+ $newmenu->add("/product/stock/index.php?leftmenu=stock", $langs->trans("Warehouses"), 0, $user->hasRight('stock', 'lire'), '', $mainmenu, 'stock', 0, '', '', '', img_picto('', 'stock', 'class="pictofixedwidth"'));
+ $newmenu->add("/product/stock/card.php?action=create", $langs->trans("MenuNewWarehouse"), 1, $user->hasRight('stock', 'creer'));
+ $newmenu->add("/product/stock/list.php", $langs->trans("List"), 1, $user->hasRight('stock', 'lire'));
+ $newmenu->add("/product/stock/movement_list.php", $langs->trans("Movements"), 1, $user->hasRight('stock', 'mouvement', 'lire'));
- $newmenu->add("/product/stock/massstockmove.php", $langs->trans("MassStockTransferShort"), 1, $user->rights->stock->mouvement->creer);
+ $newmenu->add("/product/stock/massstockmove.php", $langs->trans("MassStockTransferShort"), 1, $user->hasRight('stock', 'mouvement', 'creer'));
if (isModEnabled('supplier_order')) {
- $newmenu->add("/product/stock/replenish.php", $langs->trans("Replenishment"), 1, $user->rights->stock->mouvement->creer && $user->rights->fournisseur->lire);
+ $newmenu->add("/product/stock/replenish.php", $langs->trans("Replenishment"), 1, $user->hasRight('stock', 'mouvement', 'creer') && $user->hasRight('fournisseur', 'lire'));
}
- $newmenu->add("/product/stock/stockatdate.php", $langs->trans("StockAtDate"), 1, $user->rights->produit->lire && $user->rights->stock->lire);
+ $newmenu->add("/product/stock/stockatdate.php", $langs->trans("StockAtDate"), 1, $user->hasRight('produit', 'lire') && $user->hasRight('stock', 'lire'));
// Categories for warehouses
if (isModEnabled('categorie')) {
- $newmenu->add("/categories/index.php?leftmenu=stock&type=9", $langs->trans("Categories"), 1, $user->rights->categorie->lire, '', $mainmenu, 'cat');
+ $newmenu->add("/categories/index.php?leftmenu=stock&type=9", $langs->trans("Categories"), 1, $user->hasRight('categorie', 'lire'), '', $mainmenu, 'cat');
}
}
if (isModEnabled('stocktransfer')) {
- $newmenu->add('/product/stock/stocktransfer/stocktransfer_list.php', $langs->trans("ModuleStockTransferName"), 0, $user->rights->stocktransfer->stocktransfer->read, '', $mainmenu, 'stocktransfer', 0, '', '', '', img_picto('', 'stock', 'class="pictofixedwidth"'));
- $newmenu->add('/product/stock/stocktransfer/stocktransfer_card.php?action=create', $langs->trans('StockTransferNew'), 1, $user->rights->stocktransfer->stocktransfer->write);
- $newmenu->add('/product/stock/stocktransfer/stocktransfer_list.php', $langs->trans('List'), 1, $user->rights->stocktransfer->stocktransfer->read);
+ $newmenu->add('/product/stock/stocktransfer/stocktransfer_list.php', $langs->trans("ModuleStockTransferName"), 0, $user->hasRight('stocktransfer', 'stocktransfer', 'read'), '', $mainmenu, 'stocktransfer', 0, '', '', '', img_picto('', 'stock', 'class="pictofixedwidth"'));
+ $newmenu->add('/product/stock/stocktransfer/stocktransfer_card.php?action=create', $langs->trans('StockTransferNew'), 1, $user->hasRight('stocktransfer', 'stocktransfer', 'write'));
+ $newmenu->add('/product/stock/stocktransfer/stocktransfer_list.php', $langs->trans('List'), 1, $user->hasRight('stocktransfer', 'stocktransfer', 'read'));
}
// Inventory
if (isModEnabled('stock')) {
$langs->load("stocks");
if (empty($conf->global->MAIN_USE_ADVANCED_PERMS)) {
- $newmenu->add("/product/inventory/list.php?leftmenu=stock_inventories", $langs->trans("Inventories"), 0, $user->rights->stock->lire, '', $mainmenu, 'stock', 0, '', '', '', img_picto('', 'inventory', 'class="pictofixedwidth"'));
+ $newmenu->add("/product/inventory/list.php?leftmenu=stock_inventories", $langs->trans("Inventories"), 0, $user->hasRight('stock', 'lire'), '', $mainmenu, 'stock', 0, '', '', '', img_picto('', 'inventory', 'class="pictofixedwidth"'));
if ($usemenuhider || empty($leftmenu) || $leftmenu == "stock_inventories") {
- $newmenu->add("/product/inventory/card.php?action=create&leftmenu=stock_inventories", $langs->trans("NewInventory"), 1, $user->rights->stock->creer);
- $newmenu->add("/product/inventory/list.php?leftmenu=stock_inventories", $langs->trans("List"), 1, $user->rights->stock->lire);
+ $newmenu->add("/product/inventory/card.php?action=create&leftmenu=stock_inventories", $langs->trans("NewInventory"), 1, $user->hasRight('stock', 'creer'));
+ $newmenu->add("/product/inventory/list.php?leftmenu=stock_inventories", $langs->trans("List"), 1, $user->hasRight('stock', 'lire'));
}
} else {
- $newmenu->add("/product/inventory/list.php?leftmenu=stock_inventories", $langs->trans("Inventories"), 0, $user->rights->stock->inventory_advance->read, '', $mainmenu, 'stock', 0, '', '', '', img_picto('', 'inventory', 'class="pictofixedwidth"'));
+ $newmenu->add("/product/inventory/list.php?leftmenu=stock_inventories", $langs->trans("Inventories"), 0, $user->hasRight('stock', 'inventory_advance', 'read'), '', $mainmenu, 'stock', 0, '', '', '', img_picto('', 'inventory', 'class="pictofixedwidth"'));
if ($usemenuhider || empty($leftmenu) || $leftmenu == "stock_inventories") {
- $newmenu->add("/product/inventory/card.php?action=create&leftmenu=stock_inventories", $langs->trans("NewInventory"), 1, $user->rights->stock->inventory_advance->write);
- $newmenu->add("/product/inventory/list.php?leftmenu=stock_inventories", $langs->trans("List"), 1, $user->rights->stock->inventory_advance->read);
+ $newmenu->add("/product/inventory/card.php?action=create&leftmenu=stock_inventories", $langs->trans("NewInventory"), 1, $user->hasRight('stock', 'inventory_advance', 'write'));
+ $newmenu->add("/product/inventory/list.php?leftmenu=stock_inventories", $langs->trans("List"), 1, $user->hasRight('stock', 'inventory_advance', 'read'));
}
}
}
@@ -2079,33 +2079,33 @@ function get_left_menu_products($mainmenu, &$newmenu, $usemenuhider = 1, $leftme
// Shipments
if (isModEnabled('expedition')) {
$langs->load("sendings");
- $newmenu->add("/expedition/index.php?leftmenu=sendings", $langs->trans("Shipments"), 0, $user->rights->expedition->lire, '', $mainmenu, 'sendings', 0, '', '', '', img_picto('', 'shipment', 'class="pictofixedwidth"'));
- $newmenu->add("/expedition/card.php?action=create2&leftmenu=sendings", $langs->trans("NewSending"), 1, $user->rights->expedition->creer);
- $newmenu->add("/expedition/list.php?leftmenu=sendings", $langs->trans("List"), 1, $user->rights->expedition->lire);
+ $newmenu->add("/expedition/index.php?leftmenu=sendings", $langs->trans("Shipments"), 0, $user->hasRight('expedition', 'lire'), '', $mainmenu, 'sendings', 0, '', '', '', img_picto('', 'shipment', 'class="pictofixedwidth"'));
+ $newmenu->add("/expedition/card.php?action=create2&leftmenu=sendings", $langs->trans("NewSending"), 1, $user->hasRight('expedition', 'creer'));
+ $newmenu->add("/expedition/list.php?leftmenu=sendings", $langs->trans("List"), 1, $user->hasRight('expedition', 'lire'));
if ($usemenuhider || empty($leftmenu) || $leftmenu == "sendings") {
- $newmenu->add("/expedition/list.php?leftmenu=sendings&search_status=0", $langs->trans("StatusSendingDraftShort"), 2, $user->rights->expedition->lire);
- $newmenu->add("/expedition/list.php?leftmenu=sendings&search_status=1", $langs->trans("StatusSendingValidatedShort"), 2, $user->rights->expedition->lire);
- $newmenu->add("/expedition/list.php?leftmenu=sendings&search_status=2", $langs->trans("StatusSendingProcessedShort"), 2, $user->rights->expedition->lire);
+ $newmenu->add("/expedition/list.php?leftmenu=sendings&search_status=0", $langs->trans("StatusSendingDraftShort"), 2, $user->hasRight('expedition', 'lire'));
+ $newmenu->add("/expedition/list.php?leftmenu=sendings&search_status=1", $langs->trans("StatusSendingValidatedShort"), 2, $user->hasRight('expedition', 'lire'));
+ $newmenu->add("/expedition/list.php?leftmenu=sendings&search_status=2", $langs->trans("StatusSendingProcessedShort"), 2, $user->hasRight('expedition', 'lire'));
}
- $newmenu->add("/expedition/stats/index.php?leftmenu=sendings", $langs->trans("Statistics"), 1, $user->rights->expedition->lire);
+ $newmenu->add("/expedition/stats/index.php?leftmenu=sendings", $langs->trans("Statistics"), 1, $user->hasRight('expedition', 'lire'));
}
// Receptions
if (isModEnabled('reception')) {
$langs->load("receptions");
- $newmenu->add("/reception/index.php?leftmenu=receptions", $langs->trans("Receptions"), 0, $user->rights->reception->lire, '', $mainmenu, 'receptions', 0, '', '', '', img_picto('', 'dollyrevert', 'class="pictofixedwidth"'));
- $newmenu->add("/reception/card.php?action=create2&leftmenu=receptions", $langs->trans("NewReception"), 1, $user->rights->reception->creer);
- $newmenu->add("/reception/list.php?leftmenu=receptions", $langs->trans("List"), 1, $user->rights->reception->lire);
+ $newmenu->add("/reception/index.php?leftmenu=receptions", $langs->trans("Receptions"), 0, $user->hasRight('reception', 'lire'), '', $mainmenu, 'receptions', 0, '', '', '', img_picto('', 'dollyrevert', 'class="pictofixedwidth"'));
+ $newmenu->add("/reception/card.php?action=create2&leftmenu=receptions", $langs->trans("NewReception"), 1, $user->hasRight('reception', 'creer'));
+ $newmenu->add("/reception/list.php?leftmenu=receptions", $langs->trans("List"), 1, $user->hasRight('reception', 'lire'));
if ($usemenuhider || empty($leftmenu) || $leftmenu == "receptions") {
- $newmenu->add("/reception/list.php?leftmenu=receptions&search_status=0", $langs->trans("StatusReceptionDraftShort"), 2, $user->rights->reception->lire);
+ $newmenu->add("/reception/list.php?leftmenu=receptions&search_status=0", $langs->trans("StatusReceptionDraftShort"), 2, $user->hasRight('reception', 'lire'));
}
if ($usemenuhider || empty($leftmenu) || $leftmenu == "receptions") {
- $newmenu->add("/reception/list.php?leftmenu=receptions&search_status=1", $langs->trans("StatusReceptionValidatedShort"), 2, $user->rights->reception->lire);
+ $newmenu->add("/reception/list.php?leftmenu=receptions&search_status=1", $langs->trans("StatusReceptionValidatedShort"), 2, $user->hasRight('reception', 'lire'));
}
if ($usemenuhider || empty($leftmenu) || $leftmenu == "receptions") {
- $newmenu->add("/reception/list.php?leftmenu=receptions&search_status=2", $langs->trans("StatusReceptionProcessedShort"), 2, $user->rights->reception->lire);
+ $newmenu->add("/reception/list.php?leftmenu=receptions&search_status=2", $langs->trans("StatusReceptionProcessedShort"), 2, $user->hasRight('reception', 'lire'));
}
- $newmenu->add("/reception/stats/index.php?leftmenu=receptions", $langs->trans("Statistics"), 1, $user->rights->reception->lire);
+ $newmenu->add("/reception/stats/index.php?leftmenu=receptions", $langs->trans("Statistics"), 1, $user->hasRight('reception', 'lire'));
}
}
}
@@ -2129,17 +2129,17 @@ function get_left_menu_mrp($mainmenu, &$newmenu, $usemenuhider = 1, $leftmenu =
if (isModEnabled('bom') || isModEnabled('mrp')) {
$langs->load("mrp");
- $newmenu->add("", $langs->trans("MenuBOM"), 0, $user->rights->bom->read, '', $mainmenu, 'bom', 0, '', '', '', img_picto('', 'bom', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/bom/bom_card.php?leftmenu=bom&action=create", $langs->trans("NewBOM"), 1, $user->rights->bom->write, '', $mainmenu, 'bom');
- $newmenu->add("/bom/bom_list.php?leftmenu=bom", $langs->trans("List"), 1, $user->rights->bom->read, '', $mainmenu, 'bom');
+ $newmenu->add("", $langs->trans("MenuBOM"), 0, $user->hasRight('bom', 'read'), '', $mainmenu, 'bom', 0, '', '', '', img_picto('', 'bom', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/bom/bom_card.php?leftmenu=bom&action=create", $langs->trans("NewBOM"), 1, $user->hasRight('bom', 'write'), '', $mainmenu, 'bom');
+ $newmenu->add("/bom/bom_list.php?leftmenu=bom", $langs->trans("List"), 1, $user->hasRight('bom', 'read'), '', $mainmenu, 'bom');
}
if (isModEnabled('mrp')) {
$langs->load("mrp");
- $newmenu->add("", $langs->trans("MenuMRP"), 0, $user->rights->mrp->read, '', $mainmenu, 'mo', 0, '', '', '', img_picto('', 'mrp', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/mrp/mo_card.php?leftmenu=mo&action=create", $langs->trans("NewMO"), 1, $user->rights->mrp->write, '', $mainmenu, 'mo');
- $newmenu->add("/mrp/mo_list.php?leftmenu=mo", $langs->trans("List"), 1, $user->rights->mrp->read, '', $mainmenu, 'mo');
+ $newmenu->add("", $langs->trans("MenuMRP"), 0, $user->hasRight('mrp', 'read'), '', $mainmenu, 'mo', 0, '', '', '', img_picto('', 'mrp', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/mrp/mo_card.php?leftmenu=mo&action=create", $langs->trans("NewMO"), 1, $user->hasRight('mrp', 'write'), '', $mainmenu, 'mo');
+ $newmenu->add("/mrp/mo_list.php?leftmenu=mo", $langs->trans("List"), 1, $user->hasRight('mrp', 'read'), '', $mainmenu, 'mo');
}
}
}
@@ -2165,8 +2165,8 @@ function get_left_menu_projects($mainmenu, &$newmenu, $usemenuhider = 1, $leftme
$search_project_user = GETPOST('search_project_user', 'int');
$tmpentry = array(
- 'enabled'=>(isModEnabled('projet')),
- 'perms'=>(!empty($user->rights->projet->lire)),
+ 'enabled'=>isModEnabled('projet'),
+ 'perms'=>$user->hasRight('projet', 'lire'),
'module'=>'projet'
);
$listofmodulesforexternal = explode(',', $conf->global->MAIN_MODULES_FOR_EXTERNAL);
@@ -2184,8 +2184,8 @@ function get_left_menu_projects($mainmenu, &$newmenu, $usemenuhider = 1, $leftme
}
// Project assigned to user
- $newmenu->add("/projet/index.php?leftmenu=projects".($search_project_user ? '&search_project_user='.$search_project_user : ''), $titleboth, 0, $user->rights->projet->lire, '', $mainmenu, 'projects', 0, '', '', '', img_picto('', 'project', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/projet/card.php?leftmenu=projects&action=create".($search_project_user ? '&search_project_user='.$search_project_user : ''), $titlenew, 1, $user->rights->projet->creer);
+ $newmenu->add("/projet/index.php?leftmenu=projects".($search_project_user ? '&search_project_user='.$search_project_user : ''), $titleboth, 0, $user->hasRight('projet', 'lire'), '', $mainmenu, 'projects', 0, '', '', '', img_picto('', 'project', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/projet/card.php?leftmenu=projects&action=create".($search_project_user ? '&search_project_user='.$search_project_user : ''), $titlenew, 1, $user->hasRight('projet', 'creer'));
if (empty($conf->global->PROJECT_USE_OPPORTUNITIES)) {
$newmenu->add("/projet/list.php?leftmenu=projets".($search_project_user ? '&search_project_user='.$search_project_user : '').'&search_status=99', $langs->trans("List"), 1, $showmode, '', 'project', 'list');
@@ -2197,23 +2197,23 @@ function get_left_menu_projects($mainmenu, &$newmenu, $usemenuhider = 1, $leftme
$newmenu->add('/projet/list.php?mainmenu=project&leftmenu=list&search_usage_opportunity=1&search_status=99', $langs->trans("List"), 2, $showmode);
}
- $newmenu->add("/projet/stats/index.php?leftmenu=projects", $langs->trans("Statistics"), 1, $user->rights->projet->lire);
+ $newmenu->add("/projet/stats/index.php?leftmenu=projects", $langs->trans("Statistics"), 1, $user->hasRight('projet', 'lire'));
// Categories
if (isModEnabled('categorie')) {
$langs->load("categories");
- $newmenu->add("/categories/index.php?leftmenu=cat&type=6", $langs->trans("Categories"), 1, $user->rights->categorie->lire, '', $mainmenu, 'cat');
+ $newmenu->add("/categories/index.php?leftmenu=cat&type=6", $langs->trans("Categories"), 1, $user->hasRight('categorie', 'lire'), '', $mainmenu, 'cat');
}
if (empty($conf->global->PROJECT_HIDE_TASKS)) {
// Project affected to user
- $newmenu->add("/projet/activity/index.php?leftmenu=tasks".($search_project_user ? '&search_project_user='.$search_project_user : ''), $langs->trans("Activities"), 0, $user->rights->projet->lire, '', 'project', 'tasks', 0, '', '', '', img_picto('', 'projecttask', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/projet/tasks.php?leftmenu=tasks&action=create", $langs->trans("NewTask"), 1, $user->rights->projet->creer);
- $newmenu->add("/projet/tasks/list.php?leftmenu=tasks".($search_project_user ? '&search_project_user='.$search_project_user : ''), $langs->trans("List"), 1, $user->rights->projet->lire);
- $newmenu->add("/projet/tasks/stats/index.php?leftmenu=projects", $langs->trans("Statistics"), 1, $user->rights->projet->lire);
+ $newmenu->add("/projet/activity/index.php?leftmenu=tasks".($search_project_user ? '&search_project_user='.$search_project_user : ''), $langs->trans("Activities"), 0, $user->hasRight('projet', 'lire'), '', 'project', 'tasks', 0, '', '', '', img_picto('', 'projecttask', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/projet/tasks.php?leftmenu=tasks&action=create", $langs->trans("NewTask"), 1, $user->hasRight('projet', 'creer'));
+ $newmenu->add("/projet/tasks/list.php?leftmenu=tasks".($search_project_user ? '&search_project_user='.$search_project_user : ''), $langs->trans("List"), 1, $user->hasRight('projet', 'lire'));
+ $newmenu->add("/projet/tasks/stats/index.php?leftmenu=projects", $langs->trans("Statistics"), 1, $user->hasRight('projet', 'lire'));
- $newmenu->add("/projet/activity/perweek.php?leftmenu=tasks".($search_project_user ? '&search_project_user='.$search_project_user : ''), $langs->trans("NewTimeSpent"), 0, $user->rights->projet->lire, '', 'project', 'timespent', 0, '', '', '', img_picto('', 'timespent', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/projet/tasks/time.php?leftmenu=tasks".($search_project_user ? '&search_project_user='.$search_project_user : ''), $langs->trans("List"), 1, $user->rights->projet->lire);
+ $newmenu->add("/projet/activity/perweek.php?leftmenu=tasks".($search_project_user ? '&search_project_user='.$search_project_user : ''), $langs->trans("NewTimeSpent"), 0, $user->hasRight('projet', 'lire'), '', 'project', 'timespent', 0, '', '', '', img_picto('', 'timespent', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/projet/tasks/time.php?leftmenu=tasks".($search_project_user ? '&search_project_user='.$search_project_user : ''), $langs->trans("List"), 1, $user->hasRight('projet', 'lire'));
}
}
}
@@ -2238,32 +2238,32 @@ function get_left_menu_hrm($mainmenu, &$newmenu, $usemenuhider = 1, $leftmenu =
if (isModEnabled('hrm')) {
$langs->load("hrm");
- $newmenu->add("/user/list.php?mainmenu=hrm&leftmenu=hrm&mode=employee", $langs->trans("Employees"), 0, $user->rights->user->user->lire, '', $mainmenu, 'hrm', 0, '', '', '', img_picto('', 'user', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/user/card.php?mainmenu=hrm&leftmenu=hrm&action=create&employee=1", $langs->trans("NewEmployee"), 1, $user->rights->user->user->creer);
- $newmenu->add("/user/list.php?mainmenu=hrm&leftmenu=hrm&mode=employee&contextpage=employeelist", $langs->trans("List"), 1, $user->rights->user->user->lire);
+ $newmenu->add("/user/list.php?mainmenu=hrm&leftmenu=hrm&mode=employee", $langs->trans("Employees"), 0, $user->hasRight('user', 'user', 'read'), '', $mainmenu, 'hrm', 0, '', '', '', img_picto('', 'user', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/user/card.php?mainmenu=hrm&leftmenu=hrm&action=create&employee=1", $langs->trans("NewEmployee"), 1, $user->hasRight('user', 'user', 'write'));
+ $newmenu->add("/user/list.php?mainmenu=hrm&leftmenu=hrm&mode=employee&contextpage=employeelist", $langs->trans("List"), 1, $user->hasRight('user', 'user', 'read'));
- $newmenu->add("/hrm/skill_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("SkillsManagement"), 0, $user->rights->hrm->all->read, '', $mainmenu, 'hrm_sm', 0, '', '', '', img_picto('', 'shapes', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/hrm/skill_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("SkillsManagement"), 0, $user->hasRight('hrm', 'all', 'read'), '', $mainmenu, 'hrm_sm', 0, '', '', '', img_picto('', 'shapes', 'class="paddingright pictofixedwidth"'));
// Skills
- $newmenu->add("/hrm/skill_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("Skills"), 1, $user->rights->hrm->all->read, '', $mainmenu, 'hrm_sm', 0, '', '', '', img_picto('', 'shapes', 'class="paddingright pictofixedwidth"'));
- //$newmenu->add("/hrm/skill_card.php?mainmenu=hrm&leftmenu=hrm_sm&action=create", $langs->trans("NewSkill"), 1, $user->rights->hrm->all->write);
- //$newmenu->add("/hrm/skill_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("List"), 1, $user->rights->hrm->all->read);
+ $newmenu->add("/hrm/skill_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("Skills"), 1, $user->hasRight('hrm', 'all', 'read'), '', $mainmenu, 'hrm_sm', 0, '', '', '', img_picto('', 'shapes', 'class="paddingright pictofixedwidth"'));
+ //$newmenu->add("/hrm/skill_card.php?mainmenu=hrm&leftmenu=hrm_sm&action=create", $langs->trans("NewSkill"), 1, $user->hasRight('hrm', 'all', 'write'));
+ //$newmenu->add("/hrm/skill_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("List"), 1, $user->hasRight('hrm', 'all', 'read'));
// Job (Description of work to do and skills required)
- $newmenu->add("/hrm/job_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("JobsPosition"), 1, $user->rights->hrm->all->read, '', $mainmenu, 'hrm_sm', 0, '', '', '', img_picto('', 'technic', 'class="paddingright pictofixedwidth"'));
- //$newmenu->add("/hrm/job_card.php?mainmenu=hrm&leftmenu=hrm_sm&action=create", $langs->transnoentities("NewObject", $langs->trans("Job")), 1, $user->rights->hrm->all->write);
- //$newmenu->add("/hrm/job_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("List"), 1, $user->rights->hrm->all->read);
+ $newmenu->add("/hrm/job_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("JobsPosition"), 1, $user->hasRight('hrm', 'all', 'read'), '', $mainmenu, 'hrm_sm', 0, '', '', '', img_picto('', 'technic', 'class="paddingright pictofixedwidth"'));
+ //$newmenu->add("/hrm/job_card.php?mainmenu=hrm&leftmenu=hrm_sm&action=create", $langs->transnoentities("NewObject", $langs->trans("Job")), 1, $user->hasRight('hrm', 'all', 'write'));
+ //$newmenu->add("/hrm/job_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("List"), 1, $user->hasRight('hrm', 'all', 'read'));
// Position = Link job - user
- $newmenu->add("/hrm/position_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("EmployeePositions"), 1, $user->rights->hrm->all->read, '', $mainmenu, 'hrm_sm', 0, '', '', '', img_picto('', 'user-cog', 'class="paddingright pictofixedwidth"'));
- //$newmenu->add("/hrm/position.php?mainmenu=hrm&leftmenu=hrm_sm&action=create", $langs->transnoentities("NewObject", $langs->trans("Position")), 1, $user->rights->hrm->all->write);
- //$newmenu->add("/hrm/position_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("List"), 1, $user->rights->hrm->all->read);
+ $newmenu->add("/hrm/position_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("EmployeePositions"), 1, $user->hasRight('hrm', 'all', 'read'), '', $mainmenu, 'hrm_sm', 0, '', '', '', img_picto('', 'user-cog', 'class="paddingright pictofixedwidth"'));
+ //$newmenu->add("/hrm/position.php?mainmenu=hrm&leftmenu=hrm_sm&action=create", $langs->transnoentities("NewObject", $langs->trans("Position")), 1, $user->hasRight('hrm', 'all', 'write'));
+ //$newmenu->add("/hrm/position_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("List"), 1, $user->hasRight('hrm', 'all', 'read'));
// Evaluation
- $newmenu->add("/hrm/evaluation_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("Evals"), 1, $user->rights->hrm->evaluation->read, '', $mainmenu, 'hrm_sm', 0, '', '', '', img_picto('', 'user', 'class="paddingright pictofixedwidth"'));
- //$newmenu->add("/hrm/evaluation_card.php?mainmenu=hrm&leftmenu=hrm_sm&action=create", $langs->trans("NewEval"), 1, $user->rights->hrm->evaluation->write);
- //$newmenu->add("/hrm/evaluation_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("List"), 1, $user->rights->hrm->evaluation->read);
- $newmenu->add("/hrm/compare.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("SkillComparison"), 1, $user->rights->hrm->evaluation->read || $user->rights->hrm->compare_advance->read);
+ $newmenu->add("/hrm/evaluation_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("Evals"), 1, $user->hasRight('hrm', 'evaluation', 'read'), '', $mainmenu, 'hrm_sm', 0, '', '', '', img_picto('', 'user', 'class="paddingright pictofixedwidth"'));
+ //$newmenu->add("/hrm/evaluation_card.php?mainmenu=hrm&leftmenu=hrm_sm&action=create", $langs->trans("NewEval"), 1, $user->hasRight('hrm', 'evaluation', 'write'));
+ //$newmenu->add("/hrm/evaluation_list.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("List"), 1, $user->hasRight('hrm', 'evaluation', 'read'));
+ $newmenu->add("/hrm/compare.php?mainmenu=hrm&leftmenu=hrm_sm", $langs->trans("SkillComparison"), 1, $user->hasRight('hrm', 'evaluation', 'read') || $user->hasRight('hrm', 'compare_advance', 'read'));
}
// Leave/Holiday/Vacation module
@@ -2271,47 +2271,47 @@ function get_left_menu_hrm($mainmenu, &$newmenu, $usemenuhider = 1, $leftmenu =
// Load translation files required by the page
$langs->loadLangs(array("holiday", "trips"));
- $newmenu->add("/holiday/list.php?mainmenu=hrm&leftmenu=holiday", $langs->trans("CPTitreMenu"), 0, $user->rights->holiday->read, '', $mainmenu, 'holiday', 0, '', '', '', img_picto('', 'holiday', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/holiday/card.php?mainmenu=hrm&leftmenu=holiday&action=create", $langs->trans("New"), 1, $user->rights->holiday->write, '', $mainmenu);
- $newmenu->add("/holiday/card_group.php?mainmenu=hrm&leftmenu=holiday&action=request", $langs->trans("NewHolidayForGroup"), 1, ($user->rights->holiday->writeall && $user->rights->holiday->readall), '', $mainmenu, 'holiday_sm');
- $newmenu->add("/holiday/list.php?mainmenu=hrm&leftmenu=holiday", $langs->trans("List"), 1, $user->rights->holiday->read, '', $mainmenu);
+ $newmenu->add("/holiday/list.php?mainmenu=hrm&leftmenu=holiday", $langs->trans("CPTitreMenu"), 0, $user->hasRight('holiday', 'read'), '', $mainmenu, 'holiday', 0, '', '', '', img_picto('', 'holiday', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/holiday/card.php?mainmenu=hrm&leftmenu=holiday&action=create", $langs->trans("New"), 1, $user->hasRight('holiday', 'write'), '', $mainmenu);
+ $newmenu->add("/holiday/card_group.php?mainmenu=hrm&leftmenu=holiday&action=request", $langs->trans("NewHolidayForGroup"), 1, ($user->hasRight('holiday', 'writeall') && $user->hasRight('holiday', 'readall')), '', $mainmenu, 'holiday_sm');
+ $newmenu->add("/holiday/list.php?mainmenu=hrm&leftmenu=holiday", $langs->trans("List"), 1, $user->hasRight('holiday', 'read'), '', $mainmenu);
if ($usemenuhider || empty($leftmenu) || $leftmenu == "holiday") {
- $newmenu->add("/holiday/list.php?search_status=1&mainmenu=hrm&leftmenu=holiday", $langs->trans("DraftCP"), 2, $user->rights->holiday->read, '', $mainmenu, 'holiday_sm');
- $newmenu->add("/holiday/list.php?search_status=2&mainmenu=hrm&leftmenu=holiday", $langs->trans("ToReviewCP"), 2, $user->rights->holiday->read, '', $mainmenu, 'holiday_sm');
- $newmenu->add("/holiday/list.php?search_status=3&mainmenu=hrm&leftmenu=holiday", $langs->trans("ApprovedCP"), 2, $user->rights->holiday->read, '', $mainmenu, 'holiday_sm');
- $newmenu->add("/holiday/list.php?search_status=4&mainmenu=hrm&leftmenu=holiday", $langs->trans("CancelCP"), 2, $user->rights->holiday->read, '', $mainmenu, 'holiday_sm');
- $newmenu->add("/holiday/list.php?search_status=5&mainmenu=hrm&leftmenu=holiday", $langs->trans("RefuseCP"), 2, $user->rights->holiday->read, '', $mainmenu, 'holiday_sm');
+ $newmenu->add("/holiday/list.php?search_status=1&mainmenu=hrm&leftmenu=holiday", $langs->trans("DraftCP"), 2, $user->hasRight('holiday', 'read'), '', $mainmenu, 'holiday_sm');
+ $newmenu->add("/holiday/list.php?search_status=2&mainmenu=hrm&leftmenu=holiday", $langs->trans("ToReviewCP"), 2, $user->hasRight('holiday', 'read'), '', $mainmenu, 'holiday_sm');
+ $newmenu->add("/holiday/list.php?search_status=3&mainmenu=hrm&leftmenu=holiday", $langs->trans("ApprovedCP"), 2, $user->hasRight('holiday', 'read'), '', $mainmenu, 'holiday_sm');
+ $newmenu->add("/holiday/list.php?search_status=4&mainmenu=hrm&leftmenu=holiday", $langs->trans("CancelCP"), 2, $user->hasRight('holiday', 'read'), '', $mainmenu, 'holiday_sm');
+ $newmenu->add("/holiday/list.php?search_status=5&mainmenu=hrm&leftmenu=holiday", $langs->trans("RefuseCP"), 2, $user->hasRight('holiday', 'read'), '', $mainmenu, 'holiday_sm');
}
- $newmenu->add("/holiday/define_holiday.php?mainmenu=hrm&action=request", $langs->trans("MenuConfCP"), 1, $user->rights->holiday->read, '', $mainmenu, 'holiday_sm');
- $newmenu->add("/holiday/month_report.php?mainmenu=hrm&leftmenu=holiday", $langs->trans("MenuReportMonth"), 1, $user->rights->holiday->readall, '', $mainmenu, 'holiday_sm');
- $newmenu->add("/holiday/view_log.php?mainmenu=hrm&leftmenu=holiday&action=request", $langs->trans("MenuLogCP"), 1, $user->rights->holiday->define_holiday, '', $mainmenu, 'holiday_sm');
+ $newmenu->add("/holiday/define_holiday.php?mainmenu=hrm&action=request", $langs->trans("MenuConfCP"), 1, $user->hasRight('holiday', 'read'), '', $mainmenu, 'holiday_sm');
+ $newmenu->add("/holiday/month_report.php?mainmenu=hrm&leftmenu=holiday", $langs->trans("MenuReportMonth"), 1, $user->hasRight('holiday', 'readall'), '', $mainmenu, 'holiday_sm');
+ $newmenu->add("/holiday/view_log.php?mainmenu=hrm&leftmenu=holiday&action=request", $langs->trans("MenuLogCP"), 1, $user->hasRight('holiday', 'define_holiday'), '', $mainmenu, 'holiday_sm');
}
// Trips and expenses (old module)
if (isModEnabled('deplacement')) {
$langs->load("trips");
- $newmenu->add("/compta/deplacement/index.php?leftmenu=tripsandexpenses&mainmenu=hrm", $langs->trans("TripsAndExpenses"), 0, $user->rights->deplacement->lire, '', $mainmenu, 'tripsandexpenses', 0, '', '', '', img_picto('', 'trip', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/compta/deplacement/card.php?action=create&leftmenu=tripsandexpenses&mainmenu=hrm", $langs->trans("New"), 1, $user->rights->deplacement->creer);
- $newmenu->add("/compta/deplacement/list.php?leftmenu=tripsandexpenses&mainmenu=hrm", $langs->trans("List"), 1, $user->rights->deplacement->lire);
- $newmenu->add("/compta/deplacement/stats/index.php?leftmenu=tripsandexpenses&mainmenu=hrm", $langs->trans("Statistics"), 1, $user->rights->deplacement->lire);
+ $newmenu->add("/compta/deplacement/index.php?leftmenu=tripsandexpenses&mainmenu=hrm", $langs->trans("TripsAndExpenses"), 0, $user->hasRight('deplacement', 'lire'), '', $mainmenu, 'tripsandexpenses', 0, '', '', '', img_picto('', 'trip', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/compta/deplacement/card.php?action=create&leftmenu=tripsandexpenses&mainmenu=hrm", $langs->trans("New"), 1, $user->hasRight('deplacement', 'creer'));
+ $newmenu->add("/compta/deplacement/list.php?leftmenu=tripsandexpenses&mainmenu=hrm", $langs->trans("List"), 1, $user->hasRight('deplacement', 'lire'));
+ $newmenu->add("/compta/deplacement/stats/index.php?leftmenu=tripsandexpenses&mainmenu=hrm", $langs->trans("Statistics"), 1, $user->hasRight('deplacement', 'lire'));
}
// Expense report
if (isModEnabled('expensereport')) {
$langs->loadLangs(array("trips", "bills"));
- $newmenu->add("/expensereport/index.php?leftmenu=expensereport&mainmenu=hrm", $langs->trans("TripsAndExpenses"), 0, $user->rights->expensereport->lire, '', $mainmenu, 'expensereport', 0, '', '', '', img_picto('', 'trip', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/expensereport/card.php?action=create&leftmenu=expensereport&mainmenu=hrm", $langs->trans("New"), 1, $user->rights->expensereport->creer);
- $newmenu->add("/expensereport/list.php?leftmenu=expensereport&mainmenu=hrm", $langs->trans("List"), 1, $user->rights->expensereport->lire);
+ $newmenu->add("/expensereport/index.php?leftmenu=expensereport&mainmenu=hrm", $langs->trans("TripsAndExpenses"), 0, $user->hasRight('expensereport', 'lire'), '', $mainmenu, 'expensereport', 0, '', '', '', img_picto('', 'trip', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/expensereport/card.php?action=create&leftmenu=expensereport&mainmenu=hrm", $langs->trans("New"), 1, $user->hasRight('expensereport', 'creer'));
+ $newmenu->add("/expensereport/list.php?leftmenu=expensereport&mainmenu=hrm", $langs->trans("List"), 1, $user->hasRight('expensereport', 'lire'));
if ($usemenuhider || empty($leftmenu) || $leftmenu == "expensereport") {
- $newmenu->add("/expensereport/list.php?search_status=0&leftmenu=expensereport&mainmenu=hrm", $langs->trans("Draft"), 2, $user->rights->expensereport->lire);
- $newmenu->add("/expensereport/list.php?search_status=2&leftmenu=expensereport&mainmenu=hrm", $langs->trans("Validated"), 2, $user->rights->expensereport->lire);
- $newmenu->add("/expensereport/list.php?search_status=5&leftmenu=expensereport&mainmenu=hrm", $langs->trans("Approved"), 2, $user->rights->expensereport->lire);
- $newmenu->add("/expensereport/list.php?search_status=6&leftmenu=expensereport&mainmenu=hrm", $langs->trans("Paid"), 2, $user->rights->expensereport->lire);
- $newmenu->add("/expensereport/list.php?search_status=4&leftmenu=expensereport&mainmenu=hrm", $langs->trans("Canceled"), 2, $user->rights->expensereport->lire);
- $newmenu->add("/expensereport/list.php?search_status=99&leftmenu=expensereport&mainmenu=hrm", $langs->trans("Refused"), 2, $user->rights->expensereport->lire);
+ $newmenu->add("/expensereport/list.php?search_status=0&leftmenu=expensereport&mainmenu=hrm", $langs->trans("Draft"), 2, $user->hasRight('expensereport', 'lire'));
+ $newmenu->add("/expensereport/list.php?search_status=2&leftmenu=expensereport&mainmenu=hrm", $langs->trans("Validated"), 2, $user->hasRight('expensereport', 'lire'));
+ $newmenu->add("/expensereport/list.php?search_status=5&leftmenu=expensereport&mainmenu=hrm", $langs->trans("Approved"), 2, $user->hasRight('expensereport', 'lire'));
+ $newmenu->add("/expensereport/list.php?search_status=6&leftmenu=expensereport&mainmenu=hrm", $langs->trans("Paid"), 2, $user->hasRight('expensereport', 'lire'));
+ $newmenu->add("/expensereport/list.php?search_status=4&leftmenu=expensereport&mainmenu=hrm", $langs->trans("Canceled"), 2, $user->hasRight('expensereport', 'lire'));
+ $newmenu->add("/expensereport/list.php?search_status=99&leftmenu=expensereport&mainmenu=hrm", $langs->trans("Refused"), 2, $user->hasRight('expensereport', 'lire'));
}
- $newmenu->add("/expensereport/payment/list.php?leftmenu=expensereport_payments&mainmenu=hrm", $langs->trans("Payments"), 1, $user->rights->expensereport->lire);
- $newmenu->add("/expensereport/stats/index.php?leftmenu=expensereport&mainmenu=hrm", $langs->trans("Statistics"), 1, $user->rights->expensereport->lire);
+ $newmenu->add("/expensereport/payment/list.php?leftmenu=expensereport_payments&mainmenu=hrm", $langs->trans("Payments"), 1, $user->hasRight('expensereport', 'lire'));
+ $newmenu->add("/expensereport/stats/index.php?leftmenu=expensereport&mainmenu=hrm", $langs->trans("Statistics"), 1, $user->hasRight('expensereport', 'lire'));
}
if (isModEnabled('projet')) {
@@ -2320,7 +2320,7 @@ function get_left_menu_hrm($mainmenu, &$newmenu, $usemenuhider = 1, $leftmenu =
$search_project_user = GETPOST('search_project_user', 'int');
- $newmenu->add("/projet/activity/perweek.php?leftmenu=tasks".($search_project_user ? '&search_project_user='.$search_project_user : ''), $langs->trans("NewTimeSpent"), 0, $user->rights->projet->lire, '', $mainmenu, 'timespent', 0, '', '', '', img_picto('', 'timespent', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/projet/activity/perweek.php?leftmenu=tasks".($search_project_user ? '&search_project_user='.$search_project_user : ''), $langs->trans("NewTimeSpent"), 0, $user->hasRight('projet', 'lire'), '', $mainmenu, 'timespent', 0, '', '', '', img_picto('', 'timespent', 'class="paddingright pictofixedwidth"'));
}
}
}
@@ -2348,22 +2348,22 @@ function get_left_menu_tools($mainmenu, &$newmenu, $usemenuhider = 1, $leftmenu
}
if (isModEnabled('mailing')) {
- $newmenu->add("/comm/mailing/index.php?leftmenu=mailing", $langs->trans("EMailings"), 0, $user->rights->mailing->lire, '', $mainmenu, 'mailing', 0, '', '', '', img_picto('', 'email', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/comm/mailing/card.php?leftmenu=mailing&action=create", $langs->trans("NewMailing"), 1, $user->rights->mailing->creer);
- $newmenu->add("/comm/mailing/list.php?leftmenu=mailing", $langs->trans("List"), 1, $user->rights->mailing->lire);
+ $newmenu->add("/comm/mailing/index.php?leftmenu=mailing", $langs->trans("EMailings"), 0, $user->hasRight('mailing', 'lire'), '', $mainmenu, 'mailing', 0, '', '', '', img_picto('', 'email', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/comm/mailing/card.php?leftmenu=mailing&action=create", $langs->trans("NewMailing"), 1, $user->hasRight('mailing', 'creer'));
+ $newmenu->add("/comm/mailing/list.php?leftmenu=mailing", $langs->trans("List"), 1, $user->hasRight('mailing', 'lire'));
}
if (isModEnabled('export')) {
$langs->load("exports");
- $newmenu->add("/exports/index.php?leftmenu=export", $langs->trans("FormatedExport"), 0, $user->rights->export->lire, '', $mainmenu, 'export', 0, '', '', '', img_picto('', 'technic', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/exports/export.php?leftmenu=export", $langs->trans("NewExport"), 1, $user->rights->export->creer);
- //$newmenu->add("/exports/export.php?leftmenu=export",$langs->trans("List"),1, $user->rights->export->lire);
+ $newmenu->add("/exports/index.php?leftmenu=export", $langs->trans("FormatedExport"), 0, $user->hasRight('export', 'lire'), '', $mainmenu, 'export', 0, '', '', '', img_picto('', 'technic', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/exports/export.php?leftmenu=export", $langs->trans("NewExport"), 1, $user->hasRight('export', 'creer'));
+ //$newmenu->add("/exports/export.php?leftmenu=export",$langs->trans("List"),1, $user->hasRight('export', 'lire'));
}
if (isModEnabled('import')) {
$langs->load("exports");
- $newmenu->add("/imports/index.php?leftmenu=import", $langs->trans("FormatedImport"), 0, $user->rights->import->run, '', $mainmenu, 'import', 0, '', '', '', img_picto('', 'technic', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/imports/import.php?leftmenu=import", $langs->trans("NewImport"), 1, $user->rights->import->run);
+ $newmenu->add("/imports/index.php?leftmenu=import", $langs->trans("FormatedImport"), 0, $user->hasRight('import', 'run'), '', $mainmenu, 'import', 0, '', '', '', img_picto('', 'technic', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/imports/import.php?leftmenu=import", $langs->trans("NewImport"), 1, $user->hasRight('import', 'run'));
}
}
}
@@ -2387,39 +2387,39 @@ function get_left_menu_members($mainmenu, &$newmenu, $usemenuhider = 1, $leftmen
// Load translation files required by the page
$langs->loadLangs(array("members", "compta"));
- $newmenu->add("/adherents/index.php?leftmenu=members&mainmenu=members", $langs->trans("Members"), 0, $user->rights->adherent->lire, '', $mainmenu, 'members', 0, '', '', '', img_picto('', 'member', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/adherents/card.php?leftmenu=members&action=create", $langs->trans("NewMember"), 1, $user->rights->adherent->creer);
- $newmenu->add("/adherents/list.php?leftmenu=members", $langs->trans("List"), 1, $user->rights->adherent->lire);
- $newmenu->add("/adherents/list.php?leftmenu=members&statut=-1", $langs->trans("MenuMembersToValidate"), 2, $user->rights->adherent->lire);
- $newmenu->add("/adherents/list.php?leftmenu=members&statut=1", $langs->trans("MenuMembersValidated"), 2, $user->rights->adherent->lire);
- $newmenu->add("/adherents/list.php?leftmenu=members&statut=1&filter=withoutsubscription", $langs->trans("WithoutSubscription"), 3, $user->rights->adherent->lire);
- $newmenu->add("/adherents/list.php?leftmenu=members&statut=1&filter=uptodate", $langs->trans("UpToDate"), 3, $user->rights->adherent->lire);
- $newmenu->add("/adherents/list.php?leftmenu=members&statut=1&filter=outofdate", $langs->trans("OutOfDate"), 3, $user->rights->adherent->lire);
- $newmenu->add("/adherents/list.php?leftmenu=members&statut=0", $langs->trans("MenuMembersResiliated"), 2, $user->rights->adherent->lire);
- $newmenu->add("/adherents/stats/index.php?leftmenu=members", $langs->trans("MenuMembersStats"), 1, $user->rights->adherent->lire);
+ $newmenu->add("/adherents/index.php?leftmenu=members&mainmenu=members", $langs->trans("Members"), 0, $user->hasRight('adherent', 'read'), '', $mainmenu, 'members', 0, '', '', '', img_picto('', 'member', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/adherents/card.php?leftmenu=members&action=create", $langs->trans("NewMember"), 1, $user->hasRight('adherent', 'write'));
+ $newmenu->add("/adherents/list.php?leftmenu=members", $langs->trans("List"), 1, $user->hasRight('adherent', 'read'));
+ $newmenu->add("/adherents/list.php?leftmenu=members&statut=-1", $langs->trans("MenuMembersToValidate"), 2, $user->hasRight('adherent', 'read'));
+ $newmenu->add("/adherents/list.php?leftmenu=members&statut=1", $langs->trans("MenuMembersValidated"), 2, $user->hasRight('adherent', 'read'));
+ $newmenu->add("/adherents/list.php?leftmenu=members&statut=1&filter=withoutsubscription", $langs->trans("WithoutSubscription"), 3, $user->hasRight('adherent', 'read'));
+ $newmenu->add("/adherents/list.php?leftmenu=members&statut=1&filter=uptodate", $langs->trans("UpToDate"), 3, $user->hasRight('adherent', 'read'));
+ $newmenu->add("/adherents/list.php?leftmenu=members&statut=1&filter=outofdate", $langs->trans("OutOfDate"), 3, $user->hasRight('adherent', 'read'));
+ $newmenu->add("/adherents/list.php?leftmenu=members&statut=0", $langs->trans("MenuMembersResiliated"), 2, $user->hasRight('adherent', 'read'));
+ $newmenu->add("/adherents/stats/index.php?leftmenu=members", $langs->trans("MenuMembersStats"), 1, $user->hasRight('adherent', 'read'));
- $newmenu->add("/adherents/cartes/carte.php?leftmenu=export", $langs->trans("MembersCards"), 1, $user->rights->adherent->export);
+ $newmenu->add("/adherents/cartes/carte.php?leftmenu=export", $langs->trans("MembersCards"), 1, $user->hasRight('adherent', 'export'));
if (!empty($conf->global->MEMBER_LINK_TO_HTPASSWDFILE) && ($usemenuhider || empty($leftmenu) || $leftmenu == 'none' || $leftmenu == "members" || $leftmenu == "export")) {
- $newmenu->add("/adherents/htpasswd.php?leftmenu=export", $langs->trans("Filehtpasswd"), 1, $user->rights->adherent->export);
+ $newmenu->add("/adherents/htpasswd.php?leftmenu=export", $langs->trans("Filehtpasswd"), 1, $user->hasRight('adherent', 'export'));
}
if (isModEnabled('categorie')) {
$langs->load("categories");
- $newmenu->add("/categories/index.php?leftmenu=cat&type=3", $langs->trans("Categories"), 1, $user->rights->categorie->lire, '', $mainmenu, 'cat');
+ $newmenu->add("/categories/index.php?leftmenu=cat&type=3", $langs->trans("Categories"), 1, $user->hasRight('categorie', 'read'), '', $mainmenu, 'cat');
}
- $newmenu->add("/adherents/index.php?leftmenu=members&mainmenu=members", $langs->trans("Subscriptions"), 0, $user->rights->adherent->cotisation->lire, '', $mainmenu, 'members', 0, '', '', '', img_picto('', 'payment', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/adherents/list.php?leftmenu=members&statut=-1,1&mainmenu=members", $langs->trans("NewSubscription"), 1, $user->rights->adherent->cotisation->creer);
- $newmenu->add("/adherents/subscription/list.php?leftmenu=members", $langs->trans("List"), 1, $user->rights->adherent->cotisation->lire);
- $newmenu->add("/adherents/stats/index.php?leftmenu=members", $langs->trans("MenuMembersStats"), 1, $user->rights->adherent->lire);
+ $newmenu->add("/adherents/index.php?leftmenu=members&mainmenu=members", $langs->trans("Subscriptions"), 0, $user->hasRight('adherent', 'cotisation', 'read'), '', $mainmenu, 'members', 0, '', '', '', img_picto('', 'payment', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/adherents/list.php?leftmenu=members&statut=-1,1&mainmenu=members", $langs->trans("NewSubscription"), 1, $user->hasRight('adherent', 'cotisation', 'write'));
+ $newmenu->add("/adherents/subscription/list.php?leftmenu=members", $langs->trans("List"), 1, $user->hasRight('adherent', 'cotisation', 'read'));
+ $newmenu->add("/adherents/stats/index.php?leftmenu=members", $langs->trans("MenuMembersStats"), 1, $user->hasRight('adherent', 'read'));
- //$newmenu->add("/adherents/index.php?leftmenu=export&mainmenu=members",$langs->trans("Tools"),0,$user->rights->adherent->export, '', $mainmenu, 'export');
- //if (isModEnabled('export') && ($usemenuhider || empty($leftmenu) || $leftmenu=="export")) $newmenu->add("/exports/index.php?leftmenu=export",$langs->trans("Datas"),1,$user->rights->adherent->export);
+ //$newmenu->add("/adherents/index.php?leftmenu=export&mainmenu=members",$langs->trans("Tools"),0,$user->hasRight('adherent', 'export'), '', $mainmenu, 'export');
+ //if (isModEnabled('export') && ($usemenuhider || empty($leftmenu) || $leftmenu=="export")) $newmenu->add("/exports/index.php?leftmenu=export",$langs->trans("Datas"),1,$user->hasRight('adherent', 'export'));
// Type
- $newmenu->add("/adherents/type.php?leftmenu=setup&mainmenu=members", $langs->trans("MembersTypes"), 0, $user->rights->adherent->configurer, '', $mainmenu, 'setup', 0, '', '', '', img_picto('', 'members', 'class="paddingright pictofixedwidth"'));
- $newmenu->add("/adherents/type.php?leftmenu=setup&mainmenu=members&action=create", $langs->trans("New"), 1, $user->rights->adherent->configurer);
- $newmenu->add("/adherents/type.php?leftmenu=setup&mainmenu=members", $langs->trans("List"), 1, $user->rights->adherent->configurer);
+ $newmenu->add("/adherents/type.php?leftmenu=setup&mainmenu=members", $langs->trans("MembersTypes"), 0, $user->hasRight('adherent', 'configurer'), '', $mainmenu, 'setup', 0, '', '', '', img_picto('', 'members', 'class="paddingright pictofixedwidth"'));
+ $newmenu->add("/adherents/type.php?leftmenu=setup&mainmenu=members&action=create", $langs->trans("New"), 1, $user->hasRight('adherent', 'configurer'));
+ $newmenu->add("/adherents/type.php?leftmenu=setup&mainmenu=members", $langs->trans("List"), 1, $user->hasRight('adherent', 'configurer'));
}
}
}
diff --git a/htdocs/core/modules/DolibarrModules.class.php b/htdocs/core/modules/DolibarrModules.class.php
index 627a13a7844..2076c6a348e 100644
--- a/htdocs/core/modules/DolibarrModules.class.php
+++ b/htdocs/core/modules/DolibarrModules.class.php
@@ -1368,7 +1368,7 @@ class DolibarrModules // Can not be abstract, because we need to instantiate it
// For the moment, we manage this with hard coded exception
//print "Remove box ".$file.' ';
if ($file == 'box_graph_product_distribution.php') {
- if (!empty($conf->product->enabled) || !empty($conf->service->enabled)) {
+ if (isModEnabled("product") || isModEnabled("service")) {
dol_syslog("We discard deleting module ".$file." because another module still active requires it.");
continue;
}
diff --git a/htdocs/core/modules/action/rapport.pdf.php b/htdocs/core/modules/action/rapport.class.php
similarity index 99%
rename from htdocs/core/modules/action/rapport.pdf.php
rename to htdocs/core/modules/action/rapport.class.php
index 2b4ec29c880..61579399247 100644
--- a/htdocs/core/modules/action/rapport.pdf.php
+++ b/htdocs/core/modules/action/rapport.class.php
@@ -19,7 +19,7 @@
*/
/**
- * \file htdocs/core/modules/action/rapport.pdf.php
+ * \file htdocs/core/modules/action/rapport.class.php
* \ingroup commercial
* \brief File to build PDF with events
*/
diff --git a/htdocs/core/modules/asset/doc/pdf_standard_asset.modules.php b/htdocs/core/modules/asset/doc/pdf_standard_asset.modules.php
index de378ee79a8..e313c612eb0 100644
--- a/htdocs/core/modules/asset/doc/pdf_standard_asset.modules.php
+++ b/htdocs/core/modules/asset/doc/pdf_standard_asset.modules.php
@@ -669,13 +669,13 @@ class pdf_standard_asset extends ModelePDFAsset
// Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva
$prev_progress = $object->lines[$i]->get_prev_progress($object->id);
if ($prev_progress > 0 && !empty($object->lines[$i]->situation_percent)) { // Compute progress from previous situation
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $sign * $object->lines[$i]->multicurrency_total_tva * ($object->lines[$i]->situation_percent - $prev_progress) / $object->lines[$i]->situation_percent;
} else {
$tvaligne = $sign * $object->lines[$i]->total_tva * ($object->lines[$i]->situation_percent - $prev_progress) / $object->lines[$i]->situation_percent;
}
} else {
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $sign * $object->lines[$i]->multicurrency_total_tva;
} else {
$tvaligne = $sign * $object->lines[$i]->total_tva;
diff --git a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php
index cb73b6fc282..b1476b393d0 100644
--- a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php
+++ b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php
@@ -529,7 +529,7 @@ class pdf_einstein extends ModelePDFCommandes
$pdf->MultiCell($this->page_largeur - $this->marge_droite - $this->postotalht, 3, $total_excl_tax, 0, 'R', 0);
// Collection of totals by value of vat in $this->vat["rate"] = total_tva
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $object->lines[$i]->multicurrency_total_tva;
} else {
$tvaligne = $object->lines[$i]->total_tva;
@@ -774,7 +774,7 @@ class pdf_einstein extends ModelePDFCommandes
}
*/
/* TODO
- else if (! empty($object->availability_code))
+ else if (!empty($object->availability_code))
{
$pdf->SetXY($this->marge_gauche, $posy);
$pdf->SetTextColor(200,0,0);
@@ -938,14 +938,14 @@ class pdf_einstein extends ModelePDFCommandes
$pdf->SetXY($col1x, $tab2_top + 0);
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT").(is_object($outputlangsbis) ? ' / '.$outputlangsbis->transnoentities("TotalHT") : ''), 0, 'L', 1);
- $total_ht = ((!empty($conf->multicurrency->enabled) && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
+ $total_ht = ((isModEnabled("multicurrency") && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
$pdf->SetXY($col2x, $tab2_top + 0);
$pdf->MultiCell($largcol2, $tab2_hl, price($total_ht + (!empty($object->remise) ? $object->remise : 0), 0, $outputlangs), 0, 'R', 1);
// Show VAT by rates and total
$pdf->SetFillColor(248, 248, 248);
- $total_ttc = (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
+ $total_ttc = (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
$this->atleastoneratenotnull = 0;
if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) {
@@ -954,7 +954,7 @@ class pdf_einstein extends ModelePDFCommandes
// Nothing to do
} else {
//Local tax 1 before VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('1', '3', '5'))) {
@@ -984,7 +984,7 @@ class pdf_einstein extends ModelePDFCommandes
}
//}
//Local tax 2 before VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('1', '3', '5'))) {
@@ -1044,7 +1044,7 @@ class pdf_einstein extends ModelePDFCommandes
}
//Local tax 1 after VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('2', '4', '6'))) {
@@ -1075,7 +1075,7 @@ class pdf_einstein extends ModelePDFCommandes
}
//}
//Local tax 2 after VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('2', '4', '6'))) {
diff --git a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php
index 8930481d219..34cdb41e6b8 100644
--- a/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php
+++ b/htdocs/core/modules/commande/doc/pdf_eratosthene.modules.php
@@ -754,7 +754,7 @@ class pdf_eratosthene extends ModelePDFCommandes
// Collection of totals by value of vat in $this->tva["rate"] = total_tva
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $object->lines[$i]->multicurrency_total_tva;
} else {
$tvaligne = $object->lines[$i]->total_tva;
@@ -992,7 +992,7 @@ class pdf_eratosthene extends ModelePDFCommandes
}
*/
/* TODO
- else if (! empty($object->availability_code))
+ else if (!empty($object->availability_code))
{
$pdf->SetXY($this->marge_gauche, $posy);
$pdf->SetTextColor(200,0,0);
@@ -1152,14 +1152,14 @@ class pdf_eratosthene extends ModelePDFCommandes
$pdf->SetFillColor(255, 255, 255);
$pdf->SetXY($col1x, $tab2_top + 0);
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT").(is_object($outputlangsbis) ? ' / '.$outputlangsbis->transnoentities("TotalHT") : ''), 0, 'L', 1);
- $total_ht = ((!empty($conf->multicurrency->enabled) && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
+ $total_ht = ((isModEnabled("multicurrency") && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
$pdf->SetXY($col2x, $tab2_top + 0);
$pdf->MultiCell($largcol2, $tab2_hl, price($total_ht + (!empty($object->remise) ? $object->remise : 0), 0, $outputlangs), 0, 'R', 1);
// Show VAT by rates and total
$pdf->SetFillColor(248, 248, 248);
- $total_ttc = (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
+ $total_ttc = (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
$this->atleastoneratenotnull = 0;
if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) {
@@ -1168,7 +1168,7 @@ class pdf_eratosthene extends ModelePDFCommandes
// Nothing to do
} else {
//Local tax 1 before VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('1', '3', '5'))) {
@@ -1197,7 +1197,7 @@ class pdf_eratosthene extends ModelePDFCommandes
}
//}
//Local tax 2 before VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('1', '3', '5'))) {
@@ -1257,7 +1257,7 @@ class pdf_eratosthene extends ModelePDFCommandes
}
//Local tax 1 after VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('2', '4', '6'))) {
@@ -1288,7 +1288,7 @@ class pdf_eratosthene extends ModelePDFCommandes
}
//}
//Local tax 2 after VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('2', '4', '6'))) {
diff --git a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php
index 43c1ae9e4de..f6536cbb1df 100644
--- a/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php
+++ b/htdocs/core/modules/expensereport/doc/pdf_standard.modules.php
@@ -1,7 +1,7 @@
* Copyright (C) 2015 Alexandre Spangaro
- * Copyright (C) 2016-2021 Philippe Grand
+ * Copyright (C) 2016-2022 Philippe Grand
* Copyright (C) 2018-2020 Frédéric France
* Copyright (C) 2018 Francis Appels
* Copyright (C) 2019 Markus Welters
@@ -152,7 +152,7 @@ class pdf_standard extends ModeleExpenseReport
$this->posxqty = 150;
$this->postotalht = 160;
$this->postotalttc = 180;
- // if (empty($conf->project->enabled)) {
+ // if (!isModEnabled('project')) {
// $this->posxtva-=20;
// $this->posxup-=20;
// $this->posxqty-=20;
@@ -584,7 +584,7 @@ class pdf_standard extends ModeleExpenseReport
if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) {
$nextColumnPosX = $this->posxtva;
}
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$nextColumnPosX = $this->posxprojet;
}
@@ -600,7 +600,7 @@ class pdf_standard extends ModeleExpenseReport
//$pdf->MultiCell($nextColumnPosX-$this->posxtype-0.8, 4, $expensereporttypecodetoshow, 0, 'C');
// Project
- //if (! empty($conf->project->enabled))
+ //if (isModEnabled('project'))
//{
// $pdf->SetFont('','', $default_font_size - 1);
// $pdf->SetXY($this->posxprojet, $curY);
@@ -958,7 +958,7 @@ class pdf_standard extends ModeleExpenseReport
// $pdf->MultiCell($this->posxprojet-$this->posxtype - 1, 2, $outputlangs->transnoentities("Type"), '', 'C');
//}
- //if (!empty($conf->project->enabled))
+ //if (isModEnabled('project'))
//{
// // Project
// $pdf->line($this->posxprojet - 1, $tab_top, $this->posxprojet - 1, $tab_top + $tab_height);
@@ -1043,7 +1043,7 @@ class pdf_standard extends ModeleExpenseReport
$pdf->MultiCell(15, 3, $outputlangs->transnoentities("Amount"), 0, 'C', 0);
$pdf->SetXY($tab3_posx + 35, $tab3_top + 1);
$pdf->MultiCell(30, 3, $outputlangs->transnoentities("Type"), 0, 'L', 0);
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$pdf->SetXY($tab3_posx + 65, $tab3_top + 1);
$pdf->MultiCell(25, 3, $outputlangs->transnoentities("BankAccount"), 0, 'L', 0);
}
@@ -1083,7 +1083,7 @@ class pdf_standard extends ModeleExpenseReport
$oper = $outputlangs->transnoentitiesnoconv("PaymentTypeShort".$row->p_code);
$pdf->MultiCell(40, 3, $oper, 0, 'L', 0);
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$pdf->SetXY($tab3_posx + 65, $tab3_top + $y + 1);
$pdf->MultiCell(30, 3, $row->baref, 0, 'L', 0);
}
diff --git a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php
index 47d5480268c..2a94a94103e 100644
--- a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php
+++ b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php
@@ -298,9 +298,9 @@ class pdf_crabe extends ModelePDFFactures
if ($conf->facture->dir_output) {
$object->fetch_thirdparty();
- $deja_regle = $object->getSommePaiement((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? 1 : 0);
- $amount_credit_notes_included = $object->getSumCreditNotesUsed((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? 1 : 0);
- $amount_deposits_included = $object->getSumDepositsUsed((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? 1 : 0);
+ $deja_regle = $object->getSommePaiement((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? 1 : 0);
+ $amount_credit_notes_included = $object->getSumCreditNotesUsed((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? 1 : 0);
+ $amount_deposits_included = $object->getSumDepositsUsed((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? 1 : 0);
// Definition of $dir and $file
if ($object->specimen) {
@@ -453,9 +453,9 @@ class pdf_crabe extends ModelePDFFactures
// You can add more thing under header here, if you increase $extra_under_address_shift too.
$extra_under_address_shift = 0;
$qrcodestring = '';
- if (! empty($conf->global->INVOICE_ADD_ZATCA_QR_CODE)) {
+ if (!empty($conf->global->INVOICE_ADD_ZATCA_QR_CODE)) {
$qrcodestring = $object->buildZATCAQRString();
- } elseif (! empty($conf->global->INVOICE_ADD_SWISS_QR_CODE)) {
+ } elseif (!empty($conf->global->INVOICE_ADD_SWISS_QR_CODE)) {
$qrcodestring = $object->buildSwitzerlandQRString();
}
if ($qrcodestring) {
@@ -707,13 +707,13 @@ class pdf_crabe extends ModelePDFFactures
// Collection of totals by value of VAT in $this->tva["taux"]=total_tva
$prev_progress = $object->lines[$i]->get_prev_progress($object->id);
if ($prev_progress > 0 && !empty($object->lines[$i]->situation_percent)) { // Compute progress from previous situation
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $sign * $object->lines[$i]->multicurrency_total_tva * ($object->lines[$i]->situation_percent - $prev_progress) / $object->lines[$i]->situation_percent;
} else {
$tvaligne = $sign * $object->lines[$i]->total_tva * ($object->lines[$i]->situation_percent - $prev_progress) / $object->lines[$i]->situation_percent;
}
} else {
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $sign * $object->lines[$i]->multicurrency_total_tva;
} else {
$tvaligne = $sign * $object->lines[$i]->total_tva;
@@ -966,7 +966,7 @@ class pdf_crabe extends ModelePDFFactures
$pdf->SetXY($tab3_posx, $tab3_top + $y);
$pdf->MultiCell(20, 3, dol_print_date($this->db->jdate($obj->datef), 'day', false, $outputlangs, true), 0, 'L', 0);
$pdf->SetXY($tab3_posx + 21, $tab3_top + $y);
- $pdf->MultiCell(20, 3, price((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $obj->multicurrency_amount_ttc : $obj->amount_ttc, 0, $outputlangs), 0, 'L', 0);
+ $pdf->MultiCell(20, 3, price((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $obj->multicurrency_amount_ttc : $obj->amount_ttc, 0, $outputlangs), 0, 'L', 0);
$pdf->SetXY($tab3_posx + 40, $tab3_top + $y);
$pdf->MultiCell(20, 3, $text, 0, 'L', 0);
$pdf->SetXY($tab3_posx + 58, $tab3_top + $y);
@@ -1016,7 +1016,7 @@ class pdf_crabe extends ModelePDFFactures
$pdf->SetXY($tab3_posx, $tab3_top + $y);
$pdf->MultiCell(20, 3, dol_print_date($this->db->jdate($row->date), 'day', false, $outputlangs, true), 0, 'L', 0);
$pdf->SetXY($tab3_posx + 21, $tab3_top + $y);
- $pdf->MultiCell(20, 3, price($sign * ((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $row->multicurrency_amount : $row->amount), 0, $outputlangs), 0, 'L', 0);
+ $pdf->MultiCell(20, 3, price($sign * ((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $row->multicurrency_amount : $row->amount), 0, $outputlangs), 0, 'L', 0);
$pdf->SetXY($tab3_posx + 40, $tab3_top + $y);
$oper = $outputlangs->transnoentitiesnoconv("PaymentTypeShort".$row->code);
@@ -1169,7 +1169,7 @@ class pdf_crabe extends ModelePDFFactures
$bac = new CompanyBankAccount($this->db);
$bac->fetch(0, $object->thirdparty->id);
$iban= $bac->iban.(($bac->iban && $bac->bic) ? ' / ' : '').$bac->bic;
- $lib_mode_reg .= $langs->trans("PaymentTypePREdetails", dol_trunc($iban, 6, 'right', 'UTF-8', 1));
+ $lib_mode_reg .= $outputlangs->trans("PaymentTypePREdetails", dol_trunc($iban, 6, 'right', 'UTF-8', 1));
}
$pdf->MultiCell(80, 5, $lib_mode_reg, 0, 'L');
@@ -1323,14 +1323,14 @@ class pdf_crabe extends ModelePDFFactures
$pdf->SetXY($col1x, $tab2_top + 0);
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities(empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT) ? "TotalHT" : "Total").(is_object($outputlangsbis) ? ' / '.$outputlangsbis->transnoentities(empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT) ? "TotalHT" : "Total") : ''), 0, 'L', 1);
- $total_ht = ((!empty($conf->multicurrency->enabled) && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
+ $total_ht = ((isModEnabled("multicurrency") && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
$pdf->SetXY($col2x, $tab2_top + 0);
$pdf->MultiCell($largcol2, $tab2_hl, price($sign * ($total_ht + (!empty($object->remise) ? $object->remise : 0)), 0, $outputlangs), 0, 'R', 1);
// Show VAT by rates and total
$pdf->SetFillColor(248, 248, 248);
- $total_ttc = (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
+ $total_ttc = (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
$this->atleastoneratenotnull = 0;
if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) {
@@ -1341,7 +1341,7 @@ class pdf_crabe extends ModelePDFFactures
// FIXME amount of vat not supported with multicurrency
//Local tax 1 before VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('1', '3', '5'))) {
@@ -1373,7 +1373,7 @@ class pdf_crabe extends ModelePDFFactures
}
//}
//Local tax 2 before VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('1', '3', '5'))) {
@@ -1435,7 +1435,7 @@ class pdf_crabe extends ModelePDFFactures
}
//Local tax 1 after VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('2', '4', '6'))) {
@@ -1465,7 +1465,7 @@ class pdf_crabe extends ModelePDFFactures
}
//}
//Local tax 2 after VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('2', '4', '6'))) {
@@ -1545,8 +1545,8 @@ class pdf_crabe extends ModelePDFFactures
}
$pdf->SetTextColor(0, 0, 0);
- $creditnoteamount = $object->getSumCreditNotesUsed((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? 1 : 0); // Warning, this also include excess received
- $depositsamount = $object->getSumDepositsUsed((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? 1 : 0);
+ $creditnoteamount = $object->getSumCreditNotesUsed((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? 1 : 0); // Warning, this also include excess received
+ $depositsamount = $object->getSumDepositsUsed((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? 1 : 0);
//print "x".$creditnoteamount."-".$depositsamount;exit;
$resteapayer = price2num($total_ttc - $deja_regle - $creditnoteamount - $depositsamount, 'MT');
if (!empty($object->paye)) {
diff --git a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php
index 547aaaadae1..cb1c2fb64e0 100644
--- a/htdocs/core/modules/facture/doc/pdf_sponge.modules.php
+++ b/htdocs/core/modules/facture/doc/pdf_sponge.modules.php
@@ -331,9 +331,9 @@ class pdf_sponge extends ModelePDFFactures
if ($conf->facture->multidir_output[$conf->entity]) {
$object->fetch_thirdparty();
- $deja_regle = $object->getSommePaiement((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? 1 : 0);
- $amount_credit_notes_included = $object->getSumCreditNotesUsed((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? 1 : 0);
- $amount_deposits_included = $object->getSumDepositsUsed((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? 1 : 0);
+ $deja_regle = $object->getSommePaiement((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? 1 : 0);
+ $amount_credit_notes_included = $object->getSumCreditNotesUsed((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? 1 : 0);
+ $amount_deposits_included = $object->getSumDepositsUsed((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? 1 : 0);
// Definition of $dir and $file
if ($object->specimen) {
@@ -462,9 +462,9 @@ class pdf_sponge extends ModelePDFFactures
// You can add more thing under header here, if you increase $extra_under_address_shift too.
$extra_under_address_shift = 0;
$qrcodestring = '';
- if (! empty($conf->global->INVOICE_ADD_ZATCA_QR_CODE)) {
+ if (!empty($conf->global->INVOICE_ADD_ZATCA_QR_CODE)) {
$qrcodestring = $object->buildZATCAQRString();
- } elseif (! empty($conf->global->INVOICE_ADD_SWISS_QR_CODE)) {
+ } elseif (!empty($conf->global->INVOICE_ADD_SWISS_QR_CODE)) {
$qrcodestring = $object->buildSwitzerlandQRString();
}
if ($qrcodestring) {
@@ -871,13 +871,13 @@ class pdf_sponge extends ModelePDFFactures
// Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva
$prev_progress = $object->lines[$i]->get_prev_progress($object->id);
if ($prev_progress > 0 && !empty($object->lines[$i]->situation_percent)) { // Compute progress from previous situation
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $sign * $object->lines[$i]->multicurrency_total_tva * ($object->lines[$i]->situation_percent - $prev_progress) / $object->lines[$i]->situation_percent;
} else {
$tvaligne = $sign * $object->lines[$i]->total_tva * ($object->lines[$i]->situation_percent - $prev_progress) / $object->lines[$i]->situation_percent;
}
} else {
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $sign * $object->lines[$i]->multicurrency_total_tva;
} else {
$tvaligne = $sign * $object->lines[$i]->total_tva;
@@ -1128,7 +1128,7 @@ class pdf_sponge extends ModelePDFFactures
$pdf->SetXY($tab3_posx, $tab3_top + $y);
$pdf->MultiCell(20, 3, dol_print_date($this->db->jdate($obj->datef), 'day', false, $outputlangs, true), 0, 'L', 0);
$pdf->SetXY($tab3_posx + 21, $tab3_top + $y);
- $pdf->MultiCell(20, 3, price((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $obj->multicurrency_amount_ttc : $obj->amount_ttc, 0, $outputlangs), 0, 'L', 0);
+ $pdf->MultiCell(20, 3, price((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $obj->multicurrency_amount_ttc : $obj->amount_ttc, 0, $outputlangs), 0, 'L', 0);
$pdf->SetXY($tab3_posx + 40, $tab3_top + $y);
$pdf->MultiCell(20, 3, $text, 0, 'L', 0);
$pdf->SetXY($tab3_posx + 58, $tab3_top + $y);
@@ -1164,7 +1164,7 @@ class pdf_sponge extends ModelePDFFactures
$pdf->SetXY($tab3_posx, $tab3_top + $y);
$pdf->MultiCell(20, 3, dol_print_date($this->db->jdate($row->date), 'day', false, $outputlangs, true), 0, 'L', 0);
$pdf->SetXY($tab3_posx + 21, $tab3_top + $y);
- $pdf->MultiCell(20, 3, price($sign * ((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $row->multicurrency_amount : $row->amount), 0, $outputlangs), 0, 'L', 0);
+ $pdf->MultiCell(20, 3, price($sign * ((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $row->multicurrency_amount : $row->amount), 0, $outputlangs), 0, 'L', 0);
$pdf->SetXY($tab3_posx + 40, $tab3_top + $y);
$oper = $outputlangs->transnoentitiesnoconv("PaymentTypeShort".$row->code);
@@ -1278,7 +1278,7 @@ class pdf_sponge extends ModelePDFFactures
$bac = new CompanyBankAccount($this->db);
$bac->fetch(0, $object->thirdparty->id);
$iban= $bac->iban.(($bac->iban && $bac->bic) ? ' / ' : '').$bac->bic;
- $lib_mode_reg .= $langs->trans("PaymentTypePREdetails", dol_trunc($iban, 6, 'right', 'UTF-8', 1));
+ $lib_mode_reg .= $outputlangs->trans("PaymentTypePREdetails", dol_trunc($iban, 6, 'right', 'UTF-8', 1));
}
$pdf->MultiCell($posxend - $posxval, 5, $lib_mode_reg, 0, 'L');
@@ -1557,7 +1557,7 @@ class pdf_sponge extends ModelePDFFactures
// Get Total HT
- $total_ht = (!empty($conf->multicurrency->enabled) && $object->mylticurrency_tx != 1 ? $object->multicurrency_total_ht : $object->total_ht);
+ $total_ht = (isModEnabled("multicurrency") && $object->mylticurrency_tx != 1 ? $object->multicurrency_total_ht : $object->total_ht);
// Total remise
$total_line_remise = 0;
@@ -1595,14 +1595,14 @@ class pdf_sponge extends ModelePDFFactures
$pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index);
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities(empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT) ? "TotalHT" : "Total").(is_object($outputlangsbis) ? ' / '.$outputlangsbis->transnoentities(empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT) ? "TotalHT" : "Total") : ''), 0, 'L', 1);
- $total_ht = ((!empty($conf->multicurrency->enabled) && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
+ $total_ht = ((isModEnabled("multicurrency") && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
$pdf->MultiCell($largcol2, $tab2_hl, price($sign * ($total_ht + (!empty($object->remise) ? $object->remise : 0)), 0, $outputlangs), 0, 'R', 1);
// Show VAT by rates and total
$pdf->SetFillColor(248, 248, 248);
- $total_ttc = (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
+ $total_ttc = (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
$this->atleastoneratenotnull = 0;
if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) {
@@ -1613,7 +1613,7 @@ class pdf_sponge extends ModelePDFFactures
// FIXME amount of vat not supported with multicurrency
//Local tax 1 before VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('1', '3', '5'))) {
@@ -1645,7 +1645,7 @@ class pdf_sponge extends ModelePDFFactures
}
//}
//Local tax 2 before VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('1', '3', '5'))) {
@@ -1730,7 +1730,7 @@ class pdf_sponge extends ModelePDFFactures
}
//Local tax 1 after VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('2', '4', '6'))) {
@@ -1761,7 +1761,7 @@ class pdf_sponge extends ModelePDFFactures
}
//}
//Local tax 2 after VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('2', '4', '6'))) {
@@ -1847,8 +1847,8 @@ class pdf_sponge extends ModelePDFFactures
$pdf->SetTextColor(0, 0, 0);
- $creditnoteamount = $object->getSumCreditNotesUsed((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? 1 : 0); // Warning, this also include excess received
- $depositsamount = $object->getSumDepositsUsed((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? 1 : 0);
+ $creditnoteamount = $object->getSumCreditNotesUsed((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? 1 : 0); // Warning, this also include excess received
+ $depositsamount = $object->getSumDepositsUsed((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? 1 : 0);
$resteapayer = price2num($total_ttc - $deja_regle - $creditnoteamount - $depositsamount, 'MT');
if (!empty($object->paye)) {
diff --git a/htdocs/core/modules/import/import_csv.modules.php b/htdocs/core/modules/import/import_csv.modules.php
index 32284a2cbd1..426a582c3f4 100644
--- a/htdocs/core/modules/import/import_csv.modules.php
+++ b/htdocs/core/modules/import/import_csv.modules.php
@@ -115,7 +115,7 @@ class ImportCsv extends ModeleImports
$this->datatoimport = $datatoimport;
if (preg_match('/^societe_/', $datatoimport)) {
- $this->thirpartyobject = new Societe($this->db);
+ $this->thirdpartyobject = new Societe($this->db);
}
}
@@ -560,8 +560,8 @@ class ImportCsv extends ModeleImports
}
} elseif ($objimport->array_import_convertvalue[0][$val]['rule'] == 'getcustomercodeifauto') {
if (strtolower($newval) == 'auto') {
- $this->thirpartyobject->get_codeclient(0, 0);
- $newval = $this->thirpartyobject->code_client;
+ $this->thirdpartyobject->get_codeclient(0, 0);
+ $newval = $this->thirdpartyobject->code_client;
//print 'code_client='.$newval;
}
if (empty($newval)) {
@@ -569,8 +569,8 @@ class ImportCsv extends ModeleImports
}
} elseif ($objimport->array_import_convertvalue[0][$val]['rule'] == 'getsuppliercodeifauto') {
if (strtolower($newval) == 'auto') {
- $newval = $this->thirpartyobject->get_codefournisseur(0, 1);
- $newval = $this->thirpartyobject->code_fournisseur;
+ $newval = $this->thirdpartyobject->get_codefournisseur(0, 1);
+ $newval = $this->thirdpartyobject->code_fournisseur;
//print 'code_fournisseur='.$newval;
}
if (empty($newval)) {
@@ -578,8 +578,8 @@ class ImportCsv extends ModeleImports
}
} elseif ($objimport->array_import_convertvalue[0][$val]['rule'] == 'getcustomeraccountancycodeifauto') {
if (strtolower($newval) == 'auto') {
- $this->thirpartyobject->get_codecompta('customer');
- $newval = $this->thirpartyobject->code_compta;
+ $this->thirdpartyobject->get_codecompta('customer');
+ $newval = $this->thirdpartyobject->code_compta;
//print 'code_compta='.$newval;
}
if (empty($newval)) {
@@ -587,8 +587,8 @@ class ImportCsv extends ModeleImports
}
} elseif ($objimport->array_import_convertvalue[0][$val]['rule'] == 'getsupplieraccountancycodeifauto') {
if (strtolower($newval) == 'auto') {
- $this->thirpartyobject->get_codecompta('supplier');
- $newval = $this->thirpartyobject->code_compta_fournisseur;
+ $this->thirdpartyobject->get_codecompta('supplier');
+ $newval = $this->thirdpartyobject->code_compta_fournisseur;
if (empty($newval)) {
$arrayrecord[($key - 1)]['type'] = -1; // If we get empty value, we will use "null"
}
diff --git a/htdocs/core/modules/import/import_xlsx.modules.php b/htdocs/core/modules/import/import_xlsx.modules.php
index d8a9d77a98e..6d7c5bf82fd 100644
--- a/htdocs/core/modules/import/import_xlsx.modules.php
+++ b/htdocs/core/modules/import/import_xlsx.modules.php
@@ -133,7 +133,7 @@ class ImportXlsx extends ModeleImports
$this->datatoimport = $datatoimport;
if (preg_match('/^societe_/', $datatoimport)) {
- $this->thirpartyobject = new Societe($this->db);
+ $this->thirdpartyobject = new Societe($this->db);
}
}
@@ -604,8 +604,8 @@ class ImportXlsx extends ModeleImports
}
} elseif ($objimport->array_import_convertvalue[0][$val]['rule'] == 'getcustomercodeifauto') {
if (strtolower($newval) == 'auto') {
- $this->thirpartyobject->get_codeclient(0, 0);
- $newval = $this->thirpartyobject->code_client;
+ $this->thirdpartyobject->get_codeclient(0, 0);
+ $newval = $this->thirdpartyobject->code_client;
//print 'code_client='.$newval;
}
if (empty($newval)) {
@@ -613,8 +613,8 @@ class ImportXlsx extends ModeleImports
}
} elseif ($objimport->array_import_convertvalue[0][$val]['rule'] == 'getsuppliercodeifauto') {
if (strtolower($newval) == 'auto') {
- $newval = $this->thirpartyobject->get_codefournisseur(0, 1);
- $newval = $this->thirpartyobject->code_fournisseur;
+ $newval = $this->thirdpartyobject->get_codefournisseur(0, 1);
+ $newval = $this->thirdpartyobject->code_fournisseur;
//print 'code_fournisseur='.$newval;
}
if (empty($newval)) {
@@ -622,8 +622,8 @@ class ImportXlsx extends ModeleImports
}
} elseif ($objimport->array_import_convertvalue[0][$val]['rule'] == 'getcustomeraccountancycodeifauto') {
if (strtolower($newval) == 'auto') {
- $this->thirpartyobject->get_codecompta('customer');
- $newval = $this->thirpartyobject->code_compta;
+ $this->thirdpartyobject->get_codecompta('customer');
+ $newval = $this->thirdpartyobject->code_compta;
//print 'code_compta='.$newval;
}
if (empty($newval)) {
@@ -631,8 +631,8 @@ class ImportXlsx extends ModeleImports
}
} elseif ($objimport->array_import_convertvalue[0][$val]['rule'] == 'getsupplieraccountancycodeifauto') {
if (strtolower($newval) == 'auto') {
- $this->thirpartyobject->get_codecompta('supplier');
- $newval = $this->thirpartyobject->code_compta_fournisseur;
+ $this->thirdpartyobject->get_codecompta('supplier');
+ $newval = $this->thirdpartyobject->code_compta_fournisseur;
if (empty($newval)) {
$arrayrecord[($key)]['type'] = -1; // If we get empty value, we will use "null"
}
diff --git a/htdocs/core/modules/mailings/partnership.modules.php b/htdocs/core/modules/mailings/partnership.modules.php
index 7813d93f54d..aa1f861bfe2 100644
--- a/htdocs/core/modules/mailings/partnership.modules.php
+++ b/htdocs/core/modules/mailings/partnership.modules.php
@@ -1,4 +1,5 @@
* Copyright (C) 2005-2010 Laurent Destailleur
* Copyright (C) 2005-2009 Regis Houssin
@@ -16,6 +17,8 @@
* \brief Example file to provide a list of recipients for mailing module
*/
+
+// Load Dolibarr Environment
include_once DOL_DOCUMENT_ROOT.'/core/modules/mailings/modules_mailings.php';
@@ -24,9 +27,10 @@ include_once DOL_DOCUMENT_ROOT.'/core/modules/mailings/modules_mailings.php';
*/
class mailing_partnership extends MailingTargets
{
- public $name = 'PartnershipThirdartiesOrMembers';
// This label is used if no translation is found for key XXX neither MailingModuleDescXXX where XXX=name is found
+ public $name = 'PartnershipThirdpartiesOrMembers';
public $desc = "Thirdparties or members included into a partnership program";
+
public $require_admin = 0;
public $require_module = array(); // This module allows to select by categories must be also enabled if category module is not activated
@@ -52,7 +56,7 @@ class mailing_partnership extends MailingTargets
public function __construct($db)
{
global $conf, $langs;
- $langs->load("companies");
+ $langs->load('companies');
$this->db = $db;
}
@@ -218,7 +222,7 @@ class mailing_partnership extends MailingTargets
$num = $this->db->num_rows($resql);
if (empty($conf->partnership->enabled)) {
- $num = 0; // Force empty list if category module is not enabled
+ $num = 0; // Force empty list if category module is not enabled
}
if ($num) {
@@ -253,7 +257,7 @@ class mailing_partnership extends MailingTargets
*/
public function url($id, $sourcetype = 'thirdparty')
{
- if ($sourcetype == 'thirparty') {
+ if ($sourcetype == 'thirdparty') {
return ''.img_object('', "societe").' ';
}
if ($sourcetype == 'member') {
diff --git a/htdocs/core/modules/mailings/thirdparties.modules.php b/htdocs/core/modules/mailings/thirdparties.modules.php
index 89bc2cf2b5e..335e3ac575a 100644
--- a/htdocs/core/modules/mailings/thirdparties.modules.php
+++ b/htdocs/core/modules/mailings/thirdparties.modules.php
@@ -226,7 +226,7 @@ class mailing_thirdparties extends MailingTargets
$sql .= " FROM ".MAIN_DB_PREFIX."societe as s";
$sql .= " WHERE s.email <> ''";
$sql .= " AND s.entity IN (".getEntity('societe').")";
-
+ $sql .= " AND NOT EXISTS (SELECT rowid FROM ".MAIN_DB_PREFIX."mailing_unsubscribe as mu WHERE mu.email = s.email and mu.entity = ".((int) $conf->entity).")";
// La requete doit retourner un champ "nb" pour etre comprise par parent::getNbOfRecipients
return parent::getNbOfRecipients($sql);
}
@@ -316,11 +316,13 @@ class mailing_thirdparties extends MailingTargets
$s .= '';
$s .= ajax_combobox("filter_status_thirdparties");
- // Choose language
- require_once DOL_DOCUMENT_ROOT.'/core/class/html.formadmin.class.php';
- $formadmin = new FormAdmin($this->db);
- $s .= ''.$langs->trans("DefaultLang").': ';
- $s .= $formadmin->select_language($langs->getDefaultLang(1), 'filter_lang_thirdparties', 0, null, 1, 0, 0, '', 0, 0, 0, null, 1);
+ if (!empty($conf->global->MAIN_MULTILANGS)) {
+ // Choose language
+ require_once DOL_DOCUMENT_ROOT.'/core/class/html.formadmin.class.php';
+ $formadmin = new FormAdmin($this->db);
+ $s .= ''.$langs->trans("DefaultLang").': ';
+ $s .= $formadmin->select_language($langs->getDefaultLang(1), 'filter_lang_thirdparties', 0, null, 1, 0, 0, '', 0, 0, 0, null, 1);
+ }
return $s;
}
diff --git a/htdocs/core/modules/modAdherent.class.php b/htdocs/core/modules/modAdherent.class.php
index ec0546e9af1..2db6311b172 100644
--- a/htdocs/core/modules/modAdherent.class.php
+++ b/htdocs/core/modules/modAdherent.class.php
@@ -145,7 +145,7 @@ class modAdherent extends DolibarrModules
$this->const[$r][4] = 0;
$r++;
- $this->const[$r][0] = "ADHERENT_MAILMAN_ADMINPW";
+ $this->const[$r][0] = "ADHERENT_MAILMAN_ADMIN_PASSWORD";
$this->const[$r][1] = "chaine";
$this->const[$r][2] = "";
$this->const[$r][3] = "Mot de passe Admin des liste mailman";
@@ -345,7 +345,7 @@ class modAdherent extends DolibarrModules
'a.email'=>"Email", 'a.birth'=>"Birthday", 'a.statut'=>"Status*", 'a.photo'=>"Photo", 'a.note_public'=>"NotePublic", 'a.note_private'=>"NotePrivate",
'a.datec'=>'DateCreation', 'a.datefin'=>'DateEndSubscription'
);
- if (!empty($conf->societe->enabled)) {
+ if (isModEnabled("societe")) {
$this->import_fields_array[$r]['a.fk_soc'] = "ThirdParty";
}
// Add extra fields
@@ -380,7 +380,7 @@ class modAdherent extends DolibarrModules
'dict' => 'DictionaryCountry'
)
);
- if (!empty($conf->societe->enabled)) {
+ if (isModEnabled("societe")) {
$this->import_convertvalue_array[$r]['a.fk_soc'] = array('rule'=>'fetchidfromref', 'classfile'=>'/societe/class/societe.class.php', 'class'=>'Societe', 'method'=>'fetch', 'element'=>'ThirdParty');
}
$this->import_fieldshidden_array[$r] = array('extra.fk_object'=>'lastrowid-'.MAIN_DB_PREFIX.'adherent'); // aliastable.field => ('user->id' or 'lastrowid-'.tableparent)
@@ -394,7 +394,7 @@ class modAdherent extends DolibarrModules
'a.email'=>'jsmith@example.com', 'a.birth'=>'1972-10-10', 'a.statut'=>"0 or 1", 'a.note_public'=>"This is a public comment on member",
'a.note_private'=>"This is private comment on member", 'a.datec'=>dol_print_date($now, '%Y-%m__%d'), 'a.datefin'=>dol_print_date(dol_time_plus_duree($now, 1, 'y'), '%Y-%m-%d')
);
- if (!empty($conf->societe->enabled)) {
+ if (isModEnabled("societe")) {
$this->import_examplevalues_array[$r]['a.fk_soc'] = "rowid or name";
}
$this->import_updatekeys_array[$r] = array('a.ref'=>'MemberRef', 'a.login'=>'Login');
diff --git a/htdocs/core/modules/modBlockedLog.class.php b/htdocs/core/modules/modBlockedLog.class.php
index 0c645099f56..0a07fff6aaf 100644
--- a/htdocs/core/modules/modBlockedLog.class.php
+++ b/htdocs/core/modules/modBlockedLog.class.php
@@ -79,7 +79,7 @@ class modBlockedLog extends DolibarrModules
// Currently, activation is not automatic because only companies (in France) making invoices to non business customers must
// enable this module.
- /*if (! empty($conf->global->BLOCKEDLOG_DISABLE_NOT_ALLOWED_FOR_COUNTRY))
+ /*if (!empty($conf->global->BLOCKEDLOG_DISABLE_NOT_ALLOWED_FOR_COUNTRY))
{
$tmp=explode(',', $conf->global->BLOCKEDLOG_DISABLE_NOT_ALLOWED_FOR_COUNTRY);
$this->automatic_activation = array();
diff --git a/htdocs/core/modules/modCategorie.class.php b/htdocs/core/modules/modCategorie.class.php
index 57ac7a637dc..78ed4d7b7ba 100644
--- a/htdocs/core/modules/modCategorie.class.php
+++ b/htdocs/core/modules/modCategorie.class.php
@@ -127,25 +127,25 @@ class modCategorie extends DolibarrModules
$this->export_permission[$r] = array(array("categorie", "lire"));
$typeexample = "";
- if (!empty($conf->product->enabled) || !empty($conf->service->enabled)) {
+ if (isModEnabled("product") || isModEnabled("service")) {
$typeexample .= ($typeexample ? " / " : "")."0=Product-Service";
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
$typeexample .= ($typeexample ? "/" : "")."1=Supplier";
}
- if (!empty($conf->societe->enabled)) {
+ if (isModEnabled("societe")) {
$typeexample .= ($typeexample ? " / " : "")."2=Customer-Prospect";
}
- if (!empty($conf->adherent->enabled)) {
+ if (isModEnabled('adherent')) {
$typeexample .= ($typeexample ? " / " : "")."3=Member";
}
- if (!empty($conf->societe->enabled)) {
+ if (isModEnabled("societe")) {
$typeexample .= ($typeexample ? " / " : "")."4=Contact";
}
if (!empty($conf->bank->enabled)) {
$typeexample .= ($typeexample ? " / " : "")."5=Bank account";
}
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$typeexample .= ($typeexample ? " / " : "")."6=Project";
}
if (!empty($conf->user->enabled)) {
@@ -160,7 +160,7 @@ class modCategorie extends DolibarrModules
if (isModEnabled('agenda')) {
$typeexample .= ($typeexample ? " / " : "")."10=Agenda event";
}
- if (!empty($conf->website->enabled)) {
+ if (isModEnabled('website')) {
$typeexample .= ($typeexample ? " / " : "")."11=Website page";
}
@@ -179,7 +179,7 @@ class modCategorie extends DolibarrModules
$this->export_code[$r] = $this->rights_class.'_0_'.Categorie::$MAP_ID_TO_CODE[0];
$this->export_label[$r] = 'CatProdList';
$this->export_icon[$r] = $this->picto;
- $this->export_enabled[$r] = '!empty($conf->product->enabled) || !empty($conf->service->abled)';
+ $this->export_enabled[$r] = 'isModEnabled("product") || !empty($conf->service->enabled)';
$this->export_permission[$r] = array(array("categorie", "lire"), array("produit", "export"));
$this->export_fields_array[$r] = array('cat.rowid'=>"CategId", 'cat.label'=>"Label", 'cat.description'=>"Description", 'cat.fk_parent'=>"ParentCategory", 'p.rowid'=>'ProductId', 'p.ref'=>'Ref', 'p.label'=>'Label');
$this->export_TypeFields_array[$r] = array('cat.label'=>"Text", 'cat.description'=>"Text", 'cat.fk_parent'=>'List:categorie:label:rowid', 'p.ref'=>'Text', 'p.label'=>'Text');
@@ -203,7 +203,7 @@ class modCategorie extends DolibarrModules
$this->export_code[$r] = $this->rights_class.'_1_'.Categorie::$MAP_ID_TO_CODE[1];
$this->export_label[$r] = 'CatSupList';
$this->export_icon[$r] = $this->picto;
- $this->export_enabled[$r] = '!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)';
+ $this->export_enabled[$r] = 'isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")';
$this->export_permission[$r] = array(array("categorie", "lire"), array("fournisseur", "lire"));
$this->export_fields_array[$r] = array(
'cat.rowid'=>"CategId", 'cat.label'=>"Label", 'cat.description'=>"Description", 'cat.fk_parent'=>"ParentCategory",
@@ -249,7 +249,7 @@ class modCategorie extends DolibarrModules
$this->export_code[$r] = $this->rights_class.'_2_'.Categorie::$MAP_ID_TO_CODE[2];
$this->export_label[$r] = 'CatCusList';
$this->export_icon[$r] = $this->picto;
- $this->export_enabled[$r] = '!empty($conf->societe->enabled)';
+ $this->export_enabled[$r] = 'isModEnabled("societe")';
$this->export_permission[$r] = array(array("categorie", "lire"), array("societe", "export"));
$this->export_fields_array[$r] = array(
'cat.rowid'=>"CategId", 'cat.label'=>"Label", 'cat.description'=>"Description", 'cat.fk_parent'=>"ParentCategory",
@@ -297,7 +297,7 @@ class modCategorie extends DolibarrModules
$this->export_code[$r] = $this->rights_class.'_3_'.Categorie::$MAP_ID_TO_CODE[3];
$this->export_label[$r] = 'CatMemberList';
$this->export_icon[$r] = $this->picto;
- $this->export_enabled[$r] = '!empty($conf->adherent->enabled)';
+ $this->export_enabled[$r] = 'isModEnabled("adherent")';
$this->export_permission[$r] = array(array("categorie", "lire"), array("adherent", "export"));
$this->export_fields_array[$r] = array('cat.rowid'=>"CategId", 'cat.label'=>"Label", 'cat.description'=>"Description", 'cat.fk_parent'=>"ParentCategory", 'p.rowid'=>'MemberId', 'p.lastname'=>'LastName', 'p.firstname'=>'Firstname');
$this->export_TypeFields_array[$r] = array('cat.label'=>"Text", 'cat.description'=>"Text", 'cat.fk_parent'=>'List:categorie:label:rowid', 'p.lastname'=>'Text', 'p.firstname'=>'Text');
@@ -321,7 +321,7 @@ class modCategorie extends DolibarrModules
$this->export_code[$r] = $this->rights_class.'_4_'.Categorie::$MAP_ID_TO_CODE[4];
$this->export_label[$r] = 'CatContactList';
$this->export_icon[$r] = $this->picto;
- $this->export_enabled[$r] = '!empty($conf->societe->enabled)';
+ $this->export_enabled[$r] = 'isModEnabled("societe")';
$this->export_permission[$r] = array(array("categorie", "lire"), array("societe", "contact", "export"));
$this->export_fields_array[$r] = array(
'cat.rowid'=>"CategId", 'cat.label'=>"Label", 'cat.description'=>"Description", 'cat.fk_parent'=>"ParentCategory",
@@ -379,7 +379,7 @@ class modCategorie extends DolibarrModules
$this->export_code[$r] = $this->rights_class.'_6_'.Categorie::$MAP_ID_TO_CODE[6];
$this->export_label[$r] = 'CatProjectsList';
$this->export_icon[$r] = $this->picto;
- $this->export_enabled[$r] = '!empty($conf->project->enabled)';
+ $this->export_enabled[$r] = "isModEnabled('project')";
$this->export_permission[$r] = array(array("categorie", "lire"), array("projet", "export"));
$this->export_fields_array[$r] = array('cat.rowid'=>"CategId", 'cat.label'=>"Label", 'cat.description'=>"Description", 'cat.fk_parent'=>"ParentCategory", 'p.rowid'=>'ProjectId', 'p.ref'=>'Ref', 's.rowid'=>"IdThirdParty", 's.nom'=>"Name");
$this->export_TypeFields_array[$r] = array('cat.label'=>"Text", 'cat.description'=>"Text", 'cat.fk_parent'=>'List:categorie:label:rowid', 'p.ref'=>'Text', 's.rowid'=>"Numeric", 's.nom'=>"Text");
@@ -466,7 +466,7 @@ class modCategorie extends DolibarrModules
$this->import_updatekeys_array[$r] = array('ca.label'=>'Label');
// 0 Products
- if (!empty($conf->product->enabled)) {
+ if (isModEnabled("product")) {
$r++;
$this->import_code[$r] = $this->rights_class.'_0_'.Categorie::$MAP_ID_TO_CODE[0];
$this->import_label[$r] = "CatProdLinks"; // Translation key
@@ -485,7 +485,7 @@ class modCategorie extends DolibarrModules
}
// 1 Suppliers
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
$r++;
$this->import_code[$r] = $this->rights_class.'_1_'.Categorie::$MAP_ID_TO_CODE[1];
$this->import_label[$r] = "CatSupLinks"; // Translation key
@@ -506,7 +506,7 @@ class modCategorie extends DolibarrModules
}
// 2 Customers
- if (!empty($conf->societe->enabled)) {
+ if (isModEnabled("societe")) {
$r++;
$this->import_code[$r] = $this->rights_class.'_2_'.Categorie::$MAP_ID_TO_CODE[2];
$this->import_label[$r] = "CatCusLinks"; // Translation key
@@ -527,7 +527,7 @@ class modCategorie extends DolibarrModules
}
// 3 Members
- if (!empty($conf->adherent->enabled)) {
+ if (isModEnabled('adherent')) {
$r++;
$this->import_code[$r] = $this->rights_class.'_3_'.Categorie::$MAP_ID_TO_CODE[3];
$this->import_label[$r] = "CatMembersLinks"; // Translation key
@@ -545,7 +545,7 @@ class modCategorie extends DolibarrModules
}
// 4 Contacts/Addresses
- if (!empty($conf->societe->enabled)) {
+ if (isModEnabled("societe")) {
$r++;
$this->import_code[$r] = $this->rights_class.'_4_'.Categorie::$MAP_ID_TO_CODE[4];
$this->import_label[$r] = "CatContactsLinks"; // Translation key
@@ -568,7 +568,7 @@ class modCategorie extends DolibarrModules
// 5 Bank accounts, TODO ?
// 6 Projects
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$r++;
$this->import_code[$r] = $this->rights_class.'_6_'.Categorie::$MAP_ID_TO_CODE[6];
$this->import_label[$r] = "CatProjectsLinks"; // Translation key
diff --git a/htdocs/core/modules/modCommande.class.php b/htdocs/core/modules/modCommande.class.php
index 70f06169394..6a88c14271b 100644
--- a/htdocs/core/modules/modCommande.class.php
+++ b/htdocs/core/modules/modCommande.class.php
@@ -211,7 +211,7 @@ class modCommande extends DolibarrModules
'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'=>'ProductLabel'
);
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->export_fields_array[$r]['c.multicurrency_code'] = 'Currency';
$this->export_fields_array[$r]['c.multicurrency_tx'] = 'CurrencyRate';
$this->export_fields_array[$r]['c.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
@@ -221,7 +221,7 @@ class modCommande extends DolibarrModules
// Add multicompany field
if (!empty($conf->global->MULTICOMPANY_ENTITY_IN_EXPORT_IF_SHARED)) {
$nbofallowedentities = count(explode(',', getEntity('commande')));
- if (!empty($conf->multicompany->enabled) && $nbofallowedentities > 1) {
+ if (isModEnabled('multicompany') && $nbofallowedentities > 1) {
$this->export_fields_array[$r]['c.entity'] = 'Entity';
}
}
@@ -328,7 +328,7 @@ class modCommande extends DolibarrModules
'c.fk_statut' => 'Status*'
);
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->import_fields_array[$r]['c.multicurrency_code'] = 'Currency';
$this->import_fields_array[$r]['c.multicurrency_tx'] = 'CurrencyRate';
$this->import_fields_array[$r]['c.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
@@ -405,7 +405,7 @@ class modCommande extends DolibarrModules
'cd.rang' => 'LinePosition'
);
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->import_fields_array[$r]['cd.multicurrency_code'] = 'Currency';
$this->import_fields_array[$r]['cd.multicurrency_subprice'] = 'CurrencyRate';
$this->import_fields_array[$r]['cd.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
diff --git a/htdocs/core/modules/modCron.class.php b/htdocs/core/modules/modCron.class.php
index 290eea449f5..3a84b28eef3 100644
--- a/htdocs/core/modules/modCron.class.php
+++ b/htdocs/core/modules/modCron.class.php
@@ -101,6 +101,7 @@ class modCron extends DolibarrModules
0=>array('entity'=>0, 'label'=>'PurgeDeleteTemporaryFilesShort', 'jobtype'=>'method', 'class'=>'core/class/utils.class.php', 'objectname'=>'Utils', 'method'=>'purgeFiles', 'parameters'=>'tempfilesold+logfiles', 'comment'=>'PurgeDeleteTemporaryFiles', 'frequency'=>2, 'unitfrequency'=>3600 * 24 * 7, 'priority'=>50, 'status'=>1, 'test'=>true),
1=>array('entity'=>0, 'label'=>'MakeLocalDatabaseDumpShort', 'jobtype'=>'method', 'class'=>'core/class/utils.class.php', 'objectname'=>'Utils', 'method'=>'dumpDatabase', 'parameters'=>'none,auto,1,auto,10', 'comment'=>'MakeLocalDatabaseDump', 'frequency'=>1, 'unitfrequency'=>3600 * 24 * 7, 'priority'=>90, 'status'=>0, 'test'=>'in_array($conf->db->type, array(\'mysql\', \'mysqli\'))'),
2=>array('entity'=>0, 'label'=>'MakeSendLocalDatabaseDumpShort', 'jobtype'=>'method', 'class'=>'core/class/utils.class.php', 'objectname'=>'Utils', 'method'=>'sendDumpDatabase', 'parameters'=>',,,,,sql', 'comment'=>'MakeSendLocalDatabaseDump', 'frequency'=>1, 'unitfrequency'=>604800, 'priority'=>91, 'status'=>0, 'test'=>'!empty($conf->global->MAIN_ALLOW_BACKUP_BY_EMAIL) && in_array($conf->db->type, array(\'mysql\', \'mysqli\'))'),
+ 3=>array('entity'=>0, 'label'=>'CleanUnfinishedCronjobShort', 'jobtype'=>'method', 'class'=>'core/class/utils.class.php', 'objectname'=>'Utils', 'method'=>'cleanUnfinishedCronjob', 'parameters'=>'', 'comment'=>'CleanUnfinishedCronjob', 'frequency'=>5, 'unitfrequency'=>60, 'priority'=>10, 'status'=>0, 'test'=>'getDolGlobalInt("MAIN_FEATURES_LEVEL") >= 2'),
// 1=>array('entity'=>0, 'label'=>'My label', 'jobtype'=>'command', 'command'=>'', 'parameters'=>'', 'comment'=>'Comment', 'frequency'=>1, 'unitfrequency'=>3600*24)
);
@@ -140,7 +141,7 @@ class modCron extends DolibarrModules
'titre'=>'CronList',
'url'=>'/cron/list.php?leftmenu=admintools',
'langs'=>'cron', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory.
- 'position'=>200,
+ 'position'=>500,
'enabled'=>'$conf->cron->enabled && preg_match(\'/^(admintools|all)/\', $leftmenu)', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled. Use '$leftmenu==\'system\'' to show if leftmenu system is selected.
'perms'=>'$user->rights->cron->read', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules
'target'=>'',
diff --git a/htdocs/core/modules/modECM.class.php b/htdocs/core/modules/modECM.class.php
index 8b846089a03..e90b42a40aa 100644
--- a/htdocs/core/modules/modECM.class.php
+++ b/htdocs/core/modules/modECM.class.php
@@ -182,7 +182,7 @@ class modECM extends DolibarrModules
'langs'=>'ecm',
'position'=>103,
'perms'=>'$user->rights->ecm->read || $user->rights->ecm->upload',
- 'enabled'=>'($user->rights->ecm->read || $user->rights->ecm->upload) && ! empty($conf->global->ECM_AUTO_TREE_ENABLED)',
+ 'enabled'=>'($user->rights->ecm->read || $user->rights->ecm->upload) && !empty($conf->global->ECM_AUTO_TREE_ENABLED)',
'target'=>'',
'user'=>2, // 0=Menu for internal users, 1=external users, 2=both
);
diff --git a/htdocs/core/modules/modEmailCollector.class.php b/htdocs/core/modules/modEmailCollector.class.php
index 145dd966044..ef823856a57 100644
--- a/htdocs/core/modules/modEmailCollector.class.php
+++ b/htdocs/core/modules/modEmailCollector.class.php
@@ -175,7 +175,7 @@ class modEmailCollector extends DolibarrModules
'titre'=>'EmailCollectors',
'url'=>'/admin/emailcollector_list.php?leftmenu=admintools',
'langs'=>'admin', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory.
- 'position'=>201,
+ 'position'=>400,
'enabled'=>'$conf->emailcollector->enabled && preg_match(\'/^(admintools|all)/\', $leftmenu)', // Define condition to show or hide menu entry. Use '$conf->mymodule->enabled' if entry must be visible if module is enabled. Use '$leftmenu==\'system\'' to show if leftmenu system is selected.
'perms'=>'$user->admin', // Use 'perms'=>'$user->rights->mymodule->level1->level2' if you want your menu with a permission rules
'target'=>'',
diff --git a/htdocs/core/modules/modFTP.class.php b/htdocs/core/modules/modFTP.class.php
index 7cde492b2c3..ae2de933bb6 100644
--- a/htdocs/core/modules/modFTP.class.php
+++ b/htdocs/core/modules/modFTP.class.php
@@ -54,7 +54,7 @@ class modFTP extends DolibarrModules
// 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';
+ $this->version = 'dolibarr_deprecated';
// Key used in llx_const table to save module status enabled/disabled (XXX is id value)
$this->const_name = 'MAIN_MODULE_'.strtoupper($this->name);
// Name of png file (without png) used for this module
diff --git a/htdocs/core/modules/modFacture.class.php b/htdocs/core/modules/modFacture.class.php
index 3cea4f0ff92..f7d902d22f1 100644
--- a/htdocs/core/modules/modFacture.class.php
+++ b/htdocs/core/modules/modFacture.class.php
@@ -267,7 +267,7 @@ class modFacture extends DolibarrModules
'f.note_private' => 'NotePrivate',
'f.model_pdf' => 'Model'
);
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->import_fields_array[$r]['f.multicurrency_code'] = 'Currency';
$this->import_fields_array[$r]['f.multicurrency_tx'] = 'CurrencyRate';
$this->import_fields_array[$r]['f.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
@@ -399,7 +399,7 @@ class modFacture extends DolibarrModules
// fk_user_modif
// ref_ext
);
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->import_fields_array[$r]['fd.multicurrency_code'] = 'Currency';
$this->import_fields_array[$r]['fd.multicurrency_subprice'] = 'CurrencyRate';
$this->import_fields_array[$r]['fd.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
@@ -518,7 +518,7 @@ class modFacture extends DolibarrModules
'f.note_private'=>"NotePrivate", 'f.note_public'=>"NotePublic"
);
// Add multicurrency fields
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->export_fields_array[$r]['f.multicurrency_code'] = 'Currency';
$this->export_fields_array[$r]['f.multicurrency_tx'] = 'CurrencyRate';
$this->export_fields_array[$r]['f.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
@@ -538,7 +538,7 @@ class modFacture extends DolibarrModules
// Add multicompany field
if (!empty($conf->global->MULTICOMPANY_ENTITY_IN_EXPORT_IF_SHARED)) {
$nbofallowedentities = count(explode(',', getEntity('invoice')));
- if (!empty($conf->multicompany->enabled) && $nbofallowedentities > 1) {
+ if (isModEnabled('multicompany') && $nbofallowedentities > 1) {
$this->export_fields_array[$r]['f.entity'] = 'Entity';
}
}
@@ -647,7 +647,7 @@ class modFacture extends DolibarrModules
'pt.code'=>'CodePaymentMode', 'pt.libelle'=>'LabelPaymentMode', 'p.note'=>'PaymentNote', 'p.fk_bank'=>'IdTransaction', 'ba.ref'=>'AccountRef'
);
$this->export_help_array[$r] = array('f.paye'=>'InvoicePaidCompletelyHelp');
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->export_fields_array[$r]['f.multicurrency_code'] = 'Currency';
$this->export_fields_array[$r]['f.multicurrency_tx'] = 'CurrencyRate';
$this->export_fields_array[$r]['f.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
diff --git a/htdocs/core/modules/modFournisseur.class.php b/htdocs/core/modules/modFournisseur.class.php
index afc6fec4fc6..e05d7964094 100644
--- a/htdocs/core/modules/modFournisseur.class.php
+++ b/htdocs/core/modules/modFournisseur.class.php
@@ -317,7 +317,7 @@ class modFournisseur extends DolibarrModules
'p.ref'=>'ProductRef', 'p.label'=>'ProductLabel', 'p.accountancy_code_buy'=>'ProductAccountancyBuyCode', 'project.rowid'=>'ProjectId',
'project.ref'=>'ProjectRef', 'project.title'=>'ProjectLabel'
);
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->export_fields_array[$r]['f.multicurrency_code'] = 'Currency';
$this->export_fields_array[$r]['f.multicurrency_tx'] = 'CurrencyRate';
$this->export_fields_array[$r]['f.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
@@ -391,7 +391,7 @@ class modFournisseur extends DolibarrModules
'f.fk_statut'=>'InvoiceStatus', 'f.note_public'=>"InvoiceNote", 'p.rowid'=>'PaymentId', 'pf.amount'=>'AmountPayment',
'p.datep'=>'DatePayment', 'p.num_paiement'=>'PaymentNumber', 'p.fk_bank'=>'IdTransaction', 'project.rowid'=>'ProjectId', 'project.ref'=>'ProjectRef', 'project.title'=>'ProjectLabel'
);
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->export_fields_array[$r]['f.multicurrency_code'] = 'Currency';
$this->export_fields_array[$r]['f.multicurrency_tx'] = 'CurrencyRate';
$this->export_fields_array[$r]['f.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
@@ -458,7 +458,7 @@ class modFournisseur extends DolibarrModules
'fd.product_type'=>'TypeOfLineServiceOrProduct', 'fd.ref'=>'RefSupplier', 'fd.fk_product'=>'ProductId',
'p.ref'=>'ProductRef', 'p.label'=>'ProductLabel', 'project.rowid'=>'ProjectId', 'project.ref'=>'ProjectRef', 'project.title'=>'ProjectLabel'
);
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->export_fields_array[$r]['f.multicurrency_code'] = 'Currency';
$this->export_fields_array[$r]['f.multicurrency_tx'] = 'CurrencyRate';
$this->export_fields_array[$r]['f.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
@@ -557,7 +557,7 @@ class modFournisseur extends DolibarrModules
'f.model_pdf' => 'Model',
'f.date_valid' => 'Validation Date'
);
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->import_fields_array[$r]['f.multicurrency_code'] = 'Currency';
$this->import_fields_array[$r]['f.multicurrency_tx'] = 'CurrencyRate';
$this->import_fields_array[$r]['f.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
@@ -649,7 +649,7 @@ class modFournisseur extends DolibarrModules
'fd.date_end' => 'End Date',
'fd.fk_unit' => 'Unit'
);
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->import_fields_array[$r]['fd.multicurrency_code'] = 'Currency';
$this->import_fields_array[$r]['fd.multicurrency_subprice'] = 'CurrencyRate';
$this->import_fields_array[$r]['fd.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
@@ -735,7 +735,7 @@ class modFournisseur extends DolibarrModules
'c.model_pdf' => 'Model'
);
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->import_fields_array[$r]['c.multicurrency_code'] = 'Currency';
$this->import_fields_array[$r]['c.multicurrency_tx'] = 'CurrencyRate';
$this->import_fields_array[$r]['c.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
@@ -817,7 +817,7 @@ class modFournisseur extends DolibarrModules
'cd.fk_unit' => 'Unit'
);
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->import_fields_array[$r]['cd.multicurrency_code'] = 'Currency';
$this->import_fields_array[$r]['cd.multicurrency_subprice'] = 'CurrencyRate';
$this->import_fields_array[$r]['cd.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
diff --git a/htdocs/core/modules/modProduct.class.php b/htdocs/core/modules/modProduct.class.php
index 090fdd59fa3..604d96fd4cd 100644
--- a/htdocs/core/modules/modProduct.class.php
+++ b/htdocs/core/modules/modProduct.class.php
@@ -127,6 +127,14 @@ class modProduct extends DolibarrModules
$this->rights[$r][4] = 'creer';
$r++;
+ $this->rights[$r][0] = 33; // id de la permission
+ $this->rights[$r][1] = 'Read prices products'; // 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] = 'product_advance';
+ $this->rights[$r][5] = 'read_prices';
+ $r++;
+
$this->rights[$r][0] = 34; // id de la permission
$this->rights[$r][1] = 'Delete products'; // libelle de la permission
$this->rights[$r][2] = 'd'; // type de la permission (deprecie a ce jour)
@@ -203,7 +211,7 @@ class modProduct extends DolibarrModules
if (is_object($mysoc) && $usenpr) {
$this->export_fields_array[$r]['p.recuperableonly'] = 'NPR';
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled) || !empty($conf->margin->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice") || !empty($conf->margin->enabled)) {
$this->export_fields_array[$r] = array_merge($this->export_fields_array[$r], array('p.cost_price'=>'CostPrice'));
}
if (!empty($conf->stock->enabled)) {
@@ -216,7 +224,7 @@ class modProduct extends DolibarrModules
$keyforelement = 'product';
$keyforaliasextra = 'extra';
include DOL_DOCUMENT_ROOT.'/core/extrafieldsinexport.inc.php';
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
$this->export_fields_array[$r] = array_merge($this->export_fields_array[$r], array('s.nom'=>'Supplier', 'pf.ref_fourn'=>'SupplierRef', 'pf.quantity'=>'QtyMin', 'pf.remise_percent'=>'DiscountQtyMin', 'pf.unitprice'=>'BuyingPrice', 'pf.delivery_time_days'=>'NbDaysToDelivery'));
}
if (!empty($conf->global->EXPORTTOOL_CATEGORIES)) {
@@ -250,7 +258,7 @@ class modProduct extends DolibarrModules
if (isModEnabled('barcode')) {
$this->export_TypeFields_array[$r] = array_merge($this->export_TypeFields_array[$r], array('p.barcode'=>'Text'));
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
$this->export_TypeFields_array[$r] = array_merge($this->export_TypeFields_array[$r], array('s.nom'=>'Text', 'pf.ref_fourn'=>'Text', 'pf.unitprice'=>'Numeric', 'pf.quantity'=>'Numeric', 'pf.remise_percent'=>'Numeric', 'pf.delivery_time_days'=>'Numeric'));
}
if (!empty($conf->global->MAIN_MULTILANGS)) {
@@ -269,7 +277,7 @@ class modProduct extends DolibarrModules
if (isModEnabled('barcode')) {
$this->export_entities_array[$r] = array_merge($this->export_entities_array[$r], array('p.barcode'=>'product'));
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
$this->export_entities_array[$r] = array_merge($this->export_entities_array[$r], array('s.nom'=>'product_supplier_ref', 'pf.ref_fourn'=>'product_supplier_ref', 'pf.unitprice'=>'product_supplier_ref', 'pf.quantity'=>'product_supplier_ref', 'pf.remise_percent'=>'product_supplier_ref', 'pf.delivery_time_days'=>'product_supplier_ref'));
}
if (!empty($conf->global->MAIN_MULTILANGS)) {
@@ -284,7 +292,7 @@ class modProduct extends DolibarrModules
if (isModEnabled('barcode')) {
$this->export_entities_array[$r] = array_merge($this->export_entities_array[$r], array('p.barcode'=>'product'));
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
$this->export_entities_array[$r] = array_merge($this->export_entities_array[$r], array('s.nom'=>'product_supplier_ref', 'pf.ref_fourn'=>'product_supplier_ref', 'pf.unitprice'=>'product_supplier_ref', 'pf.quantity'=>'product_supplier_ref', 'pf.remise_percent'=>'product_supplier_ref', 'pf.delivery_time_days'=>'product_supplier_ref'));
}
if (!empty($conf->global->MAIN_MULTILANGS)) {
@@ -305,7 +313,7 @@ class modProduct extends DolibarrModules
$this->export_sql_end[$r] .= ' LEFT JOIN '.MAIN_DB_PREFIX.'product_lang as l ON l.fk_product = p.rowid';
}
$this->export_sql_end[$r] .= ' LEFT JOIN '.MAIN_DB_PREFIX.'product_extrafields as extra ON p.rowid = extra.fk_object';
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
$this->export_sql_end[$r] .= ' LEFT JOIN '.MAIN_DB_PREFIX.'product_fournisseur_price as pf ON pf.fk_product = p.rowid LEFT JOIN '.MAIN_DB_PREFIX.'societe s ON s.rowid = pf.fk_soc';
}
if (!empty($conf->stock->enabled)) {
@@ -617,7 +625,7 @@ class modProduct extends DolibarrModules
));
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled) || !empty($conf->margin->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice") || !empty($conf->margin->enabled)) {
$this->import_fields_array[$r] = array_merge($this->import_fields_array[$r], array('p.cost_price'=>'CostPrice'));
}
if (is_object($mysoc) && $usenpr) {
@@ -710,7 +718,7 @@ class modProduct extends DolibarrModules
'p.desiredstock' => ''
));
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled) || !empty($conf->margin->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice") || !empty($conf->margin->enabled)) {
$import_sample = array_merge($import_sample, array('p.cost_price'=>'90'));
}
if (is_object($mysoc) && $usenpr) {
@@ -749,7 +757,7 @@ class modProduct extends DolibarrModules
$this->import_updatekeys_array[$r] = array_merge($this->import_updatekeys_array[$r], array('p.barcode'=>'BarCode')); //only show/allow barcode as update key if Barcode module enabled
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
// Import suppliers prices (note: this code is duplicated in module Service)
$r++;
$this->import_code[$r] = $this->rights_class.'_supplierprices';
@@ -783,7 +791,7 @@ class modProduct extends DolibarrModules
'sp.remise_percent'=>'DiscountQtyMin'
));
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->import_fields_array[$r] = array_merge($this->import_fields_array[$r], array(
'sp.fk_multicurrency'=>'CurrencyCodeId', //ideally this should be automatically obtained from the CurrencyCode on the next line
'sp.multicurrency_code'=>'CurrencyCode',
@@ -845,7 +853,7 @@ class modProduct extends DolibarrModules
// TODO Make this field not required and calculate it from price and qty
'sp.remise_percent' => '20'
));
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->import_examplevalues_array[$r] = array_merge($this->import_examplevalues_array[$r], array(
'sp.fk_multicurrency'=>'eg: 2, rowid for code of multicurrency currency',
'sp.multicurrency_code'=>'GBP',
diff --git a/htdocs/core/modules/modProjet.class.php b/htdocs/core/modules/modProjet.class.php
index ebfba5d95b9..5f1ad7d2099 100644
--- a/htdocs/core/modules/modProjet.class.php
+++ b/htdocs/core/modules/modProjet.class.php
@@ -246,7 +246,7 @@ class modProjet extends DolibarrModules
// Add multicompany field
if (!empty($conf->global->MULTICOMPANY_ENTITY_IN_EXPORT_IF_SHARED)) {
$nbofallowedentities = count(explode(',', getEntity('project'))); // If project are shared, nb will be > 1
- if (!empty($conf->multicompany->enabled) && $nbofallowedentities > 1) {
+ if (isModEnabled('multicompany') && $nbofallowedentities > 1) {
$this->export_fields_array[$r] += array('p.entity'=>'Entity');
}
}
diff --git a/htdocs/core/modules/modPropale.class.php b/htdocs/core/modules/modPropale.class.php
index f6443e6c992..524aa0086ea 100644
--- a/htdocs/core/modules/modPropale.class.php
+++ b/htdocs/core/modules/modPropale.class.php
@@ -197,7 +197,7 @@ class modPropale extends DolibarrModules
'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'=>'ProductLabel'
);
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->export_fields_array[$r]['c.multicurrency_code'] = 'Currency';
$this->export_fields_array[$r]['c.multicurrency_tx'] = 'CurrencyRate';
$this->export_fields_array[$r]['c.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
@@ -207,7 +207,7 @@ class modPropale extends DolibarrModules
// Add multicompany field
if (!empty($conf->global->MULTICOMPANY_ENTITY_IN_EXPORT_IF_SHARED)) {
$nbofallowedentities = count(explode(',', getEntity('propal')));
- if (!empty($conf->multicompany->enabled) && $nbofallowedentities > 1) {
+ if (isModEnabled('multicompany') && $nbofallowedentities > 1) {
$this->export_fields_array[$r]['c.entity'] = 'Entity';
}
}
@@ -300,7 +300,7 @@ class modPropale extends DolibarrModules
'c.date_livraison' => 'DeliveryDate',
'c.fk_user_valid' => 'ValidatedById'
);
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->import_fields_array[$r]['c.multicurrency_code'] = 'Currency';
$this->import_fields_array[$r]['c.multicurrency_tx'] = 'CurrencyRate';
$this->import_fields_array[$r]['c.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
@@ -388,7 +388,7 @@ class modPropale extends DolibarrModules
'cd.date_end' => 'End Date',
'cd.buy_price_ht' => 'LineBuyPriceHT'
);
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->import_fields_array[$r]['cd.multicurrency_code'] = 'Currency';
$this->import_fields_array[$r]['cd.multicurrency_subprice'] = 'CurrencyRate';
$this->import_fields_array[$r]['cd.multicurrency_total_ht'] = 'MulticurrencyAmountHT';
diff --git a/htdocs/core/modules/modRecruitment.class.php b/htdocs/core/modules/modRecruitment.class.php
index 1d2d614b9ea..ed67430bce5 100644
--- a/htdocs/core/modules/modRecruitment.class.php
+++ b/htdocs/core/modules/modRecruitment.class.php
@@ -261,7 +261,7 @@ class modRecruitment extends DolibarrModules
'prefix' => img_picto('', $this->picto, 'class="paddingright pictofixedwidth"'),
'mainmenu'=>'hrm',
'leftmenu'=>'recruitmentjobposition',
- 'url'=>'/recruitment/recruitmentindex.php',
+ 'url'=>'/recruitment/index.php',
'langs'=>'recruitment', // Lang file to use (without .lang) by module. File must be in langs/code_CODE/ directory.
'position'=>1000 + $r,
'enabled'=>'$conf->recruitment->enabled', // Define condition to show or hide menu entry. Use '$conf->recruitment->enabled' if entry must be visible if module is enabled.
diff --git a/htdocs/core/modules/modService.class.php b/htdocs/core/modules/modService.class.php
index 8f4b697332b..d2431d3e22c 100644
--- a/htdocs/core/modules/modService.class.php
+++ b/htdocs/core/modules/modService.class.php
@@ -102,6 +102,14 @@ class modService extends DolibarrModules
$this->rights[$r][4] = 'creer';
$r++;
+ $this->rights[$r][0] = 533; // id de la permission
+ $this->rights[$r][1] = 'Read prices services'; // 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] = 'service_advance';
+ $this->rights[$r][5] = 'read_prices';
+ $r++;
+
$this->rights[$r][0] = 534; // id de la permission
$this->rights[$r][1] = 'Delete les services'; // libelle de la permission
$this->rights[$r][2] = 'd'; // type de la permission (deprecie a ce jour)
@@ -168,7 +176,7 @@ class modService extends DolibarrModules
if (is_object($mysoc) && $usenpr) {
$this->export_fields_array[$r]['p.recuperableonly'] = 'NPR';
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled) || !empty($conf->margin->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice") || !empty($conf->margin->enabled)) {
$this->export_fields_array[$r] = array_merge($this->export_fields_array[$r], array('p.cost_price'=>'CostPrice'));
}
if (!empty($conf->stock->enabled)) {
@@ -181,7 +189,7 @@ class modService extends DolibarrModules
$keyforelement = 'product';
$keyforaliasextra = 'extra';
include DOL_DOCUMENT_ROOT.'/core/extrafieldsinexport.inc.php';
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
$this->export_fields_array[$r] = array_merge($this->export_fields_array[$r], array('s.nom'=>'Supplier', 'pf.ref_fourn'=>'SupplierRef', 'pf.quantity'=>'QtyMin', 'pf.remise_percent'=>'DiscountQtyMin', 'pf.unitprice'=>'BuyingPrice', 'pf.delivery_time_days'=>'NbDaysToDelivery'));
}
if (!empty($conf->global->EXPORTTOOL_CATEGORIES)) {
@@ -213,7 +221,7 @@ class modService extends DolibarrModules
if (isModEnabled('barcode')) {
$this->export_TypeFields_array[$r] = array_merge($this->export_TypeFields_array[$r], array('p.barcode'=>'Text'));
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
$this->export_TypeFields_array[$r] = array_merge($this->export_TypeFields_array[$r], array('s.nom'=>'Text', 'pf.ref_fourn'=>'Text', 'pf.unitprice'=>'Numeric', 'pf.quantity'=>'Numeric', 'pf.remise_percent'=>'Numeric', 'pf.delivery_time_days'=>'Numeric'));
}
if (!empty($conf->global->MAIN_MULTILANGS)) {
@@ -232,7 +240,7 @@ class modService extends DolibarrModules
if (isModEnabled('barcode')) {
$this->export_entities_array[$r] = array_merge($this->export_entities_array[$r], array('p.barcode'=>'product'));
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
$this->export_entities_array[$r] = array_merge($this->export_entities_array[$r], array('s.nom'=>'product_supplier_ref', 'pf.ref_fourn'=>'product_supplier_ref', 'pf.unitprice'=>'product_supplier_ref', 'pf.quantity'=>'product_supplier_ref', 'pf.remise_percent'=>'product_supplier_ref', 'pf.delivery_time_days'=>'product_supplier_ref'));
}
if (!empty($conf->global->MAIN_MULTILANGS)) {
@@ -247,7 +255,7 @@ class modService extends DolibarrModules
if (isModEnabled('barcode')) {
$this->export_entities_array[$r] = array_merge($this->export_entities_array[$r], array('p.barcode'=>'product'));
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
$this->export_entities_array[$r] = array_merge($this->export_entities_array[$r], array('s.nom'=>'product_supplier_ref', 'pf.ref_fourn'=>'product_supplier_ref', 'pf.unitprice'=>'product_supplier_ref', 'pf.quantity'=>'product_supplier_ref', 'pf.remise_percent'=>'product_supplier_ref', 'pf.delivery_time_days'=>'product_supplier_ref'));
}
if (!empty($conf->global->MAIN_MULTILANGS)) {
@@ -268,7 +276,7 @@ class modService extends DolibarrModules
$this->export_sql_end[$r] .= ' LEFT JOIN '.MAIN_DB_PREFIX.'product_lang as l ON l.fk_product = p.rowid';
}
$this->export_sql_end[$r] .= ' LEFT JOIN '.MAIN_DB_PREFIX.'product_extrafields as extra ON p.rowid = extra.fk_object';
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
$this->export_sql_end[$r] .= ' LEFT JOIN '.MAIN_DB_PREFIX.'product_fournisseur_price as pf ON pf.fk_product = p.rowid LEFT JOIN '.MAIN_DB_PREFIX.'societe s ON s.rowid = pf.fk_soc';
}
$this->export_sql_end[$r] .= ' WHERE p.fk_product_type = 1 AND p.entity IN ('.getEntity('product').')';
@@ -564,7 +572,7 @@ class modService extends DolibarrModules
));
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled) || !empty($conf->margin->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice") || !empty($conf->margin->enabled)) {
$this->import_fields_array[$r] = array_merge($this->import_fields_array[$r], array('p.cost_price'=>'CostPrice'));
}
if (is_object($mysoc) && $usenpr) {
@@ -655,7 +663,7 @@ class modService extends DolibarrModules
'p.desiredstock' => ''
));
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled) || !empty($conf->margin->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice") || !empty($conf->margin->enabled)) {
$import_sample = array_merge($import_sample, array('p.cost_price'=>'90'));
}
if (is_object($mysoc) && $usenpr) {
@@ -698,7 +706,7 @@ class modService extends DolibarrModules
}
if (empty($conf->product->enabled)) { // We enable next import templates only if module product not already enabled (to avoid duplicate entries)
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
// Import suppliers prices (note: this code is duplicated in module Service)
$r++;
$this->import_code[$r] = $this->rights_class.'_supplierprices';
@@ -732,7 +740,7 @@ class modService extends DolibarrModules
'sp.remise_percent'=>'DiscountQtyMin'
));
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->import_fields_array[$r] = array_merge($this->import_fields_array[$r], array(
'sp.fk_multicurrency'=>'CurrencyCodeId', //ideally this should be automatically obtained from the CurrencyCode on the next line
'sp.multicurrency_code'=>'CurrencyCode',
@@ -774,7 +782,7 @@ class modService extends DolibarrModules
// TODO Make this field not required and calculate it from price and qty
'sp.remise_percent' => '20'
));
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$this->import_examplevalues_array[$r] = array_merge($this->import_examplevalues_array[$r], array(
'sp.fk_multicurrency'=>'eg: 2, rowid for code of multicurrency currency',
'sp.multicurrency_code'=>'GBP',
diff --git a/htdocs/core/modules/modSociete.class.php b/htdocs/core/modules/modSociete.class.php
index 327262ce39f..5f898584ba4 100644
--- a/htdocs/core/modules/modSociete.class.php
+++ b/htdocs/core/modules/modSociete.class.php
@@ -148,7 +148,7 @@ class modSociete extends DolibarrModules
$this->rights[$r][1] = 'Read thirdparties customers';
$this->rights[$r][2] = 'r';
$this->rights[$r][3] = 0;
- $this->rights[$r][4] = 'thirparty_customer_advance'; // Visible if option MAIN_USE_ADVANCED_PERMS is on
+ $this->rights[$r][4] = 'thirdparty_customer_advance'; // Visible if option MAIN_USE_ADVANCED_PERMS is on
$this->rights[$r][5] = 'read';
$r++;
@@ -172,7 +172,7 @@ class modSociete extends DolibarrModules
$this->rights[$r][1] = 'Create thirdparties customers';
$this->rights[$r][2] = 'r';
$this->rights[$r][3] = 0;
- $this->rights[$r][4] = 'thirparty_customer_advance'; // Visible if option MAIN_USE_ADVANCED_PERMS is on
+ $this->rights[$r][4] = 'thirdparty_customer_advance'; // Visible if option MAIN_USE_ADVANCED_PERMS is on
$this->rights[$r][5] = 'read';
$r++;
@@ -295,7 +295,7 @@ class modSociete extends DolibarrModules
// Add multicompany field
if (!empty($conf->global->MULTICOMPANY_ENTITY_IN_EXPORT_IF_SHARED)) {
$nbofallowedentities = count(explode(',', getEntity('societe'))); // If project are shared, nb will be > 1
- if (!empty($conf->multicompany->enabled) && $nbofallowedentities > 1) {
+ if (isModEnabled('multicompany') && $nbofallowedentities > 1) {
$this->export_fields_array[$r] += array('s.entity'=>'Entity');
}
}
@@ -378,8 +378,8 @@ class modSociete extends DolibarrModules
't.libelle'=>"ThirdPartyType"
);
// Add multicompany field
- if (! empty($conf->global->MULTICOMPANY_ENTITY_IN_EXPORT_IF_SHARED)) {
- if (!empty($conf->multicompany->enabled)) {
+ if (!empty($conf->global->MULTICOMPANY_ENTITY_IN_EXPORT_IF_SHARED)) {
+ if (isModEnabled('multicompany')) {
$nbofallowedentities = count(explode(',', getEntity('contact')));
if ($nbofallowedentities > 1) {
$this->export_fields_array[$r]['c.entity'] = 'Entity';
@@ -413,7 +413,7 @@ class modSociete extends DolibarrModules
't.libelle'=>"company",
's.entity'=>'company',
); // We define here only fields that use another picto
- if (empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+ if (empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
unset($this->export_fields_array[$r]['s.code_fournisseur']);
unset($this->export_entities_array[$r]['s.code_fournisseur']);
}
@@ -520,7 +520,7 @@ class modSociete extends DolibarrModules
$this->import_fields_array[$r] += array('s.accountancy_code_sell'=>'ProductAccountancySellCode', 's.accountancy_code_buy'=>'ProductAccountancyBuyCode');
}
// Add social networks fields
- if (!empty($conf->socialnetworks->enabled)) {
+ if (isModEnabled('socialnetworks')) {
$sql = "SELECT code, label FROM ".MAIN_DB_PREFIX."c_socialnetworks WHERE active = 1";
$resql = $this->db->query($sql);
while ($obj = $this->db->fetch_object($resql)) {
@@ -693,7 +693,7 @@ class modSociete extends DolibarrModules
's.code_compta' => 'CustomerAccountancyCode',
's.code_compta_fournisseur' => 'SupplierAccountancyCode'
);
- if (!empty($conf->socialnetworks->enabled)) {
+ if (isModEnabled('socialnetworks')) {
$sql = "SELECT code, label FROM ".MAIN_DB_PREFIX."c_socialnetworks WHERE active = 1";
$resql = $this->db->query($sql);
while ($obj = $this->db->fetch_object($resql)) {
@@ -757,7 +757,7 @@ class modSociete extends DolibarrModules
's.note_public' => "NotePublic"
);
// Add social networks fields
- if (!empty($conf->socialnetworks->enabled)) {
+ if (isModEnabled('socialnetworks')) {
$sql = "SELECT code, label FROM ".MAIN_DB_PREFIX."c_socialnetworks WHERE active = 1";
$resql = $this->db->query($sql);
while ($obj = $this->db->fetch_object($resql)) {
@@ -835,7 +835,7 @@ class modSociete extends DolibarrModules
's.rowid' => 'Id',
's.lastname' => "Lastname",
);
- if (!empty($conf->socialnetworks->enabled)) {
+ if (isModEnabled('socialnetworks')) {
$sql = "SELECT code, label FROM ".MAIN_DB_PREFIX."c_socialnetworks WHERE active = 1";
$resql = $this->db->query($sql);
while ($obj = $this->db->fetch_object($resql)) {
diff --git a/htdocs/core/modules/modStock.class.php b/htdocs/core/modules/modStock.class.php
index 7aa9abb3bff..87ea6303742 100644
--- a/htdocs/core/modules/modStock.class.php
+++ b/htdocs/core/modules/modStock.class.php
@@ -266,7 +266,7 @@ class modStock extends DolibarrModules
$this->export_sql_end[$r] .= ' AND e.entity IN ('.getEntity('stock').')';
// Export stock including batch number
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
$langs->load("productbatch");
// This request is same than previous but without field ps.stock (real stock in warehouse) and with link to subtable productbatch
@@ -340,7 +340,7 @@ class modStock extends DolibarrModules
'p.rowid'=>"product", 'p.ref'=>"product", 'p.fk_product_type'=>"product", 'p.label'=>"product", 'p.description'=>"product", 'p.note'=>"product",
'p.price'=>"product", 'p.tva_tx'=>'product', 'p.tosell'=>"product", 'p.tobuy'=>"product", 'p.duration'=>"product", 'p.datec'=>'product', 'p.tms'=>'product'
); // We define here only fields that use another icon that the one defined into export_icon
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
$this->export_fields_array[$r]['sm.batch'] = 'Batch';
$this->export_TypeFields_array[$r]['sm.batch'] = 'Text';
$this->export_entities_array[$r]['sm.batch'] = 'movement';
diff --git a/htdocs/core/modules/modUser.class.php b/htdocs/core/modules/modUser.class.php
index 719c90c6dab..dc0da3e0ac3 100644
--- a/htdocs/core/modules/modUser.class.php
+++ b/htdocs/core/modules/modUser.class.php
@@ -225,7 +225,7 @@ class modUser extends DolibarrModules
'u.accountancy_code'=>"UserAccountancyCode",
'u.address'=>"Address", 'u.zip'=>"Zip", 'u.town'=>"Town",
'u.office_phone'=>'Phone', 'u.user_mobile'=>"Mobile", 'u.office_fax'=>'Fax',
- 'u.email'=>"Email", 'u.note'=>"Note", 'u.signature'=>'Signature',
+ 'u.email'=>"Email", 'u.note_public'=>"NotePublic", 'u.note_private'=>"NotePrivate", 'u.signature'=>'Signature',
'u.fk_user'=>'HierarchicalResponsible', 'u.thm'=>'THM', 'u.tjm'=>'TJM', 'u.weeklyhours'=>'WeeklyHours',
'u.dateemployment'=>'DateEmploymentStart', 'u.dateemploymentend'=>'DateEmploymentEnd', 'u.salary'=>'Salary', 'u.color'=>'Color', 'u.api_key'=>'ApiKey',
'u.birth'=>'DateOfBirth',
@@ -242,7 +242,7 @@ class modUser extends DolibarrModules
'u.accountancy_code'=>'Text',
'u.address'=>"Text", 'u.zip'=>"Text", 'u.town'=>"Text",
'u.office_phone'=>'Text', 'u.user_mobile'=>'Text', 'u.office_fax'=>'Text',
- 'u.email'=>'Text', 'u.datec'=>"Date", 'u.tms'=>"Date", 'u.admin'=>"Boolean", 'u.statut'=>'Status', 'u.note'=>"Text", 'u.signature'=>"Text", 'u.datelastlogin'=>'Date',
+ 'u.email'=>'Text', 'u.datec'=>"Date", 'u.tms'=>"Date", 'u.admin'=>"Boolean", 'u.statut'=>'Status', 'u.note_public'=>"Text", 'u.note_private'=>"Text", 'u.signature'=>"Text", 'u.datelastlogin'=>'Date',
'u.fk_user'=>"FormSelect:select_dolusers",
'u.birth'=>'Date',
'u.datepreviouslogin'=>'Date',
@@ -261,7 +261,7 @@ class modUser extends DolibarrModules
'u.accountancy_code'=>'user',
'u.address'=>"user", 'u.zip'=>"user", 'u.town'=>"user",
'u.office_phone'=>'user', 'u.user_mobile'=>'user', 'u.office_fax'=>'user',
- 'u.email'=>'user', 'u.note'=>"user", 'u.signature'=>'user',
+ 'u.email'=>'user', 'u.note_public'=>"user", 'u.note_private'=>"user", 'u.signature'=>'user',
'u.fk_user'=>'user', 'u.thm'=>'user', 'u.tjm'=>'user', 'u.weeklyhours'=>'user',
'u.dateemployment'=>'user', 'u.dateemploymentend'=>'user', 'u.salary'=>'user', 'u.color'=>'user', 'u.api_key'=>'user',
'u.birth'=>'user',
@@ -303,7 +303,7 @@ class modUser extends DolibarrModules
'u.pass_crypted'=>"Password", 'u.admin'=>"Administrator", 'u.fk_soc'=>"Company*", 'u.address'=>"Address", 'u.zip'=>"Zip", 'u.town'=>"Town",
'u.fk_state'=>"StateId", 'u.fk_country'=>"CountryCode",
'u.office_phone'=>"Phone", 'u.user_mobile'=>"Mobile", 'u.office_fax'=>"Fax",
- 'u.email'=>"Email", 'u.note'=>"Note", 'u.signature'=>'Signature',
+ 'u.email'=>"Email", 'u.note_public'=>"NotePublic", 'u.note_private'=>"NotePrivate", 'u.signature'=>'Signature',
'u.fk_user'=>'HierarchicalResponsible', 'u.thm'=>'THM', 'u.tjm'=>'TJM', 'u.weeklyhours'=>'WeeklyHours',
'u.dateemployment'=>'DateEmploymentStart', 'u.dateemploymentend'=>'DateEmploymentEnd', 'u.salary'=>'Salary', 'u.color'=>'Color', 'u.api_key'=>'ApiKey',
'u.birth'=>'DateOfBirth',
@@ -339,7 +339,7 @@ class modUser extends DolibarrModules
'u.pass_crypted'=>'Encrypted password',
'u.fk_soc'=>'0 (internal user) or company name (external user)', 'u.datec'=>dol_print_date(dol_now(), '%Y-%m-%d'), 'u.address'=>"61 jump street",
'u.zip'=>"123456", 'u.town'=>"Big town", 'u.fk_country'=>'US, FR, DE...', 'u.office_phone'=>"0101010101", 'u.office_fax'=>"0101010102",
- 'u.email'=>"test@mycompany.com", 'u.salary'=>"10000", 'u.note'=>"This is an example of note for record", 'u.datec'=>"2015-01-01 or 2015-01-01 12:30:00",
+ 'u.email'=>"test@mycompany.com", 'u.salary'=>"10000", 'u.note_public'=>"This is an example of public note for record", 'u.note_private'=>"This is an example of private note for record", 'u.datec'=>"2015-01-01 or 2015-01-01 12:30:00",
'u.statut'=>"0 (closed) or 1 (active)",
);
$this->import_updatekeys_array[$r] = array('u.lastname'=>'Lastname', 'u.firstname'=>'Firstname', 'u.login'=>'Login');
diff --git a/htdocs/core/modules/modWebhook.class.php b/htdocs/core/modules/modWebhook.class.php
index fbcb5f81003..fd7f658bd48 100644
--- a/htdocs/core/modules/modWebhook.class.php
+++ b/htdocs/core/modules/modWebhook.class.php
@@ -141,7 +141,7 @@ class modWebhook extends DolibarrModules
$this->conflictwith = array(); // List of module class names as string this module is in conflict with. Example: array('modModuleToDisable1', ...)
// The language file dedicated to your module
- $this->langfiles = array("webhook");
+ $this->langfiles = array();
// Prerequisites
$this->phpmin = array(5, 6); // Minimum version of PHP required by module
diff --git a/htdocs/core/modules/movement/doc/pdf_standard.modules.php b/htdocs/core/modules/movement/doc/pdf_standard.modules.php
index f83b6efa1ed..6f2a6fcf694 100644
--- a/htdocs/core/modules/movement/doc/pdf_standard.modules.php
+++ b/htdocs/core/modules/movement/doc/pdf_standard.modules.php
@@ -1119,7 +1119,7 @@ class pdf_standard extends ModelePDFMovement
// Show sender
$posy=42;
$posx=$this->marge_gauche;
- if (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=$this->page_largeur-$this->marge_droite-80;
+ if (!empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=$this->page_largeur-$this->marge_droite-80;
$hautcadre=40;
// Show sender frame
diff --git a/htdocs/core/modules/mrp/doc/pdf_vinci.modules.php b/htdocs/core/modules/mrp/doc/pdf_vinci.modules.php
index af37f6bbfcd..ed10b5ee2bf 100644
--- a/htdocs/core/modules/mrp/doc/pdf_vinci.modules.php
+++ b/htdocs/core/modules/mrp/doc/pdf_vinci.modules.php
@@ -819,7 +819,7 @@ class pdf_vinci extends ModelePDFMo
$pdf->SetXY($col1x, $tab2_top + 0);
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT"), 0, 'L', 1);
- $total_ht = ((!empty($conf->multicurrency->enabled) && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
+ $total_ht = ((isModEnabled("multicurrency") && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
$pdf->SetXY($col2x, $tab2_top + 0);
$pdf->MultiCell($largcol2, $tab2_hl, price($total_ht + (!empty($object->remise) ? $object->remise : 0)), 0, 'R', 1);
@@ -875,7 +875,7 @@ class pdf_vinci extends ModelePDFMo
$pdf->MultiCell($largcol2, $tab2_hl, price($object->total_localtax2), $useborder, 'R', 1);
}
} else {
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
//Local tax 1
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
@@ -905,7 +905,7 @@ class pdf_vinci extends ModelePDFMo
}
}
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
//Local tax 2
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
@@ -943,7 +943,7 @@ class pdf_vinci extends ModelePDFMo
$pdf->SetFillColor(224, 224, 224);
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities("TotalTTC"), $useborder, 'L', 1);
- $total_ttc = (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
+ $total_ttc = (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
$pdf->MultiCell($largcol2, $tab2_hl, price($total_ttc), $useborder, 'R', 1);
$pdf->SetFont('', '', $default_font_size - 1);
@@ -1085,7 +1085,7 @@ class pdf_vinci extends ModelePDFMo
//pdf_pagehead($pdf,$outputlangs,$this->page_hauteur);
//Affiche le filigrane brouillon - Print Draft Watermark
- /*if($object->statut==0 && (! empty($conf->global->COMMANDE_DRAFT_WATERMARK)) )
+ /*if($object->statut==0 && (!empty($conf->global->COMMANDE_DRAFT_WATERMARK)) )
{
pdf_watermark($pdf,$outputlangs,$this->page_hauteur,$this->page_largeur,'mm',$conf->global->COMMANDE_DRAFT_WATERMARK);
}*/
diff --git a/htdocs/core/modules/product/doc/pdf_standard.modules.php b/htdocs/core/modules/product/doc/pdf_standard.modules.php
index ea52b9c3c70..e4bcc0e4f04 100644
--- a/htdocs/core/modules/product/doc/pdf_standard.modules.php
+++ b/htdocs/core/modules/product/doc/pdf_standard.modules.php
@@ -351,7 +351,7 @@ class pdf_standard extends ModelePDFProduct
if ($i == ($nblines-1)) // No more lines, and no space left to show total, so we create a new page
{
$pdf->AddPage('','',true);
- if (! empty($tplidx)) $pdf->useTemplate($tplidx);
+ if (!empty($tplidx)) $pdf->useTemplate($tplidx);
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
$pdf->setPage($pageposafter+1);
}
@@ -421,7 +421,7 @@ class pdf_standard extends ModelePDFProduct
$pdf->MultiCell($this->page_largeur-$this->marge_droite-$this->postotalht, 3, $total_excl_tax, 0, 'R', 0);
// Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) $tvaligne=$object->lines[$i]->multicurrency_total_tva;
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) $tvaligne=$object->lines[$i]->multicurrency_total_tva;
else $tvaligne=$object->lines[$i]->total_tva;
$localtax1ligne=$object->lines[$i]->total_localtax1;
@@ -439,7 +439,7 @@ class pdf_standard extends ModelePDFProduct
// Retrieve type from database for backward compatibility with old records
if ((! isset($localtax1_type) || $localtax1_type=='' || ! isset($localtax2_type) || $localtax2_type=='') // if tax type not defined
- && (! empty($localtax1_rate) || ! empty($localtax2_rate))) // and there is local tax
+ && (!empty($localtax1_rate) || !empty($localtax2_rate))) // and there is local tax
{
$localtaxtmp_array=getLocalTaxesFromRate($vatrate,0,$object->thirdparty,$mysoc);
$localtax1_type = isset($localtaxtmp_array[0]) ? $localtaxtmp_array[0] : '';
@@ -457,7 +457,7 @@ class pdf_standard extends ModelePDFProduct
$this->tva[$vatrate] += $tvaligne;
// Add line
- if (! empty($conf->global->MAIN_PDF_DASH_BETWEEN_LINES) && $i < ($nblines - 1))
+ if (!empty($conf->global->MAIN_PDF_DASH_BETWEEN_LINES) && $i < ($nblines - 1))
{
$pdf->setPage($pageposafter);
$pdf->SetLineStyle(array('dash'=>'1,1','color'=>array(80,80,80)));
@@ -499,7 +499,7 @@ class pdf_standard extends ModelePDFProduct
$this->_pagefoot($pdf,$object,$outputlangs,1);
// New page
$pdf->AddPage();
- if (! empty($tplidx)) $pdf->useTemplate($tplidx);
+ if (!empty($tplidx)) $pdf->useTemplate($tplidx);
$pagenb++;
if (empty($conf->global->MAIN_PDF_DONOTREPEAT_HEAD)) $this->_pagehead($pdf, $object, 0, $outputlangs);
}
@@ -775,7 +775,7 @@ class pdf_standard extends ModelePDFProduct
// Show sender
$posy=42;
$posx=$this->marge_gauche;
- if (! empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=$this->page_largeur-$this->marge_droite-80;
+ if (!empty($conf->global->MAIN_INVERT_SENDER_RECIPIENT)) $posx=$this->page_largeur-$this->marge_droite-80;
$hautcadre=40;
// Show sender frame
diff --git a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php
index d00eee45219..29050c6b780 100644
--- a/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php
+++ b/htdocs/core/modules/project/doc/doc_generic_project_odt.modules.php
@@ -37,7 +37,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/doc.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
-if (!empty($conf->propal->enabled)) {
+if (isModEnabled("propal")) {
require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
}
if (isModEnabled('facture')) {
@@ -46,22 +46,22 @@ if (isModEnabled('facture')) {
if (isModEnabled('facture')) {
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture-rec.class.php';
}
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
}
-if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_invoice->enabled)) {
+if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_invoice")) {
require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php';
}
-if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) {
+if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) {
require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php';
}
-if (!empty($conf->contrat->enabled)) {
+if (isModEnabled('contrat')) {
require_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php';
}
if (!empty($conf->ficheinter->enabled)) {
require_once DOL_DOCUMENT_ROOT.'/fichinter/class/fichinter.class.php';
}
-if (!empty($conf->deplacement->enabled)) {
+if (isModEnabled('deplacement')) {
require_once DOL_DOCUMENT_ROOT.'/compta/deplacement/class/deplacement.class.php';
}
if (isModEnabled('agenda')) {
@@ -971,13 +971,13 @@ class doc_generic_project_odt extends ModelePDFProjects
'title' => "ListSupplierOrdersAssociatedProject",
'table' => 'commande_fournisseur',
'class' => 'CommandeFournisseur',
- 'test' => (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->commande->lire) || (!empty($conf->supplier_order->enabled) && $user->rights->supplier_order->lire)
+ 'test' => (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->commande->lire) || (isModEnabled("supplier_order") && $user->rights->supplier_order->lire)
),
'invoice_supplier' => array(
'title' => "ListSupplierInvoicesAssociatedProject",
'table' => 'facture_fourn',
'class' => 'FactureFournisseur',
- 'test' => (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->facture->lire) || (!empty($conf->supplier_invoice->enabled) && $user->rights->supplier_invoice->lire)
+ 'test' => (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->facture->lire) || (isModEnabled("supplier_invoice") && $user->rights->supplier_invoice->lire)
),
'contract' => array(
'title' => "ListContractAssociatedProject",
diff --git a/htdocs/core/modules/project/doc/pdf_beluga.modules.php b/htdocs/core/modules/project/doc/pdf_beluga.modules.php
index fba5e02b098..1dc5b7bf3f9 100644
--- a/htdocs/core/modules/project/doc/pdf_beluga.modules.php
+++ b/htdocs/core/modules/project/doc/pdf_beluga.modules.php
@@ -407,7 +407,7 @@ class pdf_beluga extends ModelePDFProjects
'class'=>'CommandeFournisseur',
'table'=>'commande_fournisseur',
'datefieldname'=>'date_commande',
- 'test'=>(!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->commande->lire) || (!empty($conf->supplier_order->enabled) && $user->rights->supplier_order->lire),
+ 'test'=>(isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->commande->lire) || (isModEnabled("supplier_order") && $user->rights->supplier_order->lire),
'lang'=>'orders'),
'invoice_supplier'=>array(
'name'=>"BillsSuppliers",
@@ -416,7 +416,7 @@ class pdf_beluga extends ModelePDFProjects
'margin'=>'minus',
'table'=>'facture_fourn',
'datefieldname'=>'datef',
- 'test'=>(!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->facture->lire) || (!empty($conf->supplier_invoice->enabled) && $user->rights->supplier_invoice->lire),
+ 'test'=>(isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->rights->fournisseur->facture->lire) || (isModEnabled("supplier_invoice") && $user->rights->supplier_invoice->lire),
'lang'=>'bills'),
'contract'=>array(
'name'=>"Contracts",
diff --git a/htdocs/core/modules/project/task/doc/doc_generic_task_odt.modules.php b/htdocs/core/modules/project/task/doc/doc_generic_task_odt.modules.php
index 410d3ae5b29..35f00912143 100644
--- a/htdocs/core/modules/project/task/doc/doc_generic_task_odt.modules.php
+++ b/htdocs/core/modules/project/task/doc/doc_generic_task_odt.modules.php
@@ -38,7 +38,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/doc.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
-if (!empty($conf->propal->enabled)) {
+if (isModEnabled("propal")) {
require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
}
if (isModEnabled('facture')) {
@@ -47,22 +47,22 @@ if (isModEnabled('facture')) {
if (isModEnabled('facture')) {
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture-rec.class.php';
}
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
}
-if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_invoice->enabled)) {
+if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_invoice")) {
require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php';
}
-if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) {
+if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) {
require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php';
}
-if (!empty($conf->contrat->enabled)) {
+if (isModEnabled('contrat')) {
require_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php';
}
if (!empty($conf->ficheinter->enabled)) {
require_once DOL_DOCUMENT_ROOT.'/fichinter/class/fichinter.class.php';
}
-if (!empty($conf->deplacement->enabled)) {
+if (isModEnabled('deplacement')) {
require_once DOL_DOCUMENT_ROOT.'/compta/deplacement/class/deplacement.class.php';
}
if (isModEnabled('agenda')) {
diff --git a/htdocs/core/modules/propale/doc/pdf_azur.modules.php b/htdocs/core/modules/propale/doc/pdf_azur.modules.php
index 177443153ce..c2971c9344e 100644
--- a/htdocs/core/modules/propale/doc/pdf_azur.modules.php
+++ b/htdocs/core/modules/propale/doc/pdf_azur.modules.php
@@ -640,7 +640,7 @@ class pdf_azur extends ModelePDFPropales
$pdf->MultiCell($this->page_largeur - $this->marge_droite - $this->postotalht, 3, $total_excl_tax, 0, 'R', 0);
// Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $object->lines[$i]->multicurrency_total_tva;
} else {
$tvaligne = $object->lines[$i]->total_tva;
@@ -793,7 +793,7 @@ class pdf_azur extends ModelePDFPropales
// Find the desire PDF
$filetomerge = new Propalmergepdfproduct($this->db);
- if ($conf->global->MAIN_MULTILANGS) {
+ if (!empty($conf->global->MAIN_MULTILANGS)) {
$filetomerge->fetch_by_product($line->fk_product, $outputlangs->defaultlang);
} else {
$filetomerge->fetch_by_product($line->fk_product);
@@ -815,15 +815,15 @@ class pdf_azur extends ModelePDFPropales
foreach ($filetomerge->lines as $linefile) {
if (!empty($linefile->id) && !empty($linefile->file_name)) {
if (!empty($conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO)) {
- if (!empty($conf->product->enabled)) {
+ if (isModEnabled("product")) {
$filetomerge_dir = $conf->product->multidir_output[$entity_product_file].'/'.get_exdir($product->id, 2, 0, 0, $product, 'product').$product->id."/photos";
- } elseif (!empty($conf->service->enabled)) {
+ } elseif (isModEnabled("service")) {
$filetomerge_dir = $conf->service->multidir_output[$entity_product_file].'/'.get_exdir($product->id, 2, 0, 0, $product, 'product').$product->id."/photos";
}
} else {
- if (!empty($conf->product->enabled)) {
+ if (isModEnabled("product")) {
$filetomerge_dir = $conf->product->multidir_output[$entity_product_file].'/'.get_exdir(0, 0, 0, 0, $product, 'product');
- } elseif (!empty($conf->service->enabled)) {
+ } elseif (isModEnabled("service")) {
$filetomerge_dir = $conf->service->multidir_output[$entity_product_file].'/'.get_exdir(0, 0, 0, 0, $product, 'product');
}
}
@@ -1113,14 +1113,14 @@ class pdf_azur extends ModelePDFPropales
$pdf->SetXY($col1x, $tab2_top + 0);
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT"), 0, 'L', 1);
- $total_ht = ((!empty($conf->multicurrency->enabled) && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
+ $total_ht = ((isModEnabled("multicurrency") && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
$pdf->SetXY($col2x, $tab2_top + 0);
$pdf->MultiCell($largcol2, $tab2_hl, price($total_ht + (!empty($object->remise) ? $object->remise : 0), 0, $outputlangs), 0, 'R', 1);
// Show VAT by rates and total
$pdf->SetFillColor(248, 248, 248);
- $total_ttc = (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
+ $total_ttc = (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
$this->atleastoneratenotnull = 0;
if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) {
@@ -1129,7 +1129,7 @@ class pdf_azur extends ModelePDFPropales
// Nothing to do
} else {
//Local tax 1 before VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('1', '3', '5'))) {
@@ -1159,7 +1159,7 @@ class pdf_azur extends ModelePDFPropales
}
//}
//Local tax 2 before VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('1', '3', '5'))) {
@@ -1221,7 +1221,7 @@ class pdf_azur extends ModelePDFPropales
}
//Local tax 1 after VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('2', '4', '6'))) {
@@ -1251,7 +1251,7 @@ class pdf_azur extends ModelePDFPropales
}
//}
//Local tax 2 after VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('2', '4', '6'))) {
@@ -1299,7 +1299,7 @@ class pdf_azur extends ModelePDFPropales
/*
$resteapayer = $object->total_ttc - $deja_regle;
- if (! empty($object->paye)) $resteapayer=0;
+ if (!empty($object->paye)) $resteapayer=0;
*/
if ($deja_regle > 0) {
diff --git a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php
index 1ed76728b92..9d52132db56 100644
--- a/htdocs/core/modules/propale/doc/pdf_cyan.modules.php
+++ b/htdocs/core/modules/propale/doc/pdf_cyan.modules.php
@@ -764,7 +764,7 @@ class pdf_cyan extends ModelePDFPropales
// Collection of totals by value of vat in $this->tva["rate"] = total_tva
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $object->lines[$i]->multicurrency_total_tva;
} else {
$tvaligne = $object->lines[$i]->total_tva;
@@ -918,7 +918,7 @@ class pdf_cyan extends ModelePDFPropales
// Find the desire PDF
$filetomerge = new Propalmergepdfproduct($this->db);
- if ($conf->global->MAIN_MULTILANGS) {
+ if (!empty($conf->global->MAIN_MULTILANGS)) {
$filetomerge->fetch_by_product($line->fk_product, $outputlangs->defaultlang);
} else {
$filetomerge->fetch_by_product($line->fk_product);
@@ -940,15 +940,15 @@ class pdf_cyan extends ModelePDFPropales
foreach ($filetomerge->lines as $linefile) {
if (!empty($linefile->id) && !empty($linefile->file_name)) {
if (!empty($conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO)) {
- if (!empty($conf->product->enabled)) {
+ if (isModEnabled("product")) {
$filetomerge_dir = $conf->product->multidir_output[$entity_product_file].'/'.get_exdir($product->id, 2, 0, 0, $product, 'product').$product->id."/photos";
- } elseif (!empty($conf->service->enabled)) {
+ } elseif (isModEnabled("service")) {
$filetomerge_dir = $conf->service->multidir_output[$entity_product_file].'/'.get_exdir($product->id, 2, 0, 0, $product, 'product').$product->id."/photos";
}
} else {
- if (!empty($conf->product->enabled)) {
+ if (isModEnabled("product")) {
$filetomerge_dir = $conf->product->multidir_output[$entity_product_file].'/'.get_exdir(0, 0, 0, 0, $product, 'product');
- } elseif (!empty($conf->service->enabled)) {
+ } elseif (isModEnabled("service")) {
$filetomerge_dir = $conf->service->multidir_output[$entity_product_file].'/'.get_exdir(0, 0, 0, 0, $product, 'product');
}
}
@@ -1238,14 +1238,14 @@ class pdf_cyan extends ModelePDFPropales
$pdf->SetXY($col1x, $tab2_top + 0);
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT").(is_object($outputlangsbis) ? ' / '.$outputlangsbis->transnoentities("TotalHT") : ''), 0, 'L', 1);
- $total_ht = ((!empty($conf->multicurrency->enabled) && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
+ $total_ht = ((isModEnabled("multicurrency") && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
$pdf->SetXY($col2x, $tab2_top + 0);
$pdf->MultiCell($largcol2, $tab2_hl, price($total_ht + (!empty($object->remise) ? $object->remise : 0), 0, $outputlangs), 0, 'R', 1);
// Show VAT by rates and total
$pdf->SetFillColor(248, 248, 248);
- $total_ttc = (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
+ $total_ttc = (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
$this->atleastoneratenotnull = 0;
if (empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) {
@@ -1254,7 +1254,7 @@ class pdf_cyan extends ModelePDFPropales
// Nothing to do
} else {
//Local tax 1 before VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('1', '3', '5'))) {
@@ -1285,7 +1285,7 @@ class pdf_cyan extends ModelePDFPropales
}
//}
//Local tax 2 before VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('1', '3', '5'))) {
@@ -1342,7 +1342,7 @@ class pdf_cyan extends ModelePDFPropales
}
//Local tax 1 after VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('2', '4', '6'))) {
@@ -1373,7 +1373,7 @@ class pdf_cyan extends ModelePDFPropales
}
//}
//Local tax 2 after VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('2', '4', '6'))) {
@@ -1423,7 +1423,7 @@ class pdf_cyan extends ModelePDFPropales
$resteapayer = 0;
/*
$resteapayer = $object->total_ttc - $deja_regle;
- if (! empty($object->paye)) $resteapayer=0;
+ if (!empty($object->paye)) $resteapayer=0;
*/
if ($deja_regle > 0) {
diff --git a/htdocs/core/modules/rapport/pdf_paiement.class.php b/htdocs/core/modules/rapport/pdf_paiement.class.php
index 215987054ce..e4991a5830d 100644
--- a/htdocs/core/modules/rapport/pdf_paiement.class.php
+++ b/htdocs/core/modules/rapport/pdf_paiement.class.php
@@ -185,14 +185,14 @@ class pdf_paiement
$sql .= ", c.code as paiement_code, p.num_paiement as num_payment";
$sql .= ", p.amount as paiement_amount, f.total_ttc as facture_amount";
$sql .= ", pf.amount as pf_amount";
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$sql .= ", ba.ref as bankaccount";
}
$sql .= ", p.rowid as prowid";
$sql .= " FROM ".MAIN_DB_PREFIX."paiement as p LEFT JOIN ".MAIN_DB_PREFIX."c_paiement as c ON p.fk_paiement = c.id";
$sql .= ", ".MAIN_DB_PREFIX."facture as f,";
$sql .= " ".MAIN_DB_PREFIX."paiement_facture as pf,";
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$sql .= " ".MAIN_DB_PREFIX."bank as b, ".MAIN_DB_PREFIX."bank_account as ba,";
}
$sql .= " ".MAIN_DB_PREFIX."societe as s";
@@ -200,7 +200,7 @@ class pdf_paiement
$sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc";
}
$sql .= " WHERE f.fk_soc = s.rowid AND pf.fk_facture = f.rowid AND pf.fk_paiement = p.rowid";
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$sql .= " AND p.fk_bank = b.rowid AND b.fk_account = ba.rowid ";
}
$sql .= " AND f.entity IN (".getEntity('invoice').")";
@@ -223,14 +223,14 @@ class pdf_paiement
$sql .= ", c.code as paiement_code, p.num_paiement as num_payment";
$sql .= ", p.amount as paiement_amount, f.total_ttc as facture_amount";
$sql .= ", pf.amount as pf_amount";
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$sql .= ", ba.ref as bankaccount";
}
$sql .= ", p.rowid as prowid";
$sql .= " FROM ".MAIN_DB_PREFIX."paiementfourn as p LEFT JOIN ".MAIN_DB_PREFIX."c_paiement as c ON p.fk_paiement = c.id";
$sql .= ", ".MAIN_DB_PREFIX."facture_fourn as f,";
$sql .= " ".MAIN_DB_PREFIX."paiementfourn_facturefourn as pf,";
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$sql .= " ".MAIN_DB_PREFIX."bank as b, ".MAIN_DB_PREFIX."bank_account as ba,";
}
$sql .= " ".MAIN_DB_PREFIX."societe as s";
@@ -238,7 +238,7 @@ class pdf_paiement
$sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc";
}
$sql .= " WHERE f.fk_soc = s.rowid AND pf.fk_facturefourn = f.rowid AND pf.fk_paiementfourn = p.rowid";
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$sql .= " AND p.fk_bank = b.rowid AND b.fk_account = ba.rowid ";
}
$sql .= " AND f.entity IN (".getEntity('invoice').")";
diff --git a/htdocs/core/modules/reception/doc/pdf_squille.modules.php b/htdocs/core/modules/reception/doc/pdf_squille.modules.php
index 886168c28a6..050459d91d2 100644
--- a/htdocs/core/modules/reception/doc/pdf_squille.modules.php
+++ b/htdocs/core/modules/reception/doc/pdf_squille.modules.php
@@ -917,7 +917,7 @@ class pdf_squille extends ModelePdfReception
$origin_id = $object->origin_id;
// TODO move to external function
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) { // commonly $origin='commande'
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) { // commonly $origin='commande'
$outputlangs->load('orders');
$classname = 'CommandeFournisseur';
diff --git a/htdocs/core/modules/security/generate/modGeneratePassPerso.class.php b/htdocs/core/modules/security/generate/modGeneratePassPerso.class.php
index baa818aa63b..02b970ee2aa 100644
--- a/htdocs/core/modules/security/generate/modGeneratePassPerso.class.php
+++ b/htdocs/core/modules/security/generate/modGeneratePassPerso.class.php
@@ -98,8 +98,8 @@ class modGeneratePassPerso extends ModeleGenPassword
$this->user = $user;
if (empty($conf->global->USER_PASSWORD_PATTERN)) {
- // default value at auto generation (12 chars, 1 upercase, 1 digit, 1 special char, 3 repeat, exclude ambiguous characters).
- dolibarr_set_const($db, "USER_PASSWORD_PATTERN", '12;1;1;1;3;1', 'chaine', 0, '', $conf->entity);
+ // default value at auto generation (12 chars, 1 uppercase, 1 digit, 0 special char, 3 repeat max, exclude ambiguous characters).
+ dolibarr_set_const($db, "USER_PASSWORD_PATTERN", '12;1;1;0;3;1', 'chaine', 0, '', $conf->entity);
}
$this->Maj = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
diff --git a/htdocs/core/modules/societe/mod_codecompta_aquarium.php b/htdocs/core/modules/societe/mod_codecompta_aquarium.php
index 4d1d01db682..257bdf55e52 100644
--- a/htdocs/core/modules/societe/mod_codecompta_aquarium.php
+++ b/htdocs/core/modules/societe/mod_codecompta_aquarium.php
@@ -98,7 +98,7 @@ class mod_codecompta_aquarium extends ModeleAccountancyCode
if (!isset($conf->global->COMPANY_AQUARIUM_REMOVE_SPECIAL) || !empty($conf->global->$conf->global->COMPANY_AQUARIUM_REMOVE_SPECIAL)) {
$texte .= $langs->trans('RemoveSpecialChars').' = '.yn(1)." \n";
}
- //if (! empty($conf->global->COMPANY_AQUARIUM_REMOVE_ALPHA)) $texte.=$langs->trans('COMPANY_AQUARIUM_REMOVE_ALPHA').' = '.yn($conf->global->COMPANY_AQUARIUM_REMOVE_ALPHA)." \n";
+ //if (!empty($conf->global->COMPANY_AQUARIUM_REMOVE_ALPHA)) $texte.=$langs->trans('COMPANY_AQUARIUM_REMOVE_ALPHA').' = '.yn($conf->global->COMPANY_AQUARIUM_REMOVE_ALPHA)." \n";
if (!empty($conf->global->COMPANY_AQUARIUM_CLEAN_REGEX)) {
$texte .= $langs->trans('COMPANY_AQUARIUM_CLEAN_REGEX').' = '.$conf->global->COMPANY_AQUARIUM_CLEAN_REGEX." \n";
}
diff --git a/htdocs/core/modules/stocktransfer/doc/pdf_eagle.modules.php b/htdocs/core/modules/stocktransfer/doc/pdf_eagle.modules.php
index 7722698593c..87a6bcf0e38 100644
--- a/htdocs/core/modules/stocktransfer/doc/pdf_eagle.modules.php
+++ b/htdocs/core/modules/stocktransfer/doc/pdf_eagle.modules.php
@@ -531,7 +531,7 @@ class pdf_eagle extends ModelePdfStockTransfer
$pdf->SetFont('', '', $default_font_size - 1); // On repositionne la police par defaut
// Lot / série
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
$pdf->SetXY($this->posxlot, $curY);
$pdf->MultiCell(($this->posxweightvol - $this->posxlot), 3, $object->lines[$i]->batch, '', 'C');
}
@@ -813,7 +813,7 @@ class pdf_eagle extends ModelePdfStockTransfer
$pdf->MultiCell($this->posxlot - $this->posxdesc, 2, $outputlangs->transnoentities("Description"), '', 'L');
}
- if (!empty($conf->productbatch->enabled) && $this->atLeastOneBatch) {
+ if (isModEnabled('productbatch') && $this->atLeastOneBatch) {
$pdf->line($this->posxlot - 1, $tab_top, $this->posxlot - 1, $tab_top + $tab_height);
if (empty($hidetop)) {
$pdf->SetXY($this->posxlot, $tab_top + 1);
diff --git a/htdocs/core/modules/stocktransfer/doc/pdf_eagle_proforma.modules.php b/htdocs/core/modules/stocktransfer/doc/pdf_eagle_proforma.modules.php
index 5bff26a9d1d..fa49b0b6d44 100644
--- a/htdocs/core/modules/stocktransfer/doc/pdf_eagle_proforma.modules.php
+++ b/htdocs/core/modules/stocktransfer/doc/pdf_eagle_proforma.modules.php
@@ -682,7 +682,7 @@ class pdf_eagle_proforma extends ModelePDFCommandes
// Collection of totals by value of vat in $this->tva["rate"] = total_tva
- if ($conf->multicurrency->enabled && $object->multicurrency_tx != 1) $tvaligne = $object->lines[$i]->multicurrency_total_tva;
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) $tvaligne = $object->lines[$i]->multicurrency_total_tva;
else $tvaligne = $object->lines[$i]->total_tva;
$localtax1ligne = $object->lines[$i]->total_localtax1;
@@ -882,7 +882,7 @@ class pdf_eagle_proforma extends ModelePDFCommandes
}
*/
/* TODO
- else if (! empty($object->availability_code))
+ else if (!empty($object->availability_code))
{
$pdf->SetXY($this->marge_gauche, $posy);
$pdf->SetTextColor(200,0,0);
@@ -1035,7 +1035,7 @@ class pdf_eagle_proforma extends ModelePDFCommandes
/*$pdf->SetFillColor(255, 255, 255);
$pdf->SetXY($col1x, $tab2_top + 0);
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT").(is_object($outputlangsbis) ? ' / '.$outputlangsbis->transnoentities("TotalHT") : ''), 0, 'L', 1);
- $total_ht = (($conf->multicurrency->enabled && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
+ $total_ht = ((isModEnabled("multicurrency") && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
$pdf->SetXY($col2x, $tab2_top + 0);
$pdf->MultiCell($largcol2, $tab2_hl, price($total_ht + (!empty($object->remise) ? $object->remise : 0), 0, $outputlangs), 0, 'R', 1);*/
diff --git a/htdocs/core/modules/supplier_invoice/doc/pdf_canelle.modules.php b/htdocs/core/modules/supplier_invoice/doc/pdf_canelle.modules.php
index 76c0ed56851..39a9aab7e78 100644
--- a/htdocs/core/modules/supplier_invoice/doc/pdf_canelle.modules.php
+++ b/htdocs/core/modules/supplier_invoice/doc/pdf_canelle.modules.php
@@ -167,7 +167,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
$this->posxqty = 130;
$this->posxunit = 147;
}
- //if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) $this->posxtva=$this->posxup;
+ //if (!empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) $this->posxtva=$this->posxup;
$this->posxpicture = $this->posxtva - (empty($conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH) ? 20 : $conf->global->MAIN_DOCUMENTS_WITH_PICTURE_WIDTH); // width of images
if ($this->page_largeur < 210) { // To work with US executive format
$this->posxpicture -= 20;
@@ -232,9 +232,9 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
$nblines = count($object->lines);
if ($conf->fournisseur->facture->dir_output) {
- $deja_regle = $object->getSommePaiement((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? 1 : 0);
- $amount_credit_notes_included = $object->getSumCreditNotesUsed((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? 1 : 0);
- $amount_deposits_included = $object->getSumDepositsUsed((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? 1 : 0);
+ $deja_regle = $object->getSommePaiement((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? 1 : 0);
+ $amount_credit_notes_included = $object->getSumCreditNotesUsed((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? 1 : 0);
+ $amount_deposits_included = $object->getSumDepositsUsed((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? 1 : 0);
// Definition of $dir and $file
if ($object->specimen) {
@@ -499,7 +499,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
$pdf->MultiCell($this->page_largeur - $this->marge_droite - $this->postotalht, 3, $total_excl_tax, 0, 'R', 0);
// Collection of totals by VAT value in $this->tva["taux"]=total_tva
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $object->lines[$i]->multicurrency_total_tva;
} else {
$tvaligne = $object->lines[$i]->total_tva;
@@ -683,14 +683,14 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
$pdf->SetXY($col1x, $tab2_top + 0);
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT"), 0, 'L', 1);
- $total_ht = ((!empty($conf->multicurrency->enabled) && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
+ $total_ht = ((isModEnabled("multicurrency") && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
$pdf->SetXY($col2x, $tab2_top + 0);
$pdf->MultiCell($largcol2, $tab2_hl, price($sign * ($total_ht + (!empty($object->remise) ? $object->remise : 0)), 0, $outputlangs), 0, 'R', 1);
// Show VAT by rates and total
$pdf->SetFillColor(248, 248, 248);
- $total_ttc = (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
+ $total_ttc = (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
$this->atleastoneratenotnull = 0;
foreach ($this->tva as $tvakey => $tvaval) {
@@ -740,7 +740,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
$pdf->MultiCell($largcol2, $tab2_hl, price($object->total_localtax2, 0, $outputlangs), 0, 'R', 1);
}
} else {
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
//Local tax 1
foreach ($this->localtax1 as $tvakey => $tvaval) {
@@ -765,7 +765,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
}
//}
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
//Local tax 2
foreach ($this->localtax2 as $tvakey => $tvaval) {
@@ -802,8 +802,8 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
$pdf->MultiCell($largcol2, $tab2_hl, price($sign * $total_ttc, 0, $outputlangs), $useborder, 'R', 1);
$pdf->SetTextColor(0, 0, 0);
- $creditnoteamount = $object->getSumCreditNotesUsed((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? 1 : 0); // Warning, this also include excess received
- $depositsamount = $object->getSumDepositsUsed((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? 1 : 0);
+ $creditnoteamount = $object->getSumCreditNotesUsed((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? 1 : 0); // Warning, this also include excess received
+ $depositsamount = $object->getSumDepositsUsed((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? 1 : 0);
//print "x".$creditnoteamount."-".$depositsamount;exit;
$resteapayer = price2num($total_ttc - $deja_regle - $creditnoteamount - $depositsamount, 'MT');
if (!empty($object->paye)) {
@@ -1036,7 +1036,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
$pdf->SetXY($tab3_posx, $tab3_top + $y);
$pdf->MultiCell(20, 3, dol_print_date($this->db->jdate($row->date), 'day', false, $outputlangs, true), 0, 'L', 0);
$pdf->SetXY($tab3_posx + 21, $tab3_top + $y);
- $pdf->MultiCell(20, 3, price($sign * ((!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $row->multicurrency_amount : $row->amount)), 0, 'L', 0);
+ $pdf->MultiCell(20, 3, price($sign * ((isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $row->multicurrency_amount : $row->amount)), 0, 'L', 0);
$pdf->SetXY($tab3_posx + 40, $tab3_top + $y);
$oper = $outputlangs->transnoentitiesnoconv("PaymentTypeShort".$row->code);
diff --git a/htdocs/core/modules/supplier_order/doc/pdf_cornas.modules.php b/htdocs/core/modules/supplier_order/doc/pdf_cornas.modules.php
index 233d18ce229..00d1e2e28e7 100644
--- a/htdocs/core/modules/supplier_order/doc/pdf_cornas.modules.php
+++ b/htdocs/core/modules/supplier_order/doc/pdf_cornas.modules.php
@@ -693,7 +693,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders
// Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $object->lines[$i]->multicurrency_total_tva;
} else {
$tvaligne = $object->lines[$i]->total_tva;
@@ -975,7 +975,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders
$pdf->SetXY($col1x, $tab2_top + 0);
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT"), 0, 'L', 1);
- $total_ht = ((!empty($conf->multicurrency->enabled) && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
+ $total_ht = ((isModEnabled("multicurrency") && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
$pdf->SetXY($col2x, $tab2_top + 0);
$pdf->MultiCell($largcol2, $tab2_hl, price($total_ht + (!empty($object->remise) ? $object->remise : 0)), 0, 'R', 1);
@@ -1031,7 +1031,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders
$pdf->MultiCell($largcol2, $tab2_hl, price($object->total_localtax2), $useborder, 'R', 1);
}
} else {
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
//Local tax 1
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
@@ -1061,7 +1061,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders
}
}
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
//Local tax 2
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
@@ -1099,7 +1099,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders
$pdf->SetFillColor(224, 224, 224);
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities("TotalTTC"), $useborder, 'L', 1);
- $total_ttc = (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
+ $total_ttc = (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
$pdf->MultiCell($largcol2, $tab2_hl, price($total_ttc), $useborder, 'R', 1);
$pdf->SetFont('', '', $default_font_size - 1);
@@ -1241,7 +1241,7 @@ class pdf_cornas extends ModelePDFSuppliersOrders
//pdf_pagehead($pdf,$outputlangs,$this->page_hauteur);
//Affiche le filigrane brouillon - Print Draft Watermark
- /*if($object->statut==0 && (! empty($conf->global->COMMANDE_DRAFT_WATERMARK)) )
+ /*if($object->statut==0 && (!empty($conf->global->COMMANDE_DRAFT_WATERMARK)) )
{
pdf_watermark($pdf,$outputlangs,$this->page_hauteur,$this->page_largeur,'mm',$conf->global->COMMANDE_DRAFT_WATERMARK);
}*/
diff --git a/htdocs/core/modules/supplier_order/doc/pdf_muscadet.modules.php b/htdocs/core/modules/supplier_order/doc/pdf_muscadet.modules.php
index 5498800aefc..410a631fa62 100644
--- a/htdocs/core/modules/supplier_order/doc/pdf_muscadet.modules.php
+++ b/htdocs/core/modules/supplier_order/doc/pdf_muscadet.modules.php
@@ -573,7 +573,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders
}
// Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $object->lines[$i]->multicurrency_total_tva;
} else {
$tvaligne = $object->lines[$i]->total_tva;
@@ -856,7 +856,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders
$pdf->SetXY($col1x, $tab2_top + 0);
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT"), 0, 'L', 1);
- $total_ht = ((!empty($conf->multicurrency->enabled) && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
+ $total_ht = ((isModEnabled("multicurrency") && isset($object->multicurrency_tx) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ht : $object->total_ht);
$pdf->SetXY($col2x, $tab2_top + 0);
$pdf->MultiCell($largcol2, $tab2_hl, price($total_ht + (!empty($object->remise) ? $object->remise : 0)), 0, 'R', 1);
@@ -912,7 +912,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders
$pdf->MultiCell($largcol2, $tab2_hl, price($object->total_localtax2), $useborder, 'R', 1);
}
} else {
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
//Local tax 1
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
@@ -942,7 +942,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders
}
}
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
//Local tax 2
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
@@ -980,7 +980,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders
$pdf->SetFillColor(224, 224, 224);
$pdf->MultiCell($col2x - $col1x, $tab2_hl, $outputlangs->transnoentities("TotalTTC"), $useborder, 'L', 1);
- $total_ttc = (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
+ $total_ttc = (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) ? $object->multicurrency_total_ttc : $object->total_ttc;
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
$pdf->MultiCell($largcol2, $tab2_hl, price($total_ttc), $useborder, 'R', 1);
$pdf->SetFont('', '', $default_font_size - 1);
@@ -1150,7 +1150,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders
//pdf_pagehead($pdf,$outputlangs,$this->page_hauteur);
//Affiche le filigrane brouillon - Print Draft Watermark
- /*if($object->statut==0 && (! empty($conf->global->COMMANDE_DRAFT_WATERMARK)) )
+ /*if($object->statut==0 && (!empty($conf->global->COMMANDE_DRAFT_WATERMARK)) )
{
pdf_watermark($pdf,$outputlangs,$this->page_hauteur,$this->page_largeur,'mm',$conf->global->COMMANDE_DRAFT_WATERMARK);
}*/
diff --git a/htdocs/core/modules/supplier_payment/doc/pdf_standard.modules.php b/htdocs/core/modules/supplier_payment/doc/pdf_standard.modules.php
index 6919ffe69aa..676c5768ea3 100644
--- a/htdocs/core/modules/supplier_payment/doc/pdf_standard.modules.php
+++ b/htdocs/core/modules/supplier_payment/doc/pdf_standard.modules.php
@@ -131,7 +131,7 @@ class pdf_standard extends ModelePDFSuppliersPayments
$this->posxtva = 90;
$this->posxtotalttc = 180;
- //if (! empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) $this->posxtva=$this->posxup;
+ //if (!empty($conf->global->MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT)) $this->posxtva=$this->posxup;
if ($this->page_largeur < 210) { // To work with US executive format
$this->posxreffacturefourn -= 20;
$this->posxreffacture -= 20;
@@ -676,10 +676,10 @@ class pdf_standard extends ModelePDFSuppliersPayments
}
}
- if (! empty($conf->global->PDF_SHOW_PROJECT))
+ if (!empty($conf->global->PDF_SHOW_PROJECT))
{
$object->fetch_projet();
- if (! empty($object->project->ref))
+ if (!empty($object->project->ref))
{
$outputlangs->load("projects");
$posy+=4;
diff --git a/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php b/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php
index 70ee5d75710..28c8ed0a3bd 100644
--- a/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php
+++ b/htdocs/core/modules/supplier_proposal/doc/pdf_aurore.modules.php
@@ -573,7 +573,7 @@ class pdf_aurore extends ModelePDFSupplierProposal
*/
// Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $object->lines[$i]->multicurrency_total_tva;
} else {
$tvaligne = $object->lines[$i]->total_tva;
@@ -964,7 +964,7 @@ class pdf_aurore extends ModelePDFSupplierProposal
// Nothing to do
} else {
//Local tax 1 before VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('1', '3', '5'))) {
@@ -994,7 +994,7 @@ class pdf_aurore extends ModelePDFSupplierProposal
}
//}
//Local tax 2 before VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('1', '3', '5'))) {
@@ -1048,7 +1048,7 @@ class pdf_aurore extends ModelePDFSupplierProposal
}
//Local tax 1 after VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) && $conf->global->FACTURE_LOCAL_TAX1_OPTION=='localtax1on')
//{
foreach ($this->localtax1 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('2', '4', '6'))) {
@@ -1078,7 +1078,7 @@ class pdf_aurore extends ModelePDFSupplierProposal
}
//}
//Local tax 2 after VAT
- //if (! empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
+ //if (!empty($conf->global->FACTURE_LOCAL_TAX2_OPTION) && $conf->global->FACTURE_LOCAL_TAX2_OPTION=='localtax2on')
//{
foreach ($this->localtax2 as $localtax_type => $localtax_rate) {
if (in_array((string) $localtax_type, array('2', '4', '6'))) {
diff --git a/htdocs/core/modules/takepos/mod_takepos_ref_simple.php b/htdocs/core/modules/takepos/mod_takepos_ref_simple.php
index 41b7bb8c90e..31eb9345110 100644
--- a/htdocs/core/modules/takepos/mod_takepos_ref_simple.php
+++ b/htdocs/core/modules/takepos/mod_takepos_ref_simple.php
@@ -15,8 +15,8 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- * or see http://www.gnu.org/
+ * along with this program. If not, see .
+ * or see https://www.gnu.org/
*/
/**
@@ -24,6 +24,7 @@
* \ingroup takepos
* \brief File with Simple ref numbering module for takepos
*/
+
dol_include_once('/core/modules/takepos/modules_takepos.php');
/**
@@ -80,10 +81,10 @@ class mod_takepos_ref_simple extends ModeleNumRefTakepos
}
/**
- * Test si les numeros deja en vigueur dans la base ne provoquent pas de
- * de conflits qui empechera cette numerotation de fonctionner.
+ * Test if the numbers already in the database do not cause any conflicts that will prevent this
+ * of conflicts that will prevent this numbering from working.
*
- * @return boolean false si conflit, true si ok
+ * @return boolean false if KO (there is a conflict), true if OK
*/
public function canBeActivated()
{
diff --git a/htdocs/core/modules/takepos/mod_takepos_ref_universal.php b/htdocs/core/modules/takepos/mod_takepos_ref_universal.php
index 7e46c10a341..7b515ca6b3b 100644
--- a/htdocs/core/modules/takepos/mod_takepos_ref_universal.php
+++ b/htdocs/core/modules/takepos/mod_takepos_ref_universal.php
@@ -17,8 +17,8 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- * or see http://www.gnu.org/
+ * along with this program. If not, see .
+ * or see https://www.gnu.org/
*/
/**
@@ -26,6 +26,7 @@
* \ingroup takepos
* \brief File with Universal ref numbering module for takepos
*/
+
dol_include_once('/core/modules/takepos/modules_takepos.php');
/**
@@ -51,17 +52,17 @@ class mod_takepos_ref_universal extends ModeleNumRefTakepos
public $nom = 'Universal';
/**
- * Renvoi la description du modele de numerotation
+ * return description of the numbering model
*
* @return string Texte descripif
*/
public function info()
{
- global $conf, $langs;
+ global $db, $langs;
$langs->load('cashdesk@cashdesk');
- $form = new Form($this->db);
+ $form = new Form($db);
$texte = $langs->trans('GenericNumRefModelDesc')." \n";
$texte .= '';
@@ -77,11 +78,11 @@ class mod_takepos_ref_universal extends ModeleNumRefTakepos
$tooltip .= $langs->trans('GenericMaskCodes5');
$tooltip .= $langs->trans('CashDeskGenericMaskCodes6');
- // Parametrage du prefix
+ // Setting up the prefix
$texte .= ''.$langs->trans("Mask").': ';
- $texte .= ''.$form->textwithpicto(' ', $tooltip, 1, 1).' ';
+ $texte .= ''.$form->textwithpicto(' ', $tooltip, 1, 1).' ';
- $texte .= ' ';
+ $texte .= ' ';
$texte .= ' ';
@@ -92,7 +93,7 @@ class mod_takepos_ref_universal extends ModeleNumRefTakepos
}
/**
- * Renvoi un exemple de numerotation
+ * Return an example of numbering
*
* @return string Example
*/
@@ -121,12 +122,12 @@ class mod_takepos_ref_universal extends ModeleNumRefTakepos
*/
public function getNextValue($objsoc = null, $invoice = null, $mode = 'next')
{
- global $db, $conf;
+ global $db;
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
- // On defini critere recherche compteur
- $mask = $conf->global->TAKEPOS_REF_UNIVERSAL_MASK;
+ // We define search criteria counter
+ $mask = getDolGlobalString('TAKEPOS_REF_UNIVERSAL_MASK');
if (!$mask) {
$this->error = 'NotConfigured';
@@ -136,9 +137,10 @@ class mod_takepos_ref_universal extends ModeleNumRefTakepos
// Get entities
$entity = getEntity('invoicenumber', 1, $invoice);
+ $date = (empty($invoice->date) ? dol_now() : $invoice->date);
$pos_source = is_object($invoice) && $invoice->pos_source > 0 ? $invoice->pos_source : 0;
$mask = str_replace('{TN}', $pos_source, $mask);
- $numFinal = get_next_value($db, $mask, 'facture', 'ref', '', $objsoc, $invoice->date, $mode, false, null, $entity);
+ $numFinal = get_next_value($db, $mask, 'facture', 'ref', '', $objsoc, $date, $mode, false, null, $entity);
return $numFinal;
}
diff --git a/htdocs/core/modules/takepos/modules_takepos.php b/htdocs/core/modules/takepos/modules_takepos.php
index 24fa70b7f28..89b3dbde5bc 100644
--- a/htdocs/core/modules/takepos/modules_takepos.php
+++ b/htdocs/core/modules/takepos/modules_takepos.php
@@ -16,14 +16,14 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- * or see http://www.gnu.org/
+ * along with this program. If not, see .
+ * or see https://www.gnu.org/
*/
/**
* \file htdocs/core/modules/takepos/modules_takepos.php
* \ingroup takepos
- * \brief Fichier contenant la classe mere de numerotation des tickets de caisse
+ * \brief File containing the parent class for the numbering of cash register receipts
*/
diff --git a/htdocs/core/multicompany_page.php b/htdocs/core/multicompany_page.php
index 4a3bcba51fb..690c971fd23 100644
--- a/htdocs/core/multicompany_page.php
+++ b/htdocs/core/multicompany_page.php
@@ -92,7 +92,7 @@ print '';
//print ' ';
-if (empty($conf->multicompany->enabled)) {
+if (!isModEnabled('multicompany')) {
$langs->load("admin");
$bookmarkList .= ''.$langs->trans("WarningModuleNotActive", $langs->transnoentitiesnoconv("MultiCompany")).' ';
$bookmarkList .= ' ';
diff --git a/htdocs/core/tpl/admin_extrafields_add.tpl.php b/htdocs/core/tpl/admin_extrafields_add.tpl.php
index 1dbc0861adb..97748290bd7 100644
--- a/htdocs/core/tpl/admin_extrafields_add.tpl.php
+++ b/htdocs/core/tpl/admin_extrafields_add.tpl.php
@@ -205,7 +205,7 @@ $listofexamplesforlink = 'Societe:societe/class/societe.class.php Contact:con
textwithpicto($langs->trans("HelpOnTooltip"), $langs->trans("HelpOnTooltipDesc")); ?>
-multicompany->enabled)) { ?>
+
trans("AllEntities"); ?> >
diff --git a/htdocs/core/tpl/admin_extrafields_edit.tpl.php b/htdocs/core/tpl/admin_extrafields_edit.tpl.php
index c055dd1d3b5..7814560be9b 100644
--- a/htdocs/core/tpl/admin_extrafields_edit.tpl.php
+++ b/htdocs/core/tpl/admin_extrafields_edit.tpl.php
@@ -191,16 +191,17 @@ if ((($type == 'select') || ($type == 'checkbox') || ($type == 'radio')) && is_a
array('varchar', 'phone', 'mail', 'url', 'select', 'password', 'text', 'html'),
+ 'varchar'=>array('varchar', 'phone', 'mail', 'url', 'ip', 'select', 'password', 'text', 'html'),
'double'=>array('double', 'price'),
'price'=>array('double', 'price'),
'text'=>array('text', 'html'),
'html'=>array('text', 'html'),
'password'=>array('password', 'varchar'),
- 'mail'=>array('varchar', 'phone', 'mail', 'url', 'select'),
- 'url'=>array('varchar', 'phone', 'mail', 'url', 'select'),
- 'phone'=>array('varchar', 'phone', 'mail', 'url', 'select'),
- 'select'=>array('varchar', 'phone', 'mail', 'url', 'select'),
+ 'mail'=>array('varchar', 'phone', 'mail', 'url', 'ip', 'select'),
+ 'url'=>array('varchar', 'phone', 'mail', 'url', 'ip', 'select'),
+ 'phone'=>array('varchar', 'phone', 'mail', 'url', 'ip', 'select'),
+ 'ip'=>array('varchar', 'phone', 'mail', 'url', 'ip', 'select'),
+ 'select'=>array('varchar', 'phone', 'mail', 'url', 'ip', 'select'),
'date'=>array('date', 'datetime')
);
/* Disabled because text is text on several lines, when varchar is text on 1 line, we should not be able to convert
@@ -295,7 +296,7 @@ if (in_array($type, array_keys($typewecanchangeinto))) {
textwithpicto($langs->trans("HelpOnTooltip"), $langs->trans("HelpOnTooltipDesc")); ?>
-multicompany->enabled)) { ?>
+
trans("AllEntities"); ?> >
diff --git a/htdocs/core/tpl/admin_extrafields_view.tpl.php b/htdocs/core/tpl/admin_extrafields_view.tpl.php
index da1d2d58558..285b7eb30a4 100644
--- a/htdocs/core/tpl/admin_extrafields_view.tpl.php
+++ b/htdocs/core/tpl/admin_extrafields_view.tpl.php
@@ -65,7 +65,7 @@ print ''.$langs->trans("AlwaysEditable").' ';
print ''.$form->textwithpicto($langs->trans("Visible"), $langs->trans("VisibleDesc")).' ';
print ''.$form->textwithpicto($langs->trans("DisplayOnPdf"), $langs->trans("DisplayOnPdfDesc")).' ';
print ''.$form->textwithpicto($langs->trans("Totalizable"), $langs->trans("TotalizableDesc")).' ';
-if (!empty($conf->multicompany->enabled)) {
+if (isModEnabled('multicompany')) {
print ''.$langs->trans("Entity").' ';
}
print ' ';
@@ -113,7 +113,7 @@ if (isset($extrafields->attributes[$elementtype]['type']) && is_array($extrafiel
print ''.dol_escape_htmltag($extrafields->attributes[$elementtype]['printable'][$key])." \n";
// Summable
print ''.yn($extrafields->attributes[$elementtype]['totalizable'][$key])." \n";
- if (!empty($conf->multicompany->enabled)) {
+ if (isModEnabled('multicompany')) {
print '';
if (empty($extrafields->attributes[$elementtype]['entityid'][$key])) {
print $langs->trans("All");
@@ -139,7 +139,7 @@ if (isset($extrafields->attributes[$elementtype]['type']) && is_array($extrafiel
}
} else {
$colspan = 14;
- if (!empty($conf->multicompany->enabled)) {
+ if (isModEnabled('multicompany')) {
$colspan++;
}
diff --git a/htdocs/core/tpl/advtarget.tpl.php b/htdocs/core/tpl/advtarget.tpl.php
index 86292ec0ff4..07595012466 100644
--- a/htdocs/core/tpl/advtarget.tpl.php
+++ b/htdocs/core/tpl/advtarget.tpl.php
@@ -15,7 +15,7 @@
* along with this program. If not, see .
*/
-if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire) {
+if (isModEnabled('categorie') && $user->rights->categorie->lire) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
}
@@ -254,7 +254,7 @@ if (!empty($conf->global->MAIN_MULTILANGS)) {
print ' '."\n";
}
-if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire) {
+if (isModEnabled('categorie') && $user->rights->categorie->lire) {
// Customer Categories
print ''.$langs->trans("CustomersCategoryShort");
if (!empty($array_query['cust_categ'])) {
@@ -451,7 +451,7 @@ print '
';
print ' '."\n";
print ' '."\n";
-if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire) {
+if (isModEnabled('categorie') && $user->rights->categorie->lire) {
// Customer Categories
print ''.$langs->trans("ContactCategoriesShort");
if (!empty($array_query['contact_categ'])) {
diff --git a/htdocs/core/tpl/ajax/fileupload_main.tpl.php b/htdocs/core/tpl/ajax/fileupload_main.tpl.php
deleted file mode 100644
index 8be24f7450f..00000000000
--- a/htdocs/core/tpl/ajax/fileupload_main.tpl.php
+++ /dev/null
@@ -1,96 +0,0 @@
-
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- */
-
-// Protection to avoid direct call of template
-if (empty($conf) || !is_object($conf)) {
- print "Error, template page can't be called as URL";
- exit;
-}
-
-?>
-
-
-
-
diff --git a/htdocs/core/tpl/ajax/fileupload_view.tpl.php b/htdocs/core/tpl/ajax/fileupload_view.tpl.php
deleted file mode 100644
index 22f8d687db0..00000000000
--- a/htdocs/core/tpl/ajax/fileupload_view.tpl.php
+++ /dev/null
@@ -1,147 +0,0 @@
-
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- */
-
-// Protection to avoid direct call of template
-if (empty($conf) || !is_object($conf)) {
- print "Error, template page can't be called as URL";
- exit;
-}
-
-?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/htdocs/core/tpl/card_presend.tpl.php b/htdocs/core/tpl/card_presend.tpl.php
index 0376a5e85c9..826a8e0a12a 100644
--- a/htdocs/core/tpl/card_presend.tpl.php
+++ b/htdocs/core/tpl/card_presend.tpl.php
@@ -43,14 +43,18 @@ if ($action == 'presend') {
$ref = dol_sanitizeFileName($object->ref);
if (!in_array($object->element, array('user', 'member'))) {
- // TODO get also the main_lastdoc field of $object. If not found, try to guess with following code
-
- include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
- // Special case
- if ($object->element == 'invoice_supplier') {
- $fileparams = dol_most_recent_file($diroutput.'/'.get_exdir($object->id, 2, 0, 0, $object, $object->element).$ref, preg_quote($ref, '/').'([^\-])+');
+ //$fileparams['fullname'] can be filled from the card
+ //Get also the main_lastdoc field of $object. If not found, try to guess with following code
+ if (!empty($object->last_main_doc) && is_readable(DOL_DATA_ROOT.'/'.$object->last_main_doc) && is_file(DOL_DATA_ROOT.'/'.$object->last_main_doc)) {
+ $fileparams['fullname'] = DOL_DATA_ROOT.'/'.$object->last_main_doc;
} else {
- $fileparams = dol_most_recent_file($diroutput.'/'.$ref, preg_quote($ref, '/').'[^\-]+');
+ include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
+ // Special case
+ if ($object->element == 'invoice_supplier') {
+ $fileparams = dol_most_recent_file($diroutput.'/'.get_exdir($object->id, 2, 0, 0, $object, $object->element).$ref, preg_quote($ref, '/').'([^\-])+');
+ } else {
+ $fileparams = dol_most_recent_file($diroutput.'/'.$ref, preg_quote($ref, '/').'[^\-]+');
+ }
}
$file = $fileparams['fullname'];
@@ -146,12 +150,17 @@ if ($action == 'presend') {
$formmail->fromname = (!empty($conf->global->ORDER_SUPPLIER_EMAIL_SENDER_NAME) ? $conf->global->ORDER_SUPPLIER_EMAIL_SENDER_NAME : '');
$formmail->fromtype = 'special';
}
+ if ($object->element === 'recruitmentcandidature' ) {
+ $formmail->frommail = (!empty($conf->global->RECRUITMENT_EMAIL_SENDER) ? $conf->global->RECRUITMENT_EMAIL_SENDER : $recruitermail);
+ $formmail->fromname = (!empty($conf->global->RECRUITMENT_EMAIL_SENDER_NAME) ? $conf->global->RECRUITMENT_EMAIL_SENDER_NAME : (!empty($recruitername) ? $recruitername : ''));
+ $formmail->fromtype = 'special';
+ }
$formmail->trackid = empty($trackid) ? '' : $trackid;
$formmail->inreplyto = empty($inreplyto) ? '' : $inreplyto;
$formmail->withfrom = 1;
- // Fill list of recipient with email inside <>.
+ // Define $liste, a list of recipients with email inside <>.
$liste = array();
if ($object->element == 'expensereport') {
$fuser = new User($db);
@@ -197,16 +206,6 @@ if ($action == 'presend') {
}
}
- $formmail->withto = $liste;
- $formmail->withtofree = (GETPOSTISSET('sendto') ? (GETPOST('sendto', 'alphawithlgt') ? GETPOST('sendto', 'alphawithlgt') : '1') : '1');
- $formmail->withtocc = $liste;
- $formmail->withtoccc = getDolGlobalString('MAIN_EMAIL_USECCC');
- $formmail->withtopic = $topicmail;
- $formmail->withfile = 2;
- $formmail->withbody = 1;
- $formmail->withdeliveryreceipt = 1;
- $formmail->withcancel = 1;
-
//$arrayoffamiliestoexclude=array('system', 'mycompany', 'object', 'objectamount', 'date', 'user', ...);
if (!isset($arrayoffamiliestoexclude)) {
$arrayoffamiliestoexclude = null;
@@ -214,6 +213,7 @@ if ($action == 'presend') {
// Make substitution in email content
if ($object) {
+ // First we set ->substit (useless, it will be erased later) and ->substit_lines
$formmail->setSubstitFromObject($object, $langs);
}
$substitutionarray = getCommonSubstitutionArray($outputlangs, 0, $arrayoffamiliestoexclude, $object);
@@ -232,7 +232,7 @@ if ($action == 'presend') {
);
complete_substitutions_array($substitutionarray, $outputlangs, $object, $parameters);
- // Find the good contact address
+ // Find all external contact addresses
$tmpobject = $object;
if (($object->element == 'shipping' || $object->element == 'reception')) {
$origin = $object->origin;
@@ -284,17 +284,46 @@ if ($action == 'presend') {
if (is_array($contactarr) && count($contactarr) > 0) {
require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
+ require_once DOL_DOCUMENT_ROOT.'/societe/class/societe.class.php';
$contactstatic = new Contact($db);
+ $tmpcompany = new Societe($db);
foreach ($contactarr as $contact) {
$contactstatic->fetch($contact['id']);
+ // Complete substitution array
$substitutionarray['__CONTACT_NAME_'.$contact['code'].'__'] = $contactstatic->getFullName($outputlangs, 1);
$substitutionarray['__CONTACT_LASTNAME_'.$contact['code'].'__'] = $contactstatic->lastname;
$substitutionarray['__CONTACT_FIRSTNAME_'.$contact['code'].'__'] = $contactstatic->firstname;
$substitutionarray['__CONTACT_TITLE_'.$contact['code'].'__'] = $contactstatic->getCivilityLabel();
+
+ // Complete $liste with the $contact
+ if (empty($liste[$contact['id']])) { // If this contact id not already into the $liste
+ $contacttoshow = '';
+ if (isset($object->thirdparty) && is_object($object->thirdparty)) {
+ if ($contactstatic->fk_soc != $object->thirdparty->id) {
+ $tmpcompany->fetch($contactstatic->fk_soc);
+ if ($tmpcompany->id > 0) {
+ $contacttoshow .= $tmpcompany->name.': ';
+ }
+ }
+ }
+ $contacttoshow .= $contactstatic->getFullName($outputlangs, 1);
+ $contacttoshow .= " <".($contactstatic->email ? $contactstatic->email : $langs->transnoentitiesnoconv("NoEMail")) .">";
+ $liste[$contact['id']] = $contacttoshow;
+ }
}
}
+ $formmail->withto = $liste;
+ $formmail->withtofree = (GETPOST('sendto', 'alphawithlgt') ? GETPOST('sendto', 'alphawithlgt') : '1');
+ $formmail->withtocc = $liste;
+ $formmail->withtoccc = getDolGlobalString('MAIN_EMAIL_USECCC');
+ $formmail->withtopic = $topicmail;
+ $formmail->withfile = 2;
+ $formmail->withbody = 1;
+ $formmail->withdeliveryreceipt = 1;
+ $formmail->withcancel = 1;
+
// Array of substitutions
$formmail->substit = $substitutionarray;
diff --git a/htdocs/core/tpl/login.tpl.php b/htdocs/core/tpl/login.tpl.php
index 5965132d68c..b07bb66b46c 100644
--- a/htdocs/core/tpl/login.tpl.php
+++ b/htdocs/core/tpl/login.tpl.php
@@ -316,7 +316,7 @@ if ($forgetpasslink || $helpcenterlink) {
if (isset($conf->file->main_authentication) && preg_match('/openid/', $conf->file->main_authentication)) {
$langs->load("users");
- //if (! empty($conf->global->MAIN_OPENIDURL_PERUSER)) $url=
+ //if (!empty($conf->global->MAIN_OPENIDURL_PERUSER)) $url=
echo ' ';
echo '';
diff --git a/htdocs/core/tpl/notes.tpl.php b/htdocs/core/tpl/notes.tpl.php
index e0f0c5d9142..dfa9b0e4591 100644
--- a/htdocs/core/tpl/notes.tpl.php
+++ b/htdocs/core/tpl/notes.tpl.php
@@ -91,20 +91,22 @@ if ($module == 'propal') {
$permission = $user->rights->produit->creer;
} elseif ($module == 'ecmfiles') {
$permission = $user->rights->ecm->setup;
+} elseif ($module == 'user') {
+ $permission = $user->hasRight("user", "self", "write");
}
//else dol_print_error('','Bad value '.$module.' for param module');
-if (!empty($conf->fckeditor->enabled) && !empty($conf->global->FCKEDITOR_ENABLE_SOCIETE)) {
+if (isModEnabled('fckeditor') && !empty($conf->global->FCKEDITOR_ENABLE_SOCIETE)) {
$typeofdata = 'ckeditor:dolibarr_notes:100%:200::1:12:95%:0'; // Rem: This var is for all notes, not only thirdparties note.
} else {
$typeofdata = 'textarea:12:95%';
}
-if (!empty($conf->fckeditor->enabled) && !empty($conf->global->FCKEDITOR_ENABLE_NOTE_PUBLIC)) {
+if (isModEnabled('fckeditor') && !empty($conf->global->FCKEDITOR_ENABLE_NOTE_PUBLIC)) {
$typeofdatapub = 'ckeditor:dolibarr_notes:100%:200::1:12:95%:0'; // Rem: This var is for all notes, not only thirdparties note.
} else {
$typeofdatapub = 'textarea:12:95%';
}
-if (!empty($conf->fckeditor->enabled) && !empty($conf->global->FCKEDITOR_ENABLE_NOTE_PRIVATE)) {
+if (isModEnabled('fckeditor') && !empty($conf->global->FCKEDITOR_ENABLE_NOTE_PRIVATE)) {
$typeofdatapriv = 'ckeditor:dolibarr_notes:100%:200::1:12:95%:0'; // Rem: This var is for all notes, not only thirdparties note.
} else {
$typeofdatapriv = 'textarea:12:95%';
diff --git a/htdocs/core/tpl/objectline_create.tpl.php b/htdocs/core/tpl/objectline_create.tpl.php
index 681dd5424ea..81a1692c6a3 100644
--- a/htdocs/core/tpl/objectline_create.tpl.php
+++ b/htdocs/core/tpl/objectline_create.tpl.php
@@ -65,13 +65,13 @@ if (empty($inputalsopricewithtax)) {
}
// Define colspan for the button 'Add'
$colspan = 3; // Columns: total ht + col edit + col delete
-if (!empty($conf->multicurrency->enabled) && $this->multicurrency_code != $conf->currency) {
+if (isModEnabled("multicurrency") && $this->multicurrency_code != $conf->currency) {
$colspan++; //Add column for Total (currency) if required
}
if (in_array($object->element, array('propal', 'commande', 'order', 'facture', 'facturerec', 'invoice', 'supplier_proposal', 'order_supplier', 'invoice_supplier', 'invoice_supplier_rec'))) {
$colspan++; // With this, there is a column move button
}
-if (!empty($conf->asset->enabled) && $object->element == 'invoice_supplier') {
+if (isModEnabled('asset') && $object->element == 'invoice_supplier') {
$colspan++;
}
@@ -119,7 +119,7 @@ if ($nolinesbefore) {
?>
trans('VAT'); ?>
trans('PriceUHT'); ?>
- multicurrency->enabled) && $this->multicurrency_code != $conf->currency) { ?>
+ multicurrency_code != $conf->currency) { ?>
trans('PriceUHTCurrency'); ?>
@@ -193,7 +193,7 @@ if ($nolinesbefore) {
// Free line
echo '
';
// Show radio free line
- if ($forceall >= 0 && (!empty($conf->product->enabled) || !empty($conf->service->enabled))) {
+ if ($forceall >= 0 && (isModEnabled("product") || isModEnabled("service"))) {
echo '';
echo ' product->enabled) || empty($conf->service->enabled)))?' checked':'') );
@@ -219,7 +219,7 @@ if ($nolinesbefore) {
echo ' ';
}
// Predefined product/service
- if (!empty($conf->product->enabled) || !empty($conf->service->enabled)) {
+ if (isModEnabled("product") || isModEnabled("service")) {
if ($forceall >= 0 && $freelines) {
echo '
';
} else {
@@ -230,17 +230,17 @@ if ($nolinesbefore) {
$labelforradio = '';
if (empty($conf->dol_optimize_smallscreen)) {
if (empty($senderissupplier)) {
- if (!empty($conf->product->enabled) && empty($conf->service->enabled)) {
+ if (isModEnabled("product") && empty($conf->service->enabled)) {
$labelforradio = $langs->trans('PredefinedProductsToSell');
- } elseif ((empty($conf->product->enabled) && !empty($conf->service->enabled)) || ($object->element == 'contrat' && empty($conf->global->CONTRACT_SUPPORT_PRODUCTS))) {
+ } elseif ((empty($conf->product->enabled) && isModEnabled("service")) || ($object->element == 'contrat' && empty($conf->global->CONTRACT_SUPPORT_PRODUCTS))) {
$labelforradio = $langs->trans('PredefinedServicesToSell');
} else {
$labelforradio = $langs->trans('PredefinedProductsAndServicesToSell');
}
} else {
- if (!empty($conf->product->enabled) && empty($conf->service->enabled)) {
+ if (isModEnabled("product") && empty($conf->service->enabled)) {
$labelforradio = $langs->trans('PredefinedProductsToPurchase');
- } elseif (empty($conf->product->enabled) && !empty($conf->service->enabled)) {
+ } elseif (empty($conf->product->enabled) && isModEnabled("service")) {
$labelforradio = $langs->trans('PredefinedServicesToPurchase');
} else {
$labelforradio = $langs->trans('PredefinedProductsAndServicesToPurchase');
@@ -336,7 +336,7 @@ if ($nolinesbefore) {
print $hookmanager->resPrint;
}
}
- if (!empty($conf->product->enabled) || !empty($conf->service->enabled)) {
+ if (isModEnabled("product") || isModEnabled("service")) {
echo ' ';
if (!empty($conf->variants->enabled)) {
echo '
';
@@ -356,7 +356,7 @@ if ($nolinesbefore) {
$doleditor = new DolEditor('dp_desc', GETPOST('dp_desc', 'restricthtml'), '', (empty($conf->global->MAIN_DOLEDITOR_HEIGHT) ? 100 : $conf->global->MAIN_DOLEDITOR_HEIGHT), $toolbarname, '', false, true, $enabled, $nbrows, '98%');
$doleditor->Create();
// Show autofill date for recurring invoices
- if (!empty($conf->service->enabled) && ($object->element == 'facturerec' || $object->element == 'invoice_supplier_rec')) {
+ if (isModEnabled("service") && ($object->element == 'facturerec' || $object->element == 'invoice_supplier_rec')) {
echo ' ';
echo $langs->trans('AutoFillDateFrom').' ';
if (!empty($conf->global->INVOICE_REC_DATE_TO_YES)) {
@@ -399,7 +399,7 @@ if ($nolinesbefore) {
multicurrency->enabled) && $this->multicurrency_code != $conf->currency) {
+ if (isModEnabled("multicurrency") && $this->multicurrency_code != $conf->currency) {
$coldisplay++;
?>
@@ -446,7 +446,7 @@ if ($nolinesbefore) {
?>
- product->enabled) || !empty($conf->service->enabled)) { ?>
+
@@ -471,7 +471,7 @@ if ($nolinesbefore) {
service->enabled) || ($object->element == 'contrat')) && $dateSelector && GETPOST('type') != '0') { // We show date field if required
+if ((isModEnabled("service") || ($object->element == 'contrat')) && $dateSelector && GETPOST('type') != '0') { // We show date field if required
print ''."\n";
if (!empty($conf->global->MAIN_VIEW_LINE_NUMBER)) {
print ' ';
diff --git a/htdocs/core/tpl/objectline_edit.tpl.php b/htdocs/core/tpl/objectline_edit.tpl.php
index c59949d5fb7..d755c3996a8 100644
--- a/htdocs/core/tpl/objectline_edit.tpl.php
+++ b/htdocs/core/tpl/objectline_edit.tpl.php
@@ -1,6 +1,6 @@
- * Copyright (C) 2010-2020 Laurent Destailleur
+ * Copyright (C) 2010-2022 Laurent Destailleur
* Copyright (C) 2012 Christophe Battarel
* Copyright (C) 2012 Cédric Salvador
* Copyright (C) 2012-2014 Raphaël Doursenaud
@@ -70,10 +70,10 @@ if (!empty($inputalsopricewithtax)) {
if (in_array($object->element, array('propal', 'supplier_proposal', 'facture', 'facturerec', 'invoice', 'commande', 'order', 'order_supplier', 'invoice_supplier', 'invoice_supplier_rec'))) {
$colspan++; // With this, there is a column move button
}
-if (!empty($conf->multicurrency->enabled) && $this->multicurrency_code != $conf->currency) {
+if (isModEnabled("multicurrency") && $this->multicurrency_code != $conf->currency) {
$colspan += 2;
}
-if (!empty($conf->asset->enabled) && $object->element == 'invoice_supplier') {
+if (isModEnabled('asset') && $object->element == 'invoice_supplier') {
$colspan++;
}
@@ -176,7 +176,7 @@ $coldisplay++;
}
// Show autofill date for recuring invoices
- if (!empty($conf->service->enabled) && $line->product_type == 1 && ($line->element == 'facturedetrec' || $line->element == 'invoice_supplier_det_rec')) {
+ if (isModEnabled("service") && $line->product_type == 1 && ($line->element == 'facturedetrec' || $line->element == 'invoice_supplier_det_rec')) {
if ($line->element == 'invoice_supplier_det_rec') {
$line->date_start_fill = $line->date_start;
$line->date_end_fill = $line->date_end;
@@ -214,7 +214,7 @@ $coldisplay++;
}
print '>';
- if (!empty($conf->multicurrency->enabled) && $this->multicurrency_code != $conf->currency) {
+ if (isModEnabled("multicurrency") && $this->multicurrency_code != $conf->currency) {
$coldisplay++;
print ' ';
}
@@ -290,7 +290,7 @@ $coldisplay++;
?>
- product->enabled) || !empty($conf->service->enabled)) { ?>
+
@@ -325,12 +325,12 @@ $coldisplay++;
- ">
- ">
+ ">
+ ">
-service->enabled) && $line->product_type == 1 && $dateSelector) { ?>
+product_type == 1 && $dateSelector) { ?>
global->MAIN_VIEW_LINE_NUMBER)) { ?>
diff --git a/htdocs/core/tpl/objectline_title.tpl.php b/htdocs/core/tpl/objectline_title.tpl.php
index 0071b37ab9b..36403e56c72 100644
--- a/htdocs/core/tpl/objectline_title.tpl.php
+++ b/htdocs/core/tpl/objectline_title.tpl.php
@@ -61,14 +61,14 @@ if ($this->element == 'supplier_proposal' || $this->element == 'order_supplier'
}
// VAT
-print '';
+print ' ';
if (!empty($conf->global->FACTURE_LOCAL_TAX1_OPTION) || !empty($conf->global->FACTURE_LOCAL_TAX2_OPTION)) {
print $langs->trans('Taxes');
} else {
print $langs->trans('VAT');
}
-if (in_array($object->element, array('propal', 'commande', 'facture')) && $object->status == $object::STATUS_DRAFT) {
+if (in_array($object->element, array('propal', 'commande', 'facture', 'supplier_proposal', 'order_supplier', 'invoice_supplier')) && $object->status == $object::STATUS_DRAFT) {
global $mysoc;
if (empty($disableedit)) {
@@ -85,15 +85,15 @@ if (in_array($object->element, array('propal', 'commande', 'facture')) && $objec
print ' ';
// Price HT
-print ''.$langs->trans('PriceUHT').' ';
+print ''.$langs->trans('PriceUHT').' ';
// Multicurrency
-if (!empty($conf->multicurrency->enabled) && $this->multicurrency_code != $conf->currency) {
+if (isModEnabled("multicurrency") && $this->multicurrency_code != $conf->currency) {
print ''.$langs->trans('PriceUHTCurrency', $this->multicurrency_code).' ';
}
if ($inputalsopricewithtax) {
- print ''.$langs->trans('PriceUTTC').' ';
+ print ''.$langs->trans('PriceUTTC').' ';
}
// Qty
@@ -105,7 +105,7 @@ if (!empty($conf->global->PRODUCT_USE_UNITS)) {
}
// Reduction short
-print '';
+print ' ';
print $langs->trans('ReductionShort');
if (in_array($object->element, array('propal', 'commande', 'facture')) && $object->status == $object::STATUS_DRAFT) {
@@ -152,7 +152,7 @@ if ($usemargins && !empty($conf->margin->enabled) && empty($user->socid)) {
print ' '.$langs->trans('TotalHTShort').' ';
// Multicurrency
-if (!empty($conf->multicurrency->enabled) && $this->multicurrency_code != $conf->currency) {
+if (isModEnabled("multicurrency") && $this->multicurrency_code != $conf->currency) {
print ''.$langs->trans('TotalHTShortCurrency', $this->multicurrency_code).' ';
}
@@ -160,7 +160,7 @@ if ($outputalsopricetotalwithtax) {
print ''.$langs->trans('TotalTTCShort').' ';
}
-if (!empty($conf->asset->enabled) && $object->element == 'invoice_supplier') {
+if (isModEnabled('asset') && $object->element == 'invoice_supplier') {
print ' ';
}
diff --git a/htdocs/core/tpl/objectline_view.tpl.php b/htdocs/core/tpl/objectline_view.tpl.php
index c93e0d5c4cd..fc1e74f1ac4 100644
--- a/htdocs/core/tpl/objectline_view.tpl.php
+++ b/htdocs/core/tpl/objectline_view.tpl.php
@@ -282,7 +282,7 @@ print vatrate($positiverates.($line->vat_src_code ? ' ('.$line->vat_src_code.')'
subprice); ?>
-multicurrency->enabled) && $this->multicurrency_code != $conf->currency) { ?>
+multicurrency_code != $conf->currency) { ?>
multicurrency_subprice); ?>
special_code == 3) { ?>
print '';
}
print '';
- if (!empty($conf->multicurrency->enabled) && $this->multicurrency_code != $conf->currency) {
+ if (isModEnabled("multicurrency") && $this->multicurrency_code != $conf->currency) {
print ''.price($sign * $line->multicurrency_total_ht).' ';
$coldisplay++;
}
@@ -397,7 +397,7 @@ if ($this->statut == 0 && !empty($object_rights->creer) && $action != 'selectlin
}
}
- if (!empty($conf->asset->enabled) && $object->element == 'invoice_supplier') {
+ if (isModEnabled('asset') && $object->element == 'invoice_supplier') {
print '';
$coldisplay++;
if (!empty($product_static->accountancy_code_buy) ||
diff --git a/htdocs/core/tpl/ajax/objectlinked_lineimport.tpl.php b/htdocs/core/tpl/objectlinked_lineimport.tpl.php
similarity index 100%
rename from htdocs/core/tpl/ajax/objectlinked_lineimport.tpl.php
rename to htdocs/core/tpl/objectlinked_lineimport.tpl.php
diff --git a/htdocs/core/tpl/onlinepaymentlinks.tpl.php b/htdocs/core/tpl/onlinepaymentlinks.tpl.php
index 657d32a0a36..611c556d98c 100644
--- a/htdocs/core/tpl/onlinepaymentlinks.tpl.php
+++ b/htdocs/core/tpl/onlinepaymentlinks.tpl.php
@@ -30,7 +30,7 @@ print ''.$langs->trans("FollowingUrlAreAvailableToMakePayments").': '.$langs->trans("ToOfferALinkForOnlinePaymentOnFreeAmount", $servicename).': ';
print ''.getOnlinePaymentUrl(1, 'free')." \n";
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
print '
';
print img_picto('', 'globe').' '.$langs->trans("ToOfferALinkForOnlinePaymentOnOrder", $servicename).': ';
print ''.getOnlinePaymentUrl(1, 'order')." \n";
@@ -74,7 +74,7 @@ if (isModEnabled('facture')) {
}
print ' ';
}
-if (!empty($conf->contrat->enabled)) {
+if (isModEnabled('contrat')) {
print '
';
print img_picto('', 'globe').' '.$langs->trans("ToOfferALinkForOnlinePaymentOnContractLine", $servicename).': ';
print ''.getOnlinePaymentUrl(1, 'contractline')." \n";
@@ -96,7 +96,7 @@ if (!empty($conf->contrat->enabled)) {
}
print ' ';
}
-if (!empty($conf->adherent->enabled)) {
+if (isModEnabled('adherent')) {
print '
';
print img_picto('', 'globe').' '.$langs->trans("ToOfferALinkForOnlinePaymentOnMemberSubscription", $servicename).': ';
print ''.getOnlinePaymentUrl(1, 'membersubscription')." \n";
diff --git a/htdocs/core/tpl/originproductline.tpl.php b/htdocs/core/tpl/originproductline.tpl.php
index 25c799ffbfd..090ba834ba1 100644
--- a/htdocs/core/tpl/originproductline.tpl.php
+++ b/htdocs/core/tpl/originproductline.tpl.php
@@ -32,7 +32,7 @@ print ' '.$this->tpl['label'].' ';
print ''.$this->tpl['description'].' ';
print ''.$this->tpl['vat_rate'].' ';
print ''.$this->tpl['price'].' ';
-if (!empty($conf->multicurrency->enabled)) {
+if (isModEnabled("multicurrency")) {
print ''.$this->tpl['multicurrency_price'].' ';
}
diff --git a/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php b/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php
index cc6a1168c32..73312ec52cf 100644
--- a/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php
+++ b/htdocs/core/triggers/interface_20_modWorkflow_WorkflowManager.class.php
@@ -71,7 +71,7 @@ class InterfaceWorkflowManager extends DolibarrTriggers
// Proposals to order
if ($action == 'PROPAL_CLOSE_SIGNED') {
dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id);
- if (!empty($conf->commande->enabled) && !empty($conf->global->WORKFLOW_PROPAL_AUTOCREATE_ORDER)) {
+ if (isModEnabled('commande') && !empty($conf->global->WORKFLOW_PROPAL_AUTOCREATE_ORDER)) {
$object->fetchObjectLinked();
if (!empty($object->linkedObjectsIds['commande'])) {
setEventMessages($langs->trans("OrderExists"), null, 'warnings');
@@ -117,7 +117,7 @@ class InterfaceWorkflowManager extends DolibarrTriggers
// Order classify billed proposal
if ($action == 'ORDER_CLASSIFY_BILLED') {
dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id);
- if (!empty($conf->propal->enabled) && !empty($conf->workflow->enabled) && !empty($conf->global->WORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL)) {
+ if (isModEnabled("propal") && !empty($conf->workflow->enabled) && !empty($conf->global->WORKFLOW_ORDER_CLASSIFY_BILLED_PROPAL)) {
$object->fetchObjectLinked('', 'propal', $object->id, $object->element);
if (!empty($object->linkedObjects)) {
$totalonlinkedelements = 0;
@@ -142,7 +142,7 @@ class InterfaceWorkflowManager extends DolibarrTriggers
dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id);
// First classify billed the order to allow the proposal classify process
- if (!empty($conf->commande->enabled) && !empty($conf->workflow->enabled) && !empty($conf->global->WORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER)) {
+ if (isModEnabled('commande') && !empty($conf->workflow->enabled) && !empty($conf->global->WORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_ORDER)) {
$object->fetchObjectLinked('', 'commande', $object->id, $object->element);
if (!empty($object->linkedObjects)) {
$totalonlinkedelements = 0;
@@ -161,7 +161,7 @@ class InterfaceWorkflowManager extends DolibarrTriggers
}
// Second classify billed the proposal.
- if (!empty($conf->propal->enabled) && !empty($conf->workflow->enabled) && !empty($conf->global->WORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL)) {
+ if (isModEnabled("propal") && !empty($conf->workflow->enabled) && !empty($conf->global->WORKFLOW_INVOICE_CLASSIFY_BILLED_PROPAL)) {
$object->fetchObjectLinked('', 'propal', $object->id, $object->element);
if (!empty($object->linkedObjects)) {
$totalonlinkedelements = 0;
@@ -179,7 +179,7 @@ class InterfaceWorkflowManager extends DolibarrTriggers
}
}
- if (!empty($conf->expedition->enabled) && !empty($conf->workflow->enabled) && !empty($conf->global->WORKFLOW_SHIPPING_CLASSIFY_CLOSED_INVOICE)) {
+ if (isModEnabled("expedition") && !empty($conf->workflow->enabled) && !empty($conf->global->WORKFLOW_SHIPPING_CLASSIFY_CLOSED_INVOICE)) {
/** @var Facture $object */
$object->fetchObjectLinked('', 'shipping', $object->id, $object->element);
@@ -200,7 +200,7 @@ class InterfaceWorkflowManager extends DolibarrTriggers
// Firstly, we set to purchase order to "Billed" if WORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER is set.
// After we will set proposals
- if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && !empty($conf->global->WORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER)) {
+ if (((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) && !empty($conf->global->WORKFLOW_INVOICE_AMOUNT_CLASSIFY_BILLED_SUPPLIER_ORDER)) {
$object->fetchObjectLinked('', 'order_supplier', $object->id, $object->element);
if (!empty($object->linkedObjects)) {
$totalonlinkedelements = 0;
@@ -222,7 +222,7 @@ class InterfaceWorkflowManager extends DolibarrTriggers
}
// Secondly, we set to linked Proposal to "Billed" if WORKFLOW_INVOICE_CLASSIFY_BILLED_SUPPLIER_PROPOSAL is set.
- if (!empty($conf->supplier_proposal->enabled) && !empty($conf->global->WORKFLOW_INVOICE_CLASSIFY_BILLED_SUPPLIER_PROPOSAL)) {
+ if (isModEnabled('supplier_proposal') && !empty($conf->global->WORKFLOW_INVOICE_CLASSIFY_BILLED_SUPPLIER_PROPOSAL)) {
$object->fetchObjectLinked('', 'supplier_proposal', $object->id, $object->element);
if (!empty($object->linkedObjects)) {
$totalonlinkedelements = 0;
@@ -244,7 +244,7 @@ class InterfaceWorkflowManager extends DolibarrTriggers
}
// Then set reception to "Billed" if WORKFLOW_BILL_ON_RECEPTION is set
- if (!empty($conf->reception->enabled) && !empty($conf->global->WORKFLOW_BILL_ON_RECEPTION)) {
+ if (isModEnabled("reception") && !empty($conf->global->WORKFLOW_BILL_ON_RECEPTION)) {
$object->fetchObjectLinked('', 'reception', $object->id, $object->element);
if (!empty($object->linkedObjects)) {
$totalonlinkedelements = 0;
@@ -272,7 +272,7 @@ class InterfaceWorkflowManager extends DolibarrTriggers
if ($action == 'BILL_PAYED') {
dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id);
- if (!empty($conf->commande->enabled) && !empty($conf->global->WORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER)) {
+ if (isModEnabled('commande') && !empty($conf->global->WORKFLOW_INVOICE_CLASSIFY_BILLED_ORDER)) {
$object->fetchObjectLinked('', 'commande', $object->id, $object->element);
if (!empty($object->linkedObjects)) {
$totalonlinkedelements = 0;
@@ -296,7 +296,7 @@ class InterfaceWorkflowManager extends DolibarrTriggers
if (($action == 'SHIPPING_VALIDATE') || ($action == 'SHIPPING_CLOSED')) {
dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id);
- if (!empty($conf->commande->enabled) && !empty($conf->expedition->enabled) && !empty($conf->workflow->enabled) &&
+ if (isModEnabled('commande') && isModEnabled("expedition") && !empty($conf->workflow->enabled) &&
(
(!empty($conf->global->WORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING) && ($action == 'SHIPPING_VALIDATE')) ||
(!empty($conf->global->WORKFLOW_ORDER_CLASSIFY_SHIPPED_SHIPPING_CLOSED) && ($action == 'SHIPPING_CLOSED'))
@@ -365,7 +365,7 @@ class InterfaceWorkflowManager extends DolibarrTriggers
if (($action == 'RECEPTION_VALIDATE') || ($action == 'RECEPTION_CLOSED')) {
dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id);
- if ((!empty($conf->fournisseur->enabled) || !empty($conf->supplier_order->enabled)) && !empty($conf->reception->enabled) && !empty($conf->workflow->enabled) &&
+ if ((isModEnabled("fournisseur") || isModEnabled("supplier_order")) && isModEnabled("reception") && !empty($conf->workflow->enabled) &&
(
(!empty($conf->global->WORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION) && ($action == 'RECEPTION_VALIDATE')) ||
(!empty($conf->global->WORKFLOW_ORDER_CLASSIFY_RECEIVED_RECEPTION_CLOSED) && ($action == 'RECEPTION_CLOSED'))
diff --git a/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php b/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php
index 4e926050f24..954949e427c 100644
--- a/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php
+++ b/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php
@@ -974,6 +974,8 @@ class InterfaceActionsAuto extends DolibarrTriggers
$object->trackid = 'tas'.$object->id;
} elseif (preg_match('/^TICKET_/', $action)) {
$object->trackid = 'tic'.$object->id;
+ } elseif (preg_match('/^USER_/', $action)) {
+ $object->trackid = 'use'.$object->id;
} else {
$object->trackid = '';
}
@@ -987,7 +989,7 @@ class InterfaceActionsAuto extends DolibarrTriggers
}
*/
- dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id);
+ dol_syslog("Trigger '".$this->name."' for action '".$action."' launched by ".__FILE__.". id=".$object->id);
// Add entry in event table
$now = dol_now();
diff --git a/htdocs/core/triggers/interface_50_modBlockedlog_ActionsBlockedLog.class.php b/htdocs/core/triggers/interface_50_modBlockedlog_ActionsBlockedLog.class.php
index 741cc4d09bc..275fc954ece 100644
--- a/htdocs/core/triggers/interface_50_modBlockedlog_ActionsBlockedLog.class.php
+++ b/htdocs/core/triggers/interface_50_modBlockedlog_ActionsBlockedLog.class.php
@@ -69,7 +69,7 @@ class InterfaceActionsBlockedLog extends DolibarrTriggers
return 1;
}
- dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id);
+ dol_syslog("Trigger '".$this->name."' for action '".$action."' launched by ".__FILE__.". id=".$object->id);
require_once DOL_DOCUMENT_ROOT.'/blockedlog/class/blockedlog.class.php';
$b = new BlockedLog($this->db);
diff --git a/htdocs/core/triggers/interface_50_modNotification_Notification.class.php b/htdocs/core/triggers/interface_50_modNotification_Notification.class.php
index b4d32860c82..dc02117da13 100644
--- a/htdocs/core/triggers/interface_50_modNotification_Notification.class.php
+++ b/htdocs/core/triggers/interface_50_modNotification_Notification.class.php
@@ -74,7 +74,7 @@ class InterfaceNotification extends DolibarrTriggers
return 0;
}
- dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id);
+ dol_syslog("Trigger '".$this->name."' for action '".$action."' launched by ".__FILE__.". id=".$object->id);
$notify = new Notify($this->db);
$notify->send($action, $object);
diff --git a/htdocs/core/triggers/interface_80_modStripe_Stripe.class.php b/htdocs/core/triggers/interface_80_modStripe_Stripe.class.php
index 54ee9929cb2..44cd1d1f660 100644
--- a/htdocs/core/triggers/interface_80_modStripe_Stripe.class.php
+++ b/htdocs/core/triggers/interface_80_modStripe_Stripe.class.php
@@ -141,7 +141,7 @@ class InterfaceStripe extends DolibarrTriggers
}
if ($changerequested) {
- /*if (! empty($object->email)) $customer->email = $object->email;
+ /*if (!empty($object->email)) $customer->email = $object->email;
$customer->description = $namecleaned;
if (empty($taxinfo)) $customer->tax_info = array('type'=>'vat', 'tax_id'=>null);
else $customer->tax_info = $taxinfo; */
diff --git a/htdocs/core/triggers/interface_90_modSociete_ContactRoles.class.php b/htdocs/core/triggers/interface_90_modSociete_ContactRoles.class.php
index b1eb321f7f5..2f291f5698b 100644
--- a/htdocs/core/triggers/interface_90_modSociete_ContactRoles.class.php
+++ b/htdocs/core/triggers/interface_90_modSociete_ContactRoles.class.php
@@ -70,7 +70,7 @@ class InterfaceContactRoles extends DolibarrTriggers
if ($action === 'PROPAL_CREATE' || $action === 'ORDER_CREATE' || $action === 'BILL_CREATE'
|| $action === 'ORDER_SUPPLIER_CREATE' || $action === 'BILL_SUPPLIER_CREATE' || $action === 'PROPOSAL_SUPPLIER_CREATE'
|| $action === 'CONTRACT_CREATE' || $action === 'FICHINTER_CREATE' || $action === 'PROJECT_CREATE' || $action === 'TICKET_CREATE') {
- dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id);
+ dol_syslog("Trigger '".$this->name."' for action '".$action."' launched by ".__FILE__.". id=".$object->id);
$socid = (property_exists($object, 'socid') ? $object->socid : $object->fk_soc);
diff --git a/htdocs/core/triggers/interface_99_modZapier_ZapierTriggers.class.php b/htdocs/core/triggers/interface_99_modZapier_ZapierTriggers.class.php
index 8a2cffe05f3..b131dd0391f 100644
--- a/htdocs/core/triggers/interface_99_modZapier_ZapierTriggers.class.php
+++ b/htdocs/core/triggers/interface_99_modZapier_ZapierTriggers.class.php
@@ -236,7 +236,7 @@ class InterfaceZapierTriggers extends DolibarrTriggers
// case 'ORDER_SUPPLIER_REFUSE':
// case 'ORDER_SUPPLIER_CANCEL':
// case 'ORDER_SUPPLIER_SENTBYMAIL':
- // case 'ORDER_SUPPLIER_DISPATCH':
+ // case 'ORDER_SUPPLIER_RECEIVE':
// case 'LINEORDER_SUPPLIER_DISPATCH':
// case 'LINEORDER_SUPPLIER_CREATE':
// case 'LINEORDER_SUPPLIER_UPDATE':
@@ -396,7 +396,7 @@ class InterfaceZapierTriggers extends DolibarrTriggers
// case 'SHIPPING_DELETE':
}
if ($logtriggeraction) {
- dol_syslog("Trigger '".$this->name."' for action '.$action.' launched by ".__FILE__." id=".$object->id);
+ dol_syslog("Trigger '".$this->name."' for action '".$action."' launched by ".__FILE__." id=".$object->id);
}
return 0;
}
@@ -404,14 +404,20 @@ class InterfaceZapierTriggers extends DolibarrTriggers
/**
* Post webhook in zapier with object data
*
- * @param string $url url provided by zapier
- * @param string $json data to send
+ * @param string $url Url provided by zapier
+ * @param string $json Data to send
* @return void
*/
function zapierPostWebhook($url, $json)
{
$headers = array('Accept: application/json', 'Content-Type: application/json');
- // TODO supprimer le webhook en cas de mauvaise réponse
+
+ // TODO disable wekhook if error ?
+
+ dol_syslog("Send message to Zapier with json size=".dol_strlen($json), LOG_DEBUG);
+ getURLContent($url, 'POSTALREADYFORMATED', $json, 1, $headers, array('http', 'https'), 0);
+
+ /*
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
@@ -420,8 +426,10 @@ function zapierPostWebhook($url, $json)
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $json);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
+
$output = curl_exec($ch);
curl_close($ch);
+ */
}
/**
diff --git a/htdocs/cron/card.php b/htdocs/cron/card.php
index ed95546cd67..319c16c7d0c 100644
--- a/htdocs/cron/card.php
+++ b/htdocs/cron/card.php
@@ -612,7 +612,7 @@ if (($action == "create") || ($action == "edit")) {
}
print " ";
- if (!empty($conf->multicompany->enabled)) {
+ if (isModEnabled('multicompany')) {
print '';
print $langs->trans('Entity')." ";
if (empty($object->entity)) {
diff --git a/htdocs/cron/class/cronjob.class.php b/htdocs/cron/class/cronjob.class.php
index 714622e8014..033e6512bd8 100644
--- a/htdocs/cron/class/cronjob.class.php
+++ b/htdocs/cron/class/cronjob.class.php
@@ -108,62 +108,62 @@ class Cronjob extends CommonObject
public $datelastresult = '';
/**
- * @var string Last result from end job execution
+ * @var string Last result from end job execution
*/
public $lastresult;
/**
- * @var string Last output from end job execution
+ * @var string Last output from end job execution
*/
public $lastoutput;
/**
- * @var string Unit frequency of job execution
+ * @var string Unit frequency of job execution
*/
public $unitfrequency;
/**
- * @var int Frequency of job execution
+ * @var int Frequency of job execution
*/
public $frequency;
/**
- * @var int Status
+ * @var int Status
*/
public $status;
/**
- * @var int Is job processing
+ * @var int Is job running ?
*/
public $processing;
/**
- * @var int The job current PID
+ * @var int The job current PID
*/
public $pid;
/**
- * @var int ID
+ * @var int User ID of creation
*/
public $fk_user_author;
/**
- * @var int ID
+ * @var int User ID of last modification
*/
public $fk_user_mod;
/**
- * @var int Number of run job execution
+ * @var int Number of run job execution
*/
public $nbrun;
/**
- * @var int Maximum run job execution
+ * @var int Maximum run job execution
*/
public $maxrun;
/**
- * @var string Libname
+ * @var string Libname
*/
public $libname;
@@ -1140,7 +1140,7 @@ class Cronjob extends CommonObject
$this->lastoutput = '';
$this->lastresult = '';
$this->processing = 1; // To know job was started
- $this->pid = dol_getmypid();
+ $this->pid = function_exists('getmypid') ? getmypid() : null; // Avoid dol_getmypid to get null if the function is not available
$this->nbrun = $this->nbrun + 1;
$result = $this->update($user); // This include begin/commit
if ($result < 0) {
@@ -1513,10 +1513,12 @@ class Cronjobline
public $datenextrun = '';
public $dateend = '';
public $datestart = '';
+ public $datelastresult = '';
public $lastresult = '';
public $lastoutput;
public $unitfrequency;
public $frequency;
+ public $processing;
/**
* @var int Status
@@ -1534,8 +1536,10 @@ class Cronjobline
public $fk_user_mod;
public $note;
+ public $note_private;
public $nbrun;
public $libname;
+ public $test;
/**
* Constructor
diff --git a/htdocs/cron/list.php b/htdocs/cron/list.php
index 2732e41dc14..41082fa79cd 100644
--- a/htdocs/cron/list.php
+++ b/htdocs/cron/list.php
@@ -64,6 +64,7 @@ $search_status = (GETPOSTISSET('search_status') ?GETPOST('search_status', 'int')
$search_label = GETPOST("search_label", 'alpha');
$search_module_name = GETPOST("search_module_name", 'alpha');
$search_lastresult = GETPOST("search_lastresult", "alphawithlgt");
+$search_processing = GETPOST("search_processing", "int");
$securitykey = GETPOST('securitykey', 'alpha');
$outputdir = $conf->cron->dir_output;
@@ -277,6 +278,9 @@ if ($search_status >= 0 && $search_status < 2 && $search_status != '') {
if ($search_lastresult != '') {
$sql .= natural_search("t.lastresult", $search_lastresult, 1);
}
+if (GETPOSTISSET('search_processing')) {
+ $sql .= " AND t.processing = ".((int) $search_processing);
+}
//Manage filter
if (is_array($filter) && count($filter) > 0) {
foreach ($filter as $key => $value) {
diff --git a/htdocs/datapolicy/admin/setup.php b/htdocs/datapolicy/admin/setup.php
index 8f25461eb64..26b71ce60e1 100644
--- a/htdocs/datapolicy/admin/setup.php
+++ b/htdocs/datapolicy/admin/setup.php
@@ -50,7 +50,7 @@ if (!empty($conf->global->DATAPOLICY_USE_SPECIFIC_DELAY_FOR_CONTACT)) {
'DATAPOLICY_CONTACT_FOURNISSEUR'=>array('css'=>'minwidth200', 'picto'=>img_picto('', 'contact', 'class="pictofixedwidth"')),
);
}
-if (!empty($conf->adherent->enabled)) {
+if (isModEnabled('adherent')) {
$arrayofparameters['Member'] = array(
'DATAPOLICY_ADHERENT'=>array('css'=>'minwidth200', 'picto'=>img_picto('', 'member', 'class="pictofixedwidth"')),
);
diff --git a/htdocs/datapolicy/admin/setupmail.php b/htdocs/datapolicy/admin/setupmail.php
index e2f562ee79b..825bd13b142 100644
--- a/htdocs/datapolicy/admin/setupmail.php
+++ b/htdocs/datapolicy/admin/setupmail.php
@@ -106,7 +106,7 @@ print '';
print ' ';
print ' ';
print '';
-if ($conf->global->MAIN_MULTILANGS) {
+if (!empty($conf->global->MAIN_MULTILANGS)) {
print ''.$form->editfieldkey('DefaultLang', 'default_lang', '', null, 0).' '."\n";
print $formadmin->select_language((GETPOST('l') ? GETPOST('l') : $langs->defaultlang), 'default_lang', 0, 0, 1, 0, 0, 'maxwidth200onsmartphone');
print ' ';
diff --git a/htdocs/datapolicy/class/actions_datapolicy.class.php b/htdocs/datapolicy/class/actions_datapolicy.class.php
index 6b7e27c67aa..ffd43bbf8ac 100644
--- a/htdocs/datapolicy/class/actions_datapolicy.class.php
+++ b/htdocs/datapolicy/class/actions_datapolicy.class.php
@@ -94,7 +94,7 @@ class ActionsDatapolicy
$langs->load('datapolicy@datapolicy');
$error = 0; // Error counter
- if (GETPOST('socid') && $parameters['currentcontext'] == 'thirdpartycard') {
+ if (GETPOST('socid') && $parameters['currentcontext'] == 'thirdpartycard' && !empty($object)) {
$object->fetch(GETPOST('socid'));
}
diff --git a/htdocs/delivery/card.php b/htdocs/delivery/card.php
index dba3d0de437..2d829c79b25 100644
--- a/htdocs/delivery/card.php
+++ b/htdocs/delivery/card.php
@@ -34,7 +34,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/sendings.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
-if (!empty($conf->product->enabled) || !empty($conf->service->enabled)) {
+if (isModEnabled("product") || isModEnabled("service")) {
require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
}
if (!empty($conf->expedition_bon->enabled)) {
@@ -43,13 +43,13 @@ if (!empty($conf->expedition_bon->enabled)) {
if (!empty($conf->stock->enabled)) {
require_once DOL_DOCUMENT_ROOT.'/product/stock/class/entrepot.class.php';
}
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
// Load translation files required by the page
-$langs->loadLangs(array("sendings", "bills", 'deliveries', 'orders'));
+$langs->loadLangs(array('bills', 'deliveries', 'orders', 'sendings'));
if (!empty($conf->incoterm->enabled)) {
$langs->load('incoterm');
@@ -89,10 +89,10 @@ $error = 0;
*/
$parameters = array();
-$reshook = $hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks
+$reshook = $hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks
// Delete Link
$permissiondellink = $user->rights->expedition->delivery->supprimer; // Used by the include of actions_dellink.inc.php
-include DOL_DOCUMENT_ROOT.'/core/actions_dellink.inc.php'; // Must be include, not include_once
+include DOL_DOCUMENT_ROOT.'/core/actions_dellink.inc.php'; // Must be include, not include_once
if ($action == 'add') {
$db->begin();
@@ -101,7 +101,7 @@ if ($action == 'add') {
$object->note = GETPOST("note", 'restricthtml');
$object->note_private = GETPOST("note", 'restricthtml');
$object->commande_id = GETPOST("commande_id", 'int');
- $object->fk_incoterms = GETPOST('incoterm_id', 'int');
+ $object->fk_incoterms = GETPOST('incoterm_id', 'int');
if (!$conf->expedition_bon->enabled && !empty($conf->stock->enabled)) {
$expedition->entrepot_id = GETPOST('entrepot_id', 'int');
@@ -142,10 +142,10 @@ if ($action == 'add') {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -308,11 +308,11 @@ if ($action == 'create') { // Create. Seems to no be used
* Delivery
*/
- if ($typeobject == 'commande' && $expedition->origin_id > 0 && !empty($conf->commande->enabled)) {
+ if ($typeobject == 'commande' && $expedition->origin_id > 0 && isModEnabled('commande')) {
$objectsrc = new Commande($db);
$objectsrc->fetch($expedition->origin_id);
}
- if ($typeobject == 'propal' && $expedition->origin_id > 0 && !empty($conf->propal->enabled)) {
+ if ($typeobject == 'propal' && $expedition->origin_id > 0 && isModEnabled("propal")) {
$objectsrc = new Propal($db);
$objectsrc->fetch($expedition->origin_id);
}
@@ -328,7 +328,7 @@ if ($action == 'create') { // Create. Seems to no be used
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$expedition->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if (0) { // Do not change on shipment
@@ -400,7 +400,7 @@ if ($action == 'create') { // Create. Seems to no be used
*/
// Document origine
- if ($typeobject == 'commande' && $expedition->origin_id && !empty($conf->commande->enabled)) {
+ if ($typeobject == 'commande' && $expedition->origin_id && isModEnabled('commande')) {
print ''.$langs->trans("RefOrder").' ';
$order = new Commande($db);
$order->fetch($expedition->origin_id);
@@ -409,7 +409,7 @@ if ($action == 'create') { // Create. Seems to no be used
print "\n";
print ' ';
}
- if ($typeobject == 'propal' && $expedition->origin_id && !empty($conf->propal->enabled)) {
+ if ($typeobject == 'propal' && $expedition->origin_id && isModEnabled("propal")) {
$propal = new Propal($db);
$propal->fetch($expedition->origin_id);
print ''.$langs->trans("RefProposal").' ';
diff --git a/htdocs/delivery/class/delivery.class.php b/htdocs/delivery/class/delivery.class.php
index 9edc080701b..55f6293a9d2 100644
--- a/htdocs/delivery/class/delivery.class.php
+++ b/htdocs/delivery/class/delivery.class.php
@@ -31,10 +31,10 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/commonobject.class.php';
require_once DOL_DOCUMENT_ROOT.'/expedition/class/expedition.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/commonincoterm.class.php';
require_once DOL_DOCUMENT_ROOT.'/product/stock/class/mouvementstock.class.php';
-if (!empty($conf->propal->enabled)) {
+if (isModEnabled("propal")) {
require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
}
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
}
diff --git a/htdocs/don/admin/donation.php b/htdocs/don/admin/donation.php
index c56effea73a..9a360f69882 100644
--- a/htdocs/don/admin/donation.php
+++ b/htdocs/don/admin/donation.php
@@ -310,7 +310,7 @@ print ''.$langs->trans("Value")." \n";
print ' ';
print " \n";
-if (!empty($conf->societe->enabled)) {
+if (isModEnabled("societe")) {
print '';
print '';
print $langs->trans("DonationUseThirdparties");
diff --git a/htdocs/don/card.php b/htdocs/don/card.php
index 30a3ec24c6c..b3b1a517077 100644
--- a/htdocs/don/card.php
+++ b/htdocs/don/card.php
@@ -38,13 +38,13 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formmargin.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
-$langs->loadLangs(array("bills", "companies", "donations", "users"));
+$langs->loadLangs(array('bills', 'companies', 'donations', 'users'));
$id = GETPOST('rowid') ?GETPOST('rowid', 'int') : GETPOST('id', 'int');
$action = GETPOST('action', 'aZ09');
@@ -119,10 +119,10 @@ if (empty($reshook)) {
if (method_exists($object, 'generateDocument')) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -211,7 +211,7 @@ if (empty($reshook)) {
$error = 0;
- if (!empty($conf->societe->enabled) && !empty($conf->global->DONATION_USE_THIRDPARTIES) && !(GETPOST("socid", 'int') > 0)) {
+ if (isModEnabled("societe") && !empty($conf->global->DONATION_USE_THIRDPARTIES) && !(GETPOST("socid", 'int') > 0)) {
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("ThirdParty")), null, 'errors');
$action = "create";
$error++;
@@ -351,9 +351,9 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang='';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && ! empty($_REQUEST['lang_id'])) $newlang=$_REQUEST['lang_id'];
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) $newlang=$object->thirdparty->default_lang;
- if (! empty($newlang))
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && !empty($_REQUEST['lang_id'])) $newlang=$_REQUEST['lang_id'];
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) $newlang=$object->thirdparty->default_lang;
+ if (!empty($newlang))
{
$outputlangs = new Translate("",$conf);
$outputlangs->setDefaultLang($newlang);
@@ -382,7 +382,7 @@ llxHeader('', $title, $help_url);
$form = new Form($db);
$formfile = new FormFile($db);
$formcompany = new FormCompany($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -402,7 +402,7 @@ if ($action == 'create') {
print ' '.$langs->trans('Ref').' '.$langs->trans('Draft').' ';
// Company
- if (!empty($conf->societe->enabled) && !empty($conf->global->DONATION_USE_THIRDPARTIES)) {
+ if (isModEnabled("societe") && !empty($conf->global->DONATION_USE_THIRDPARTIES)) {
// Thirdparty
if ($soc->id > 0) {
print ''.$langs->trans('ThirdParty').' ';
@@ -460,7 +460,7 @@ if ($action == 'create') {
print $form->selectyesno("public", $public_donation, 1);
print "\n";
- if (empty($conf->societe->enabled) || empty($conf->global->DONATION_USE_THIRDPARTIES)) {
+ if (!isModEnabled('societe') || empty($conf->global->DONATION_USE_THIRDPARTIES)) {
print "".''.$langs->trans("Company").' ';
print "".''.$langs->trans("Lastname").' ';
print "".''.$langs->trans("Firstname").' ';
@@ -511,7 +511,7 @@ if ($action == 'create') {
print '';
}
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
print "".$langs->trans("Project")." ";
$formproject->select_projects(-1, $projectid, 'fk_project', 0, 0, 1, 1, 0, 0, 0, '', 0, 0, 'maxwidth500');
print " \n";
@@ -591,7 +591,7 @@ if (!empty($id) && $action == 'edit') {
print "";
print "\n";
- if (!empty($conf->societe->enabled) && !empty($conf->global->DONATION_USE_THIRDPARTIES)) {
+ if (isModEnabled("societe") && !empty($conf->global->DONATION_USE_THIRDPARTIES)) {
$company = new Societe($db);
print ''.$langs->trans("ThirdParty").' ';
@@ -639,7 +639,7 @@ if (!empty($id) && $action == 'edit') {
print " ".''.$langs->trans("Status").' '.$object->getLibStatut(4).' ';
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$formproject = new FormProjets($db);
$langs->load('projects');
@@ -700,7 +700,7 @@ if (!empty($id) && $action != 'edit') {
$morehtmlref = '';
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= $langs->trans('Project').' ';
if ($user->rights->don->creer) {
@@ -756,7 +756,7 @@ if (!empty($id) && $action != 'edit') {
print yn($object->public);
print '';
- if (!empty($conf->societe->enabled) && !empty($conf->global->DONATION_USE_THIRDPARTIES)) {
+ if (isModEnabled("societe") && !empty($conf->global->DONATION_USE_THIRDPARTIES)) {
$company = new Societe($db);
print '
'.$langs->trans("ThirdParty").' ';
diff --git a/htdocs/don/class/don.class.php b/htdocs/don/class/don.class.php
index 4c0811e70c9..080ac3b9540 100644
--- a/htdocs/don/class/don.class.php
+++ b/htdocs/don/class/don.class.php
@@ -832,8 +832,8 @@ class Don extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->bom->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->bom->bom_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->bom->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->bom->bom_advance->validate))))
{
$this->error='Permission denied';
return -1;
diff --git a/htdocs/don/class/paymentdonation.class.php b/htdocs/don/class/paymentdonation.class.php
index 6de83f5570e..e4928ac9363 100644
--- a/htdocs/don/class/paymentdonation.class.php
+++ b/htdocs/don/class/paymentdonation.class.php
@@ -574,7 +574,7 @@ class PaymentDonation extends CommonObject
$error = 0;
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
$acc = new Account($this->db);
diff --git a/htdocs/don/document.php b/htdocs/don/document.php
index 030ca5cb085..53ca935e5ae 100644
--- a/htdocs/don/document.php
+++ b/htdocs/don/document.php
@@ -34,13 +34,13 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/donation.lib.php';
require_once DOL_DOCUMENT_ROOT.'/don/class/don.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
// Load translation files required by the page
-$langs->loadLangs(array("companies", "other", "donations"));
+$langs->loadLangs(array('companies', 'other', 'donations'));
$id = GETPOST('id', 'int');
$ref = GETPOST('ref', 'alpha');
@@ -99,7 +99,7 @@ if ($action == 'classin' && $user->rights->don->creer) {
*/
$form = new Form($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -129,7 +129,7 @@ if ($object->id) {
$morehtmlref = '';
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= $langs->trans('Project').' ';
if ($user->rights->don->creer) {
diff --git a/htdocs/don/info.php b/htdocs/don/info.php
index f326972f782..b19826f9bcd 100644
--- a/htdocs/don/info.php
+++ b/htdocs/don/info.php
@@ -25,12 +25,12 @@ require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/donation.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/don/class/don.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
-$langs->load("donations");
+$langs->load('donations');
$id = GETPOST('id', 'int');
$ref = GETPOST('ref', 'alpha');
@@ -45,17 +45,22 @@ $result = restrictedArea($user, 'don', $id, '');
$object = new Don($db);
$object->fetch($id);
+
+
/*
* Actions
*/
+
if ($action == 'classin' && $user->rights->don->creer) {
$object->fetch($id);
$object->setProject($projectid);
}
+
/*
* View
*/
+
$title = $langs->trans('Donation')." - ".$langs->trans('Info');
$help_url = 'EN:Module_Donations|FR:Module_Dons|ES:Módulo_Donaciones|DE:Modul_Spenden';
@@ -63,7 +68,7 @@ $help_url = 'EN:Module_Donations|FR:Module_Dons|ES:Módulo_Donaciones|DE:M
llxHeader('', $title, $help_url);
$form = new Form($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -77,7 +82,7 @@ $linkback = '
';
// Project
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= $langs->trans('Project').' ';
if ($user->rights->don->creer) {
diff --git a/htdocs/don/list.php b/htdocs/don/list.php
index 891f7e6877b..73314d9727c 100644
--- a/htdocs/don/list.php
+++ b/htdocs/don/list.php
@@ -27,12 +27,12 @@
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/don/class/don.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
// Load translation files required by the page
-$langs->loadLangs(array("companies", "donations"));
+$langs->loadLangs(array('companies', 'donations'));
$contextpage = GETPOST('contextpage', 'aZ') ?GETPOST('contextpage', 'aZ') : 'sclist';
@@ -93,7 +93,7 @@ $fieldstosearchall = array(
$donationstatic = new Don($db);
$form = new Form($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$projectstatic = new Project($db);
}
@@ -219,7 +219,7 @@ if ($resql) {
print ' ';
print ' ';
print ' ';
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
print '
';
print ' ';
print ' ';
@@ -249,7 +249,7 @@ if ($resql) {
}
print_liste_field_titre("Name", $_SERVER["PHP_SELF"], "d.lastname", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("Date", $_SERVER["PHP_SELF"], "d.datedon", "", $param, '', $sortfield, $sortorder, 'center ');
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
print_liste_field_titre("Project", $_SERVER["PHP_SELF"], "d.fk_projet", "", $param, "", $sortfield, $sortorder);
}
@@ -280,7 +280,7 @@ if ($resql) {
}
print "
".$donationstatic->getFullName($langs)." ";
print '
'.dol_print_date($db->jdate($objp->datedon), 'day').' ';
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
print "
";
if ($objp->pid) {
$projectstatic->id = $objp->pid;
diff --git a/htdocs/don/note.php b/htdocs/don/note.php
index 8e1b5192ee2..57ca862ad77 100644
--- a/htdocs/don/note.php
+++ b/htdocs/don/note.php
@@ -29,13 +29,13 @@ require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/don/class/don.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/donation.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
// Load translation files required by the page
-$langs->loadLangs(array("companies", "bills", "donations"));
+$langs->loadLangs(array('companies', 'bills', 'donations'));
$id = (GETPOST('id', 'int') ?GETPOST('id', 'int') : GETPOST('facid', 'int')); // For backward compatibility
$ref = GETPOST('ref', 'alpha');
@@ -60,6 +60,7 @@ $permissionnote = $user->rights->don->creer; // Used by the include of actions_s
/*
* Actions
*/
+
$reshook = $hookmanager->executeHooks('doActions', array(), $object, $action); // Note that $action and $object may have been modified by some hooks
if ($reshook < 0) {
setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
@@ -73,6 +74,7 @@ if ($action == 'classin' && $user->rights->don->creer) {
$object->setProject($projectid);
}
+
/*
* View
*/
@@ -84,7 +86,7 @@ $help_url = 'EN:Module_Donations|FR:Module_Dons|ES:Módulo_Donaciones|DE:M
llxHeader('', $title, $help_url);
$form = new Form($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -100,7 +102,7 @@ if ($id > 0 || !empty($ref)) {
$morehtmlref = '';
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= $langs->trans('Project').' ';
if ($user->rights->don->creer) {
diff --git a/htdocs/don/payment/card.php b/htdocs/don/payment/card.php
index 363ef6d34ef..1b4ebaaf88e 100644
--- a/htdocs/don/payment/card.php
+++ b/htdocs/don/payment/card.php
@@ -27,7 +27,7 @@ require_once DOL_DOCUMENT_ROOT.'/don/class/don.class.php';
require_once DOL_DOCUMENT_ROOT.'/don/class/paymentdonation.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/modules/facture/modules_facture.php';
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
}
@@ -124,7 +124,7 @@ print '
'.$langs->trans('Amount').' '.price($object->amount, 0, $
print ' '.$langs->trans('Note').' '.nl2br($object->note_public).' ';
// Bank account
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
if ($object->bank_account) {
$bankline = new AccountLine($db);
$bankline->fetch($object->bank_line);
diff --git a/htdocs/don/payment/payment.php b/htdocs/don/payment/payment.php
index 80ef94e6213..092f5114141 100644
--- a/htdocs/don/payment/payment.php
+++ b/htdocs/don/payment/payment.php
@@ -66,7 +66,7 @@ if ($action == 'add_payment') {
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("Date")), null, 'errors');
$error++;
}
- if (!empty($conf->banque->enabled) && !(GETPOST("accountid", 'int') > 0)) {
+ if (isModEnabled("banque") && !(GETPOST("accountid", 'int') > 0)) {
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("AccountToCredit")), null, 'errors');
$error++;
}
diff --git a/htdocs/ecm/class/ecmfiles.class.php b/htdocs/ecm/class/ecmfiles.class.php
index d70f5c863d7..3f4df8b847b 100644
--- a/htdocs/ecm/class/ecmfiles.class.php
+++ b/htdocs/ecm/class/ecmfiles.class.php
@@ -407,7 +407,7 @@ class EcmFiles extends CommonObject
$sql .= ' FROM '.MAIN_DB_PREFIX.$this->table_element.' as t';
$sql .= ' WHERE 1 = 1';
/* Fetching this table depends on filepath+filename, it must not depends on entity because filesystem on disk does not know what is Dolibarr entities
- if (! empty($conf->multicompany->enabled)) {
+ if (isModEnabled('multicompany')) {
$sql .= " AND entity IN (" . getEntity('ecmfiles') . ")";
}*/
if ($relativepath) {
@@ -546,7 +546,7 @@ class EcmFiles extends CommonObject
}
$sql .= ' WHERE 1 = 1';
/* Fetching this table depends on filepath+filename, it must not depends on entity
- if (! empty($conf->multicompany->enabled)) {
+ if (isModEnabled('multicompany')) {
$sql .= " AND entity IN (" . getEntity('ecmfiles') . ")";
}*/
if (count($sqlwhere) > 0) {
diff --git a/htdocs/ecm/file_card.php b/htdocs/ecm/file_card.php
index 624f8d6ddf0..0a1114fb40c 100644
--- a/htdocs/ecm/file_card.php
+++ b/htdocs/ecm/file_card.php
@@ -371,8 +371,8 @@ if (!empty($object->share)) {
}
$fulllink = $urlwithroot.'/document.php'.($paramlink ? '?'.$paramlink : '');
- //if (! empty($object->ref)) $fulllink.='&hashn='.$object->ref; // Hash of file path
- //elseif (! empty($object->label)) $fulllink.='&hashc='.$object->label; // Hash of file content
+ //if (!empty($object->ref)) $fulllink.='&hashn='.$object->ref; // Hash of file path
+ //elseif (!empty($object->label)) $fulllink.='&hashc='.$object->label; // Hash of file content
print img_picto('', 'globe').' ';
if ($action != 'edit') {
diff --git a/htdocs/ecm/index.php b/htdocs/ecm/index.php
index aec4b54bc6c..ceaf74f533d 100644
--- a/htdocs/ecm/index.php
+++ b/htdocs/ecm/index.php
@@ -32,7 +32,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/treeview.lib.php';
require_once DOL_DOCUMENT_ROOT.'/ecm/class/ecmdirectory.class.php';
// Load translation files required by the page
-$langs->loadLangs(array("ecm", "companies", "other", "users", "orders", "propal", "bills", "contracts"));
+$langs->loadLangs(array('ecm', 'companies', 'other', 'users', 'orders', 'propal', 'bills', 'contracts'));
// Get parameters
$socid = GETPOST('socid', 'int');
diff --git a/htdocs/ecm/index_auto.php b/htdocs/ecm/index_auto.php
index 90ce79be330..8014a4522bb 100644
--- a/htdocs/ecm/index_auto.php
+++ b/htdocs/ecm/index_auto.php
@@ -309,36 +309,36 @@ llxHeader($moreheadcss.$moreheadjs, $langs->trans("ECMArea"), '', '', '', '', $m
$rowspan = 0;
$sectionauto = array();
if (!empty($conf->global->ECM_AUTO_TREE_ENABLED)) {
- if (!empty($conf->product->enabled) || !empty($conf->service->enabled)) {
+ if (isModEnabled("product") || isModEnabled("service")) {
$langs->load("products");
- $rowspan++; $sectionauto[] = array('position'=>10, 'level'=>1, 'module'=>'product', 'test'=>(!empty($conf->product->enabled) || !empty($conf->service->enabled)), 'label'=>$langs->trans("ProductsAndServices"), 'desc'=>$langs->trans("ECMDocsByProducts"));
+ $rowspan++; $sectionauto[] = array('position'=>10, 'level'=>1, 'module'=>'product', 'test'=>(isModEnabled("product") || isModEnabled("service")), 'label'=>$langs->trans("ProductsAndServices"), 'desc'=>$langs->trans("ECMDocsByProducts"));
}
- if (!empty($conf->societe->enabled)) {
- $rowspan++; $sectionauto[] = array('position'=>20, 'level'=>1, 'module'=>'company', 'test'=>$conf->societe->enabled, 'label'=>$langs->trans("ThirdParties"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("ThirdParties")));
+ if (isModEnabled("societe")) {
+ $rowspan++; $sectionauto[] = array('position'=>20, 'level'=>1, 'module'=>'company', 'test'=>isModEnabled('societe'), 'label'=>$langs->trans("ThirdParties"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("ThirdParties")));
}
- if (!empty($conf->propal->enabled)) {
+ if (isModEnabled("propal")) {
$rowspan++; $sectionauto[] = array('position'=>30, 'level'=>1, 'module'=>'propal', 'test'=>$conf->propal->enabled, 'label'=>$langs->trans("Proposals"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Proposals")));
}
- if (!empty($conf->contrat->enabled)) {
+ if (isModEnabled('contrat')) {
$rowspan++; $sectionauto[] = array('position'=>40, 'level'=>1, 'module'=>'contract', 'test'=>$conf->contrat->enabled, 'label'=>$langs->trans("Contracts"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Contracts")));
}
- if (!empty($conf->commande->enabled)) {
+ if (isModEnabled('commande')) {
$rowspan++; $sectionauto[] = array('position'=>50, 'level'=>1, 'module'=>'order', 'test'=>$conf->commande->enabled, 'label'=>$langs->trans("CustomersOrders"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Orders")));
}
if (isModEnabled('facture')) {
$rowspan++; $sectionauto[] = array('position'=>60, 'level'=>1, 'module'=>'invoice', 'test'=>$conf->facture->enabled, 'label'=>$langs->trans("CustomersInvoices"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Invoices")));
}
- if (!empty($conf->supplier_proposal->enabled)) {
+ if (isModEnabled('supplier_proposal')) {
$langs->load("supplier_proposal");
$rowspan++; $sectionauto[] = array('position'=>70, 'level'=>1, 'module'=>'supplier_proposal', 'test'=>$conf->supplier_proposal->enabled, 'label'=>$langs->trans("SupplierProposals"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("SupplierProposals")));
}
- if (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled)) {
- $rowspan++; $sectionauto[] = array('position'=>80, 'level'=>1, 'module'=>'order_supplier', 'test'=>(!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_order->enabled)), 'label'=>$langs->trans("SuppliersOrders"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("PurchaseOrders")));
+ if (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_order")) {
+ $rowspan++; $sectionauto[] = array('position'=>80, 'level'=>1, 'module'=>'order_supplier', 'test'=>(isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_order")), 'label'=>$langs->trans("SuppliersOrders"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("PurchaseOrders")));
}
- if (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_invoice->enabled)) {
- $rowspan++; $sectionauto[] = array('position'=>90, 'level'=>1, 'module'=>'invoice_supplier', 'test'=>(!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || !empty($conf->supplier_invoice->enabled)), 'label'=>$langs->trans("SuppliersInvoices"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("SupplierInvoices")));
+ if (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_invoice")) {
+ $rowspan++; $sectionauto[] = array('position'=>90, 'level'=>1, 'module'=>'invoice_supplier', 'test'=>(isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) || isModEnabled("supplier_invoice")), 'label'=>$langs->trans("SuppliersInvoices"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("SupplierInvoices")));
}
- if (!empty($conf->tax->enabled)) {
+ if (isModEnabled('tax')) {
$langs->load("compta");
$rowspan++; $sectionauto[] = array('position'=>100, 'level'=>1, 'module'=>'tax', 'test'=>$conf->tax->enabled, 'label'=>$langs->trans("SocialContributions"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("SocialContributions")));
$rowspan++; $sectionauto[] = array('position'=>110, 'level'=>1, 'module'=>'tax-vat', 'test'=>$conf->tax->enabled, 'label'=>$langs->trans("VAT"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("VAT")));
@@ -347,23 +347,23 @@ if (!empty($conf->global->ECM_AUTO_TREE_ENABLED)) {
$langs->load("compta");
$rowspan++; $sectionauto[] = array('position'=>120, 'level'=>1, 'module'=>'salaries', 'test'=>$conf->salaries->enabled, 'label'=>$langs->trans("Salaries"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Salaries")));
}
- if (!empty($conf->project->enabled)) {
- $rowspan++; $sectionauto[] = array('position'=>130, 'level'=>1, 'module'=>'project', 'test'=>$conf->project->enabled, 'label'=>$langs->trans("Projects"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Projects")));
- $rowspan++; $sectionauto[] = array('position'=>140, 'level'=>1, 'module'=>'project_task', 'test'=>$conf->project->enabled, 'label'=>$langs->trans("Tasks"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Tasks")));
+ if (isModEnabled('project')) {
+ $rowspan++; $sectionauto[] = array('position'=>130, 'level'=>1, 'module'=>'project', 'test'=>isModEnabled('project'), 'label'=>$langs->trans("Projects"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Projects")));
+ $rowspan++; $sectionauto[] = array('position'=>140, 'level'=>1, 'module'=>'project_task', 'test'=>isModEnabled('project'), 'label'=>$langs->trans("Tasks"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Tasks")));
}
if (!empty($conf->ficheinter->enabled)) {
$langs->load("interventions");
$rowspan++; $sectionauto[] = array('position'=>150, 'level'=>1, 'module'=>'fichinter', 'test'=>$conf->ficheinter->enabled, 'label'=>$langs->trans("Interventions"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Interventions")));
}
- if (!empty($conf->expensereport->enabled)) {
+ if (isModEnabled('expensereport')) {
$langs->load("trips");
$rowspan++; $sectionauto[] = array('position'=>160, 'level'=>1, 'module'=>'expensereport', 'test'=>$conf->expensereport->enabled, 'label'=>$langs->trans("ExpenseReports"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("ExpenseReports")));
}
- if (!empty($conf->holiday->enabled)) {
+ if (isModEnabled('holiday')) {
$langs->load("holiday");
$rowspan++; $sectionauto[] = array('position'=>170, 'level'=>1, 'module'=>'holiday', 'test'=>$conf->holiday->enabled, 'label'=>$langs->trans("Holidays"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Holidays")));
}
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$langs->load("banks");
$rowspan++; $sectionauto[] = array('position'=>180, 'level'=>1, 'module'=>'banque', 'test'=>$conf->banque->enabled, 'label'=>$langs->trans("BankAccount"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("BankAccount")));
$rowspan++; $sectionauto[] = array('position'=>190, 'level'=>1, 'module'=>'chequereceipt', 'test'=>$conf->banque->enabled, 'label'=>$langs->trans("CheckReceipt"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("CheckReceipt")));
@@ -372,7 +372,7 @@ if (!empty($conf->global->ECM_AUTO_TREE_ENABLED)) {
$langs->load("mrp");
$rowspan++; $sectionauto[] = array('position'=>200, 'level'=>1, 'module'=>'mrp-mo', 'test'=>$conf->mrp->enabled, 'label'=>$langs->trans("MOs"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("ManufacturingOrders")));
}
- if (!empty($conf->recruitment->enabled)) {
+ if (isModEnabled('recruitment')) {
$langs->load("recruitment");
$rowspan++; $sectionauto[] = array('position'=>210, 'level'=>1, 'module'=>'recruitment-recruitmentcandidature', 'test'=>$conf->recruitment->enabled, 'label'=>$langs->trans("Candidatures"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("JobApplications")));
}
diff --git a/htdocs/ecm/search.php b/htdocs/ecm/search.php
index f348e0835e7..5f86c0e8c57 100644
--- a/htdocs/ecm/search.php
+++ b/htdocs/ecm/search.php
@@ -113,55 +113,55 @@ $userstatic = new User($db);
// Ajout rubriques automatiques
$rowspan = 0;
$sectionauto = array();
-if (!empty($conf->product->enabled) || !empty($conf->service->enabled)) {
- $langs->load("products"); $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'product', 'test'=>(!empty($conf->product->enabled) || !empty($conf->service->enabled)), 'label'=>$langs->trans("ProductsAndServices"), 'desc'=>$langs->trans("ECMDocsByProducts"));
+if (isModEnabled("product") || isModEnabled("service")) {
+ $langs->load("products"); $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'product', 'test'=>(isModEnabled("product") || isModEnabled("service")), 'label'=>$langs->trans("ProductsAndServices"), 'desc'=>$langs->trans("ECMDocsByProducts"));
}
-if (!empty($conf->societe->enabled)) {
- $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'company', 'test'=>$conf->societe->enabled, 'label'=>$langs->trans("ThirdParties"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("ThirdParties")));
+if (isModEnabled("societe")) {
+ $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'company', 'test'=>isModEnabled('societe'), 'label'=>$langs->trans("ThirdParties"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("ThirdParties")));
}
-if (!empty($conf->propal->enabled)) {
+if (isModEnabled("propal")) {
$rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'propal', 'test'=>$conf->propal->enabled, 'label'=>$langs->trans("Proposals"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Proposals")));
}
-if (!empty($conf->contrat->enabled)) {
+if (isModEnabled('contrat')) {
$rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'contract', 'test'=>$conf->contrat->enabled, 'label'=>$langs->trans("Contracts"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Contracts")));
}
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
$rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'order', 'test'=>$conf->commande->enabled, 'label'=>$langs->trans("CustomersOrders"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Orders")));
}
if (isModEnabled('facture')) {
$rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'invoice', 'test'=>$conf->facture->enabled, 'label'=>$langs->trans("CustomersInvoices"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Invoices")));
}
-if (!empty($conf->supplier_proposal->enabled)) {
+if (isModEnabled('supplier_proposal')) {
$langs->load("supplier_proposal"); $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'supplier_proposal', 'test'=>$conf->supplier_proposal->enabled, 'label'=>$langs->trans("SupplierProposals"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("SupplierProposals")));
}
-if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) {
- $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'order_supplier', 'test'=>((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)), 'label'=>$langs->trans("SuppliersOrders"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("PurchaseOrders")));
+if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) {
+ $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'order_supplier', 'test'=>((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")), 'label'=>$langs->trans("SuppliersOrders"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("PurchaseOrders")));
}
-if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_invoice->enabled)) {
- $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'invoice_supplier', 'test'=>((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_invoice->enabled)), 'label'=>$langs->trans("SuppliersInvoices"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("SupplierInvoices")));
+if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_invoice")) {
+ $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'invoice_supplier', 'test'=>((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_invoice")), 'label'=>$langs->trans("SuppliersInvoices"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("SupplierInvoices")));
}
-if (!empty($conf->tax->enabled)) {
+if (isModEnabled('tax')) {
$langs->load("compta"); $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'tax', 'test'=>$conf->tax->enabled, 'label'=>$langs->trans("SocialContributions"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("SocialContributions")));
}
-if (!empty($conf->project->enabled)) {
- $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'project', 'test'=>$conf->project->enabled, 'label'=>$langs->trans("Projects"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Projects")));
+if (isModEnabled('project')) {
+ $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'project', 'test'=>isModEnabled('project'), 'label'=>$langs->trans("Projects"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Projects")));
}
if (!empty($conf->ficheinter->enabled)) {
$langs->load("interventions"); $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'fichinter', 'test'=>$conf->ficheinter->enabled, 'label'=>$langs->trans("Interventions"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Interventions")));
}
-if (!empty($conf->expensereport->enabled)) {
+if (isModEnabled('expensereport')) {
$langs->load("trips"); $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'expensereport', 'test'=>$conf->expensereport->enabled, 'label'=>$langs->trans("ExpenseReports"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("ExpenseReports")));
}
-if (!empty($conf->holiday->enabled)) {
+if (isModEnabled('holiday')) {
$langs->load("holiday"); $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'holiday', 'test'=>$conf->holiday->enabled, 'label'=>$langs->trans("Holidays"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("Holidays")));
}
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
$langs->load("banks"); $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'banque', 'test'=>$conf->banque->enabled, 'label'=>$langs->trans("BankAccount"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("BankAccount")));
}
if (!empty($conf->mrp->enabled)) {
$langs->load("mrp"); $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'mrp-mo', 'test'=>$conf->mrp->enabled, 'label'=>$langs->trans("MOs"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("ManufacturingOrders")));
}
-if (!empty($conf->recruitment->enabled)) {
+if (isModEnabled('recruitment')) {
$langs->load("recruitment"); $rowspan++; $sectionauto[] = array('level'=>1, 'module'=>'recruitment-recruitmentcandidature', 'test'=>$conf->recruitment->enabled, 'label'=>$langs->trans("Candidatures"), 'desc'=>$langs->trans("ECMDocsBy", $langs->transnoentitiesnoconv("JobApplications")));
}
diff --git a/htdocs/emailcollector/class/emailcollector.class.php b/htdocs/emailcollector/class/emailcollector.class.php
index 7c43286ed9f..006376cfd55 100644
--- a/htdocs/emailcollector/class/emailcollector.class.php
+++ b/htdocs/emailcollector/class/emailcollector.class.php
@@ -251,7 +251,7 @@ class EmailCollector extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -432,7 +432,7 @@ class EmailCollector extends CommonObject
include_once DOL_DOCUMENT_ROOT.'/core/lib/security.lib.php';
$this->password = dolDecrypt($this->password);
- //if ($result > 0 && ! empty($this->table_element_line)) $this->fetchLines();
+ //if ($result > 0 && !empty($this->table_element_line)) $this->fetchLines();
return $result;
}
@@ -1582,7 +1582,9 @@ class EmailCollector extends CommonObject
$plainmsg = $imapemail->getTextBody();
}
if ($imapemail->hasAttachments()) {
- $attachments = $imapemail->getAttachments();
+ $attachments = $imapemail->getAttachments()->all();
+ } else {
+ $attachments = [];
}
} else {
$this->getmsg($connection, $imapemail);
@@ -2440,6 +2442,20 @@ class EmailCollector extends CommonObject
$errorforactions++;
$this->error = 'Failed to create project: '.$langs->trans($projecttocreate->error);
$this->errors = $projecttocreate->errors;
+ } else {
+ if ($attachments) {
+ $destdir = $conf->project->dir_output.'/'.$projecttocreate->ref;
+ if (!dol_is_dir($destdir)) {
+ dol_mkdir($destdir);
+ }
+ if (!empty($conf->global->MAIN_IMAP_USE_PHPIMAP)) {
+ foreach ($attachments as $attachment) {
+ $attachment->save($destdir.'/');
+ }
+ } else {
+ $this->getmsg($connection, $imapemail, $destdir);
+ }
+ }
}
}
}
@@ -2550,13 +2566,16 @@ class EmailCollector extends CommonObject
$this->errors = $tickettocreate->errors;
} else {
if ($attachments) {
+ $destdir = $conf->ticket->dir_output.'/'.$tickettocreate->ref;
+ if (!dol_is_dir($destdir)) {
+ dol_mkdir($destdir);
+ }
if (!empty($conf->global->MAIN_IMAP_USE_PHPIMAP)) {
- $destdir = $conf->ticket->dir_output.'/'.$tickettocreate->ref;
- if (!dol_is_dir($destdir)) {
- return -1;
- dol_mkdir($destdir);
- $this->getmsg($connection, $imapemail, $destdir);
+ foreach ($attachments as $attachment) {
+ $attachment->save($destdir.'/');
}
+ } else {
+ $this->getmsg($connection, $imapemail, $destdir);
}
}
}
diff --git a/htdocs/emailcollector/class/emailcollectoraction.class.php b/htdocs/emailcollector/class/emailcollectoraction.class.php
index 37bd93926cb..46b787fc6fd 100644
--- a/htdocs/emailcollector/class/emailcollectoraction.class.php
+++ b/htdocs/emailcollector/class/emailcollectoraction.class.php
@@ -158,7 +158,7 @@ class EmailCollectorAction extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
diff --git a/htdocs/emailcollector/class/emailcollectorfilter.class.php b/htdocs/emailcollector/class/emailcollectorfilter.class.php
index 6386ee3c27f..c19610f14ad 100644
--- a/htdocs/emailcollector/class/emailcollectorfilter.class.php
+++ b/htdocs/emailcollector/class/emailcollectorfilter.class.php
@@ -127,7 +127,7 @@ class EmailCollectorFilter extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
diff --git a/htdocs/eventorganization/class/conferenceorbooth.class.php b/htdocs/eventorganization/class/conferenceorbooth.class.php
index a2eb140c789..cdb67a2c37b 100644
--- a/htdocs/eventorganization/class/conferenceorbooth.class.php
+++ b/htdocs/eventorganization/class/conferenceorbooth.class.php
@@ -107,7 +107,7 @@ class ConferenceOrBooth extends ActionComm
'ref' => array('type'=>'integer', 'label'=>'Ref', 'enabled'=>'1', 'position'=>1, 'notnull'=>1, 'visible'=>2, 'noteditable'=>'1', 'index'=>1, 'css'=>'left', 'comment'=>"Id"),
'label' => array('type'=>'varchar(255)', 'label'=>'Label', 'enabled'=>'1', 'position'=>30, 'notnull'=>0, 'visible'=>1, 'searchall'=>1, 'css'=>'minwidth300', 'csslist'=>'tdoverflowmax125', 'help'=>"OrganizationEvenLabelName", 'showoncombobox'=>'1',),
'fk_soc' => array('type'=>'integer:Societe:societe/class/societe.class.php:1:status=1 AND entity IN (__SHARED_ENTITIES__)', 'label'=>'ThirdParty', 'enabled'=>'$conf->societe->enabled', 'position'=>50, 'notnull'=>-1, 'visible'=>1, 'index'=>1, 'help'=>"OrganizationEventLinkToThirdParty", 'picto'=>'company', 'css'=>'tdoverflowmax150 maxwidth500'),
- 'fk_project' => array('type'=>'integer:Project:projet/class/project.class.php:1:t.usage_organize_event=1', 'label'=>'Project', 'enabled'=>'$conf->project->enabled', 'position'=>52, 'notnull'=>-1, 'visible'=>-1, 'index'=>1, 'picto'=>'project', 'css'=>'tdoverflowmax150 maxwidth500'),
+ 'fk_project' => array('type'=>'integer:Project:projet/class/project.class.php:1:t.usage_organize_event=1', 'label'=>'Project', 'enabled'=>"isModEnabled('project')", 'position'=>52, 'notnull'=>-1, 'visible'=>-1, 'index'=>1, 'picto'=>'project', 'css'=>'tdoverflowmax150 maxwidth500'),
'note' => array('type'=>'text', 'label'=>'Description', 'enabled'=>'1', 'position'=>60, 'notnull'=>0, 'visible'=>1),
'fk_action' => array('type'=>'sellist:c_actioncomm:libelle:id::module LIKE (\'%@eventorganization\')', 'label'=>'Format', 'enabled'=>'1', 'position'=>60, 'notnull'=>1, 'visible'=>1, 'css'=>'width300'),
'datep' => array('type'=>'datetime', 'label'=>'DateStart', 'enabled'=>'1', 'position'=>70, 'notnull'=>0, 'visible'=>1, 'showoncombobox'=>'2',),
@@ -152,7 +152,7 @@ class ConferenceOrBooth extends ActionComm
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['id']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -444,8 +444,8 @@ class ConferenceOrBooth extends ActionComm
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->eventorganization->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->eventorganization->eventorganization_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->eventorganization->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->eventorganization->eventorganization_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -468,8 +468,8 @@ class ConferenceOrBooth extends ActionComm
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->eventorganization->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->eventorganization->eventorganization_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->eventorganization->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->eventorganization->eventorganization_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -492,8 +492,8 @@ class ConferenceOrBooth extends ActionComm
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->eventorganization->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->eventorganization->eventorganization_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->eventorganization->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->eventorganization->eventorganization_advance->validate))))
{
$this->error='Permission denied';
return -1;
diff --git a/htdocs/eventorganization/class/conferenceorboothattendee.class.php b/htdocs/eventorganization/class/conferenceorboothattendee.class.php
index 3dae278d3a1..222a0c78946 100644
--- a/htdocs/eventorganization/class/conferenceorboothattendee.class.php
+++ b/htdocs/eventorganization/class/conferenceorboothattendee.class.php
@@ -104,7 +104,7 @@ class ConferenceOrBoothAttendee extends CommonObject
'rowid' => array('type'=>'integer', 'label'=>'TechnicalID', 'enabled'=>'1', 'position'=>1, 'notnull'=>1, 'visible'=>0, 'noteditable'=>'1', 'index'=>1, 'css'=>'left', 'comment'=>"Id"),
'ref' => array('type'=>'varchar(128)', 'label'=>'Ref', 'enabled'=>'1', 'position'=>10, 'notnull'=>1, 'visible'=>2, 'index'=>1, 'comment'=>"Reference of object"),
'fk_actioncomm' => array('type'=>'integer:ActionComm:comm/action/class/actioncomm.class.php:1', 'label'=>'ConferenceOrBooth', 'enabled'=>'1', 'position'=>55, 'notnull'=>0, 'visible'=>0, 'index'=>1, 'picto'=>'agenda'),
- 'fk_project' => array('type'=>'integer:Project:projet/class/project.class.php:1', 'label'=>'Project', 'enabled'=>'$conf->project->enabled', 'position'=>20, 'notnull'=>1, 'visible'=>0, 'index'=>1, 'picto'=>'project', 'css'=>'tdoverflowmax150 maxwidth500'),
+ 'fk_project' => array('type'=>'integer:Project:projet/class/project.class.php:1', 'label'=>'Project', 'enabled'=>"isModEnabled('project')", 'position'=>20, 'notnull'=>1, 'visible'=>0, 'index'=>1, 'picto'=>'project', 'css'=>'tdoverflowmax150 maxwidth500'),
'email' => array('type'=>'mail', 'label'=>'EmailAttendee', 'enabled'=>'1', 'position'=>30, 'notnull'=>1, 'visible'=>1, 'index'=>1, 'autofocusoncreate'=>1, 'searchall'=>1),
'firstname' => array('type'=>'varchar(100)', 'label'=>'Firstname', 'enabled'=>'1', 'position'=>31, 'notnull'=>0, 'visible'=>1, 'index'=>1, 'searchall'=>1),
'lastname' => array('type'=>'varchar(100)', 'label'=>'Lastname', 'enabled'=>'1', 'position'=>32, 'notnull'=>0, 'visible'=>1, 'index'=>1, 'searchall'=>1),
@@ -196,7 +196,7 @@ class ConferenceOrBoothAttendee extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -541,8 +541,8 @@ class ConferenceOrBoothAttendee extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->eventorganization->conferenceorboothattendee->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->eventorganization->conferenceorboothattendee->conferenceorboothattendee_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->eventorganization->conferenceorboothattendee->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->eventorganization->conferenceorboothattendee->conferenceorboothattendee_advance->validate))))
{
$this->error='NotEnoughPermissions';
dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR);
@@ -684,8 +684,8 @@ class ConferenceOrBoothAttendee extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->eventorganization->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->eventorganization->eventorganization_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->eventorganization->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->eventorganization->eventorganization_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -708,8 +708,8 @@ class ConferenceOrBoothAttendee extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->eventorganization->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->eventorganization->eventorganization_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->eventorganization->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->eventorganization->eventorganization_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -732,8 +732,8 @@ class ConferenceOrBoothAttendee extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->eventorganization->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->eventorganization->eventorganization_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->eventorganization->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->eventorganization->eventorganization_advance->validate))))
{
$this->error='Permission denied';
return -1;
diff --git a/htdocs/eventorganization/conferenceorbooth_card.php b/htdocs/eventorganization/conferenceorbooth_card.php
index ac64a16602f..1e71af81492 100644
--- a/htdocs/eventorganization/conferenceorbooth_card.php
+++ b/htdocs/eventorganization/conferenceorbooth_card.php
@@ -17,27 +17,29 @@
*/
/**
- * \file htdocs/eventorganization/conferenceorbooth_card.php
- * \ingroup eventorganization
- * \brief Page to create/edit/view conferenceorbooth
+ * \file htdocs/eventorganization/conferenceorbooth_card.php
+ * \ingroup eventorganization
+ * \brief Page to create/edit/view conferenceorbooth
*/
-require '../main.inc.php';
+// Load Dolibarr environment
+require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
-require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/project.lib.php';
+require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
require_once DOL_DOCUMENT_ROOT.'/eventorganization/class/conferenceorbooth.class.php';
require_once DOL_DOCUMENT_ROOT.'/eventorganization/lib/eventorganization_conferenceorbooth.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
+require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
global $dolibarr_main_url_root;
// Load translation files required by the page
-$langs->loadLangs(array("eventorganization", "projects"));
+$langs->loadLangs(array('eventorganization', 'projects'));
+// Get parameters
$action = GETPOST('action', 'aZ09');
$confirm = GETPOST('confirm', 'alpha');
$cancel = GETPOST('cancel', 'aZ09');
@@ -45,7 +47,6 @@ $contextpage = GETPOST('contextpage', 'aZ') ? GETPOST('contextpage', 'aZ') : 'co
$backtopage = GETPOST('backtopage', 'alpha');
$backtopageforcancel = GETPOST('backtopageforcancel', 'alpha');
-// Get parameters
$id = GETPOST('id', 'int');
$ref = GETPOST('ref', 'alpha');
$withproject = GETPOST('withproject', 'int');
@@ -79,6 +80,7 @@ if (empty($action) && empty($id) && empty($ref)) {
// Load object
include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be include, not include_once.
+// Permissions
$permissiontoread = $user->rights->eventorganization->read;
$permissiontoadd = $user->rights->eventorganization->write; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
$permissiontodelete = $user->rights->eventorganization->delete || ($permissiontoadd && isset($object->status) && $object->status == $object::STATUS_DRAFT);
@@ -220,7 +222,7 @@ if (!empty($withproject)) {
print '
';
// Usage
- if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES) || empty($conf->global->PROJECT_HIDE_TASKS) || !empty($conf->eventorganization->enabled)) {
+ if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES) || empty($conf->global->PROJECT_HIDE_TASKS) || isModEnabled('eventorganization')) {
print '';
print $langs->trans("Usage");
print ' ';
@@ -243,7 +245,7 @@ if (!empty($withproject)) {
print $form->textwithpicto($langs->trans("BillTime"), $htmltext);
print ' ';
}
- if (!empty($conf->eventorganization->enabled)) {
+ if (isModEnabled('eventorganization')) {
print ' usage_organize_event ? ' checked="checked"' : '')).'"> ';
$htmltext = $langs->trans("EventOrganizationDescriptionLong");
print $form->textwithpicto($langs->trans("ManageOrganizeEvent"), $htmltext);
diff --git a/htdocs/eventorganization/conferenceorbooth_contact.php b/htdocs/eventorganization/conferenceorbooth_contact.php
index 57f2a76c042..2c304bd8562 100644
--- a/htdocs/eventorganization/conferenceorbooth_contact.php
+++ b/htdocs/eventorganization/conferenceorbooth_contact.php
@@ -22,21 +22,23 @@
* \brief Tab for contacts linked to ConferenceOrBooth
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
-require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php';
+require_once DOL_DOCUMENT_ROOT.'/core/lib/project.lib.php';
+require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
+require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
require_once DOL_DOCUMENT_ROOT.'/eventorganization/class/conferenceorbooth.class.php';
require_once DOL_DOCUMENT_ROOT.'/eventorganization/lib/eventorganization_conferenceorbooth.lib.php';
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
-require_once DOL_DOCUMENT_ROOT.'/core/lib/project.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/eventorganization/class/conferenceorbooth.class.php';
-require_once DOL_DOCUMENT_ROOT.'/eventorganization/lib/eventorganization_conferenceorbooth.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
+
// Load translation files required by the page
-$langs->loadLangs(array("eventorganization", "projects", "companies", "other", "mails"));
+$langs->loadLangs(array('companies', 'eventorganization', 'mails', 'others', 'projects'));
+// Variables GET
$id = GETPOST('id', 'int');
$ref = GETPOST('ref', 'alpha');
$lineid = GETPOST('lineid', 'int');
@@ -51,12 +53,14 @@ $backtopageforcancel = GETPOST('backtopageforcancel', 'alpha');
$withproject = GETPOST('withproject', 'int');
+
// Initialize technical objects
$object = new ConferenceOrBooth($db);
$extrafields = new ExtraFields($db);
$projectstatic = new Project($db);
$diroutputmassaction = $conf->eventorganization->dir_output.'/temp/massgeneration/'.$user->id;
$hookmanager->initHooks(array('conferenceorboothcontact', 'globalcard')); // Note that conf->hooks_modules contains array
+
// Fetch optionals attributes and labels
$extrafields->fetch_name_optionals_label($object->table_element);
@@ -69,6 +73,7 @@ include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be includ
if ($user->socid > 0) {
accessforbidden();
}
+
$isdraft = (($object->status== $object::STATUS_DRAFT) ? 1 : 0);
$result = restrictedArea($user, 'eventorganization', $object->id, '', '', 'fk_soc', 'rowid', $isdraft);
@@ -201,7 +206,7 @@ if (!empty($withproject)) {
print '';
// Usage
- if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES) || empty($conf->global->PROJECT_HIDE_TASKS) || !empty($conf->eventorganization->enabled)) {
+ if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES) || empty($conf->global->PROJECT_HIDE_TASKS) || isModEnabled('eventorganization')) {
print '';
print $langs->trans("Usage");
print ' ';
@@ -224,7 +229,7 @@ if (!empty($withproject)) {
print $form->textwithpicto($langs->trans("BillTime"), $htmltext);
print ' ';
}
- if (!empty($conf->eventorganization->enabled)) {
+ if (isModEnabled('eventorganization')) {
print ' usage_organize_event ? ' checked="checked"' : '')).'"> ';
$htmltext = $langs->trans("EventOrganizationDescriptionLong");
print $form->textwithpicto($langs->trans("ManageOrganizeEvent"), $htmltext);
@@ -392,7 +397,7 @@ if ($object->id) {
// Thirdparty
$morehtmlref.=' '.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (isModEnabled('project'))
{
$langs->load("projects");
$morehtmlref.=' '.$langs->trans('Project') . ' ';
@@ -413,7 +418,7 @@ if ($object->id) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/eventorganization/conferenceorbooth_document.php b/htdocs/eventorganization/conferenceorbooth_document.php
index 4a5b368df02..56b34f68b03 100644
--- a/htdocs/eventorganization/conferenceorbooth_document.php
+++ b/htdocs/eventorganization/conferenceorbooth_document.php
@@ -22,21 +22,25 @@
* \brief Tab for documents linked to ConferenceOrBooth
*/
+// Load Dolibarr environment
require '../main.inc.php';
+require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
-require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/project.lib.php';
+
+require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
require_once DOL_DOCUMENT_ROOT.'/eventorganization/class/conferenceorbooth.class.php';
require_once DOL_DOCUMENT_ROOT.'/eventorganization/lib/eventorganization_conferenceorbooth.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
+require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
+
// Load translation files required by the page
$langs->loadLangs(array("eventorganization", "projects", "companies", "other", "mails"));
+// Get Parameters
$action = GETPOST('action', 'aZ09');
$confirm = GETPOST('confirm');
$cancel = GETPOST('cancel', 'aZ09');
@@ -49,8 +53,6 @@ $ref = GETPOST('ref', 'alpha');
$withproject = GETPOST('withproject', 'int');
$project_ref = GETPOST('project_ref', 'alpha');
-
-// Get parameters
$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit;
$sortfield = GETPOST('sortfield', 'aZ09comma');
$sortorder = GETPOST('sortorder', 'aZ09comma');
@@ -88,6 +90,7 @@ if ($id > 0 || !empty($ref)) {
$upload_dir = $conf->eventorganization->multidir_output[$object->entity ? $object->entity : $conf->entity]."/conferenceorbooth/".get_exdir(0, 0, 0, 1, $object);
}
+// Permissions
$permissiontoread = $user->rights->eventorganization->read;
$permissiontoadd = $user->rights->eventorganization->write; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
$permissiontodelete = $user->rights->eventorganization->delete || ($permissiontoadd && isset($object->status) && $object->status == $object::STATUS_DRAFT);
@@ -176,7 +179,7 @@ if (!empty($withproject)) {
print '';
// Usage
- if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES) || empty($conf->global->PROJECT_HIDE_TASKS) || !empty($conf->eventorganization->enabled)) {
+ if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES) || empty($conf->global->PROJECT_HIDE_TASKS) || isModEnabled('eventorganization')) {
print '';
print $langs->trans("Usage");
print ' ';
@@ -199,7 +202,7 @@ if (!empty($withproject)) {
print $form->textwithpicto($langs->trans("BillTime"), $htmltext);
print ' ';
}
- if (!empty($conf->eventorganization->enabled)) {
+ if (isModEnabled('eventorganization')) {
print ' usage_organize_event ? ' checked="checked"' : '')).'"> ';
$htmltext = $langs->trans("EventOrganizationDescriptionLong");
print $form->textwithpicto($langs->trans("ManageOrganizeEvent"), $htmltext);
diff --git a/htdocs/eventorganization/conferenceorbooth_list.php b/htdocs/eventorganization/conferenceorbooth_list.php
index 958d1ab897d..520435c9cdc 100644
--- a/htdocs/eventorganization/conferenceorbooth_list.php
+++ b/htdocs/eventorganization/conferenceorbooth_list.php
@@ -17,21 +17,26 @@
*/
/**
- * \file conferenceorbooth_list.php
- * \ingroup eventorganization
- * \brief List page for conferenceorbooth
+ * \file htdocs/eventorganization/conferenceorbooth_list.php
+ * \ingroup eventorganization
+ * \brief List page for conferenceorbooth
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
+
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/project.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
-require_once DOL_DOCUMENT_ROOT.'/eventorganization/class/conferenceorbooth.class.php';
-require_once DOL_DOCUMENT_ROOT.'/eventorganization/lib/eventorganization_conferenceorbooth.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/eventorganization/class/conferenceorboothattendee.class.php';
+
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
+require_once DOL_DOCUMENT_ROOT.'/eventorganization/class/conferenceorbooth.class.php';
+require_once DOL_DOCUMENT_ROOT.'/eventorganization/class/conferenceorboothattendee.class.php';
+require_once DOL_DOCUMENT_ROOT.'/eventorganization/lib/eventorganization_conferenceorbooth.lib.php';
+
+require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
global $dolibarr_main_url_root;
@@ -41,6 +46,7 @@ global $dolibarr_main_url_root;
// Load translation files required by the page
$langs->loadLangs(array("eventorganization", "other", "projects", "companies"));
+// Get Parameters
$action = GETPOST('action', 'aZ09') ?GETPOST('action', 'aZ09') : 'view'; // The action 'add', 'create', 'edit', 'update', 'view', ...
$massaction = GETPOST('massaction', 'alpha'); // The bulk action (combo box choice into lists)
$show_files = GETPOST('show_files', 'int'); // Show files area generated by bulk actions ?
@@ -300,7 +306,7 @@ if ($projectid > 0) {
print '';
// Usage
- if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES) || empty($conf->global->PROJECT_HIDE_TASKS) || !empty($conf->eventorganization->enabled)) {
+ if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES) || empty($conf->global->PROJECT_HIDE_TASKS) || isModEnabled('eventorganization')) {
print '';
print $langs->trans("Usage");
print ' ';
@@ -323,7 +329,7 @@ if ($projectid > 0) {
print $form->textwithpicto($langs->trans("BillTime"), $htmltext);
print ' ';
}
- if (!empty($conf->eventorganization->enabled)) {
+ if (isModEnabled('eventorganization')) {
print ' usage_organize_event ? ' checked="checked"' : '').'"> ';
$htmltext = $langs->trans("EventOrganizationDescriptionLong");
print $form->textwithpicto($langs->trans("ManageOrganizeEvent"), $htmltext);
diff --git a/htdocs/eventorganization/conferenceorboothattendee_card.php b/htdocs/eventorganization/conferenceorboothattendee_card.php
index b02edfc4a34..14a8c871232 100644
--- a/htdocs/eventorganization/conferenceorboothattendee_card.php
+++ b/htdocs/eventorganization/conferenceorboothattendee_card.php
@@ -16,20 +16,23 @@
*/
/**
- * \file conferenceorboothattendee_card.php
- * \ingroup eventorganization
- * \brief Page to create/edit/view conferenceorboothattendee
+ * \file htdocs/eventorganization/conferenceorboothattendee_card.php
+ * \ingroup eventorganization
+ * \brief Page to create/edit/view conferenceorboothattendee
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
+require_once DOL_DOCUMENT_ROOT.'/core/lib/project.lib.php';
+
require_once DOL_DOCUMENT_ROOT.'/eventorganization/class/conferenceorbooth.class.php';
require_once DOL_DOCUMENT_ROOT.'/eventorganization/class/conferenceorboothattendee.class.php';
require_once DOL_DOCUMENT_ROOT.'/eventorganization/lib/eventorganization_conferenceorbooth.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/core/lib/project.lib.php';
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
// Load translation files required by the page
@@ -108,6 +111,7 @@ if ($object->fk_project > 0) {
$fk_project = $object->fk_project;
}
+// Permissions
$permissiontoread = $user->rights->eventorganization->read;
$permissiontoadd = $user->rights->eventorganization->write; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
$permissiontodelete = $user->rights->eventorganization->delete || ($permissiontoadd && isset($object->status) && $object->status == $object::STATUS_DRAFT);
@@ -249,7 +253,7 @@ if (!empty($withproject)) {
print '';
// Usage
- if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES) || empty($conf->global->PROJECT_HIDE_TASKS) || !empty($conf->eventorganization->enabled)) {
+ if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES) || empty($conf->global->PROJECT_HIDE_TASKS) || isModEnabled('eventorganization')) {
print '';
print $langs->trans("Usage");
print ' ';
@@ -272,7 +276,7 @@ if (!empty($withproject)) {
print $form->textwithpicto($langs->trans("BillTime"), $htmltext);
print ' ';
}
- if (!empty($conf->eventorganization->enabled)) {
+ if (isModEnabled('eventorganization')) {
print ' usage_organize_event ? ' checked="checked"' : '')).'"> ';
$htmltext = $langs->trans("EventOrganizationDescriptionLong");
print $form->textwithpicto($langs->trans("ManageOrganizeEvent"), $htmltext);
diff --git a/htdocs/eventorganization/conferenceorboothattendee_list.php b/htdocs/eventorganization/conferenceorboothattendee_list.php
index c1626f7bbf3..167a79959f5 100644
--- a/htdocs/eventorganization/conferenceorboothattendee_list.php
+++ b/htdocs/eventorganization/conferenceorboothattendee_list.php
@@ -17,21 +17,24 @@
*/
/**
- * \file conferenceorboothattendee_list.php
- * \ingroup eventorganization
- * \brief List page for conferenceorboothattendee
+ * \file htdocs/eventorganization/conferenceorboothattendee_list.php
+ * \ingroup eventorganization
+ * \brief List page for conferenceorboothattendee
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/project.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
+
require_once DOL_DOCUMENT_ROOT.'/eventorganization/class/conferenceorbooth.class.php';
-require_once DOL_DOCUMENT_ROOT.'/eventorganization/lib/eventorganization_conferenceorbooth.lib.php';
require_once DOL_DOCUMENT_ROOT.'/eventorganization/class/conferenceorboothattendee.class.php';
+require_once DOL_DOCUMENT_ROOT.'/eventorganization/lib/eventorganization_conferenceorbooth.lib.php';
+require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
if (isModEnabled('categorie')) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
}
@@ -44,15 +47,16 @@ global $dolibarr_main_url_root;
// Load translation files required by the page
$langs->loadLangs(array("eventorganization", "other", "projects"));
-$action = GETPOST('action', 'aZ09') ?GETPOST('action', 'aZ09') : 'view'; // The action 'add', 'create', 'edit', 'update', 'view', ...
-$massaction = GETPOST('massaction', 'alpha'); // The bulk action (combo box choice into lists)
-$show_files = GETPOST('show_files', 'int'); // Show files area generated by bulk actions ?
-$confirm = GETPOST('confirm', 'alpha'); // Result of a confirmation
-$cancel = GETPOST('cancel', 'alpha'); // We click on a Cancel button
-$toselect = GETPOST('toselect', 'array'); // Array of ids of elements selected into a list
-$contextpage = GETPOST('contextpage', 'aZ') ? GETPOST('contextpage', 'aZ') : 'conferenceorboothattendeelist'; // To manage different context of search
-$backtopage = GETPOST('backtopage', 'alpha'); // Go back to a dedicated page
-$optioncss = GETPOST('optioncss', 'aZ'); // Option for the css output (always '' except when 'print')
+// Get Paramters
+$action = GETPOST('action', 'aZ09') ?GETPOST('action', 'aZ09') : 'view'; // The action 'add', 'create', 'edit', 'update', 'view', ...
+$massaction = GETPOST('massaction', 'alpha'); // The bulk action (combo box choice into lists)
+$show_files = GETPOST('show_files', 'int'); // Show files area generated by bulk actions ?
+$confirm = GETPOST('confirm', 'alpha'); // Result of a confirmation
+$cancel = GETPOST('cancel', 'alpha'); // We click on a Cancel button
+$toselect = GETPOST('toselect', 'array'); // Array of ids of elements selected into a list
+$contextpage = GETPOST('contextpage', 'aZ') ? GETPOST('contextpage', 'aZ') : 'conferenceorboothattendeelist'; // To manage different context of search
+$backtopage = GETPOST('backtopage', 'alpha'); // Go back to a dedicated page
+$optioncss = GETPOST('optioncss', 'aZ'); // Option for the css output (always '' except when 'print')
$id = GETPOST('id', 'int');
$conf_or_booth_id = GETPOST('conforboothid', 'int');
@@ -139,6 +143,7 @@ include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_array_fields.tpl.php';
$object->fields = dol_sort_array($object->fields, 'position');
$arrayfields = dol_sort_array($arrayfields, 'position');
+// Permissions
$permissiontoread = $user->rights->eventorganization->read;
$permissiontoadd = $user->rights->eventorganization->write;
$permissiontodelete = $user->rights->eventorganization->delete;
@@ -427,7 +432,7 @@ if ($projectstatic->id > 0 || $confOrBooth > 0) {
print '';
// Usage
- if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES) || empty($conf->global->PROJECT_HIDE_TASKS) || !empty($conf->eventorganization->enabled)) {
+ if (!empty($conf->global->PROJECT_USE_OPPORTUNITIES) || empty($conf->global->PROJECT_HIDE_TASKS) || isModEnabled('eventorganization')) {
print '';
print $langs->trans("Usage");
print ' ';
@@ -450,7 +455,7 @@ if ($projectstatic->id > 0 || $confOrBooth > 0) {
print $form->textwithpicto($langs->trans("BillTime"), $htmltext);
print ' ';
}
- if (!empty($conf->eventorganization->enabled)) {
+ if (isModEnabled('eventorganization')) {
print ' usage_organize_event ? ' checked="checked"' : '')).'"> ';
$htmltext = $langs->trans("EventOrganizationDescriptionLong");
print $form->textwithpicto($langs->trans("ManageOrganizeEvent"), $htmltext);
diff --git a/htdocs/eventorganization/conferenceorboothattendee_note.php b/htdocs/eventorganization/conferenceorboothattendee_note.php
index 4c5b2f394a9..b6e343e4496 100644
--- a/htdocs/eventorganization/conferenceorboothattendee_note.php
+++ b/htdocs/eventorganization/conferenceorboothattendee_note.php
@@ -17,9 +17,9 @@
*/
/**
- * \file conferenceorboothattendee_note.php
- * \ingroup eventorganization
- * \brief Tab for notes on ConferenceOrBoothAttendee
+ * \file htdocs/eventorganization/conferenceorboothattendee_note.php
+ * \ingroup eventorganization
+ * \brief Tab for notes on ConferenceOrBoothAttendee
*/
//if (! defined('NOREQUIREDB')) define('NOREQUIREDB', '1'); // Do not create database handler $db
@@ -42,6 +42,7 @@
//if (! defined('CSRFCHECK_WITH_TOKEN')) define('CSRFCHECK_WITH_TOKEN', '1'); // Force use of CSRF protection with tokens even for GET
//if (! defined('NOBROWSERNOTIF')) define('NOBROWSERNOTIF', '1'); // Disable browser notification
+
// Load Dolibarr environment
$res = 0;
// Try main.inc.php into web root known defined into CONTEXT_DOCUMENT_ROOT (not always defined)
@@ -77,7 +78,7 @@ dol_include_once('/eventorganization/class/conferenceorboothattendee.class.php')
dol_include_once('/eventorganization/lib/eventorganization_conferenceorboothattendee.lib.php');
// Load translation files required by the page
-$langs->loadLangs(array("eventorganization@eventorganization", "companies"));
+$langs->loadLangs(array('eventorganization', 'companies'));
// Get parameters
$id = GETPOST('id', 'int');
@@ -105,6 +106,7 @@ if ($id > 0 || !empty($ref)) {
$upload_dir = $conf->eventorganization->multidir_output[$object->entity]."/".$object->id;
}
+// Permissions
$permissionnote = $user->rights->eventorganization->conferenceorboothattendee->write; // Used by the include of actions_setnotes.inc.php
$permissiontoadd = $user->rights->eventorganization->conferenceorboothattendee->write; // Used by the include of actions_addupdatedelete.inc.php
@@ -151,7 +153,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref.=' '.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (isModEnabled('project'))
{
$langs->load("projects");
$morehtmlref.=' '.$langs->trans('Project') . ' ';
@@ -172,7 +174,7 @@ if ($id > 0 || !empty($ref)) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/eventorganization/eventorganizationindex.php b/htdocs/eventorganization/eventorganizationindex.php
index 77c2ec512f4..60f5beefd70 100644
--- a/htdocs/eventorganization/eventorganizationindex.php
+++ b/htdocs/eventorganization/eventorganizationindex.php
@@ -71,7 +71,7 @@ print '';
/* BEGIN MODULEBUILDER DRAFT MYOBJECT
// Draft MyObject
-if (! empty($conf->eventorganization->enabled) && $user->rights->eventorganization->read)
+if (isModEnabled('eventorganization') && $user->rights->eventorganization->read)
{
$langs->load("orders");
@@ -152,7 +152,7 @@ $max = $conf->global->MAIN_SIZE_SHORTLIST_LIMIT;
/* BEGIN MODULEBUILDER LASTMODIFIED MYOBJECT
// Last modified myobject
-if (! empty($conf->eventorganization->enabled) && $user->rights->eventorganization->read)
+if (isModEnabled('eventorganization') && $user->rights->eventorganization->read)
{
$sql = "SELECT s.rowid, s.ref, s.label, s.date_creation, s.tms";
$sql.= " FROM ".MAIN_DB_PREFIX."eventorganization_myobject as s";
diff --git a/htdocs/expedition/card.php b/htdocs/expedition/card.php
index 52b78aa1e5c..24489288554 100644
--- a/htdocs/expedition/card.php
+++ b/htdocs/expedition/card.php
@@ -47,16 +47,16 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
require_once DOL_DOCUMENT_ROOT.'/product/stock/class/entrepot.class.php';
require_once DOL_DOCUMENT_ROOT.'/product/stock/class/productlot.class.php';
require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
-if (!empty($conf->product->enabled) || !empty($conf->service->enabled)) {
+if (isModEnabled("product") || isModEnabled("service")) {
require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
}
-if (!empty($conf->propal->enabled)) {
+if (isModEnabled("propal")) {
require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
}
-if (!empty($conf->productbatch->enabled)) {
+if (isModEnabled('productbatch')) {
require_once DOL_DOCUMENT_ROOT.'/product/class/productbatch.class.php';
}
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -67,7 +67,7 @@ $langs->loadLangs(array("sendings", "companies", "bills", 'deliveries', 'orders'
if (!empty($conf->incoterm->enabled)) {
$langs->load('incoterm');
}
-if (!empty($conf->productbatch->enabled)) {
+if (isModEnabled('productbatch')) {
$langs->load('productbatch');
}
@@ -258,7 +258,7 @@ if (empty($reshook)) {
$stockLocation = "ent1".$i."_0";
$qty = "qtyl".$i;
- if (!empty($conf->productbatch->enabled) && $objectsrc->lines[$i]->product_tobatch) { // If product need a batch number
+ if (isModEnabled('productbatch') && $objectsrc->lines[$i]->product_tobatch) { // If product need a batch number
if (GETPOSTISSET($batch)) {
//shipment line with batch-enable product
$qty .= '_'.$j;
@@ -466,7 +466,7 @@ if (empty($reshook)) {
setEventMessages($object->error, $object->errors, 'errors');
}
// TODO add alternative status
- //} elseif ($action == 'reopen' && (! empty($user->rights->expedition->creer) || ! empty($user->rights->expedition->shipping_advance->validate)))
+ //} elseif ($action == 'reopen' && (!empty($user->rights->expedition->creer) || !empty($user->rights->expedition->shipping_advance->validate)))
//{
// $result = $object->setStatut(0);
// if ($result < 0)
@@ -763,10 +763,10 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -819,7 +819,7 @@ if (empty($action)) {
$form = new Form($db);
$formfile = new FormFile($db);
$formproduct = new FormProduct($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -875,10 +875,10 @@ if ($action == 'create') {
// Ref
print '
';
- if ($origin == 'commande' && !empty($conf->commande->enabled)) {
+ if ($origin == 'commande' && isModEnabled('commande')) {
print $langs->trans("RefOrder");
}
- if ($origin == 'propal' && !empty($conf->propal->enabled)) {
+ if ($origin == 'propal' && isModEnabled("propal")) {
print $langs->trans("RefProposal");
}
print ' ';
@@ -906,7 +906,7 @@ if ($action == 'create') {
print ' ';
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$projectid = GETPOST('projectid', 'int') ?GETPOST('projectid', 'int') : 0;
if (empty($projectid) && !empty($object->fk_project)) {
$projectid = $object->fk_project;
@@ -1033,7 +1033,7 @@ if ($action == 'create') {
$i = 0;
while ($i < $numAsked) {
print 'jQuery("#qtyl'.$i.'").val(jQuery("#qtyasked'.$i.'").val() - jQuery("#qtydelivered'.$i.'").val());'."\n";
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
print 'jQuery("#qtyl'.$i.'_'.$i.'").val(jQuery("#qtyasked'.$i.'").val() - jQuery("#qtydelivered'.$i.'").val());'."\n";
}
$i++;
@@ -1218,7 +1218,7 @@ if ($action == 'create') {
print '
';
print '
';
} else {
- if (! empty($conf->global->SHIPMENT_GETS_ALL_ORDER_PRODUCTS)) {
+ if (!empty($conf->global->SHIPMENT_GETS_ALL_ORDER_PRODUCTS)) {
print '
';
print '
';
}
@@ -1402,7 +1402,7 @@ if ($action == 'create') {
print '
';
print '
';
} else {
- if (! empty($conf->global->SHIPMENT_GETS_ALL_ORDER_PRODUCTS)) {
+ if (!empty($conf->global->SHIPMENT_GETS_ALL_ORDER_PRODUCTS)) {
print '
';
}
@@ -1552,7 +1552,7 @@ if ($action == 'create') {
if ($line->product_type == Product::TYPE_PRODUCT || !empty($conf->global->STOCK_SUPPORTS_SERVICES)) {
$disabled = '';
- if (!empty($conf->productbatch->enabled) && $product->hasbatch()) {
+ if (isModEnabled('productbatch') && $product->hasbatch()) {
$disabled = 'disabled="disabled"';
}
if ($warehouse_selected_id <= 0) { // We did not force a given warehouse, so we won't have no warehouse to change qty.
@@ -1714,11 +1714,11 @@ if ($action == 'create') {
$totalVolume = $tmparray['volume'];
- if ($typeobject == 'commande' && $object->$typeobject->id && !empty($conf->commande->enabled)) {
+ if ($typeobject == 'commande' && $object->$typeobject->id && isModEnabled('commande')) {
$objectsrc = new Commande($db);
$objectsrc->fetch($object->$typeobject->id);
}
- if ($typeobject == 'propal' && $object->$typeobject->id && !empty($conf->propal->enabled)) {
+ if ($typeobject == 'propal' && $object->$typeobject->id && isModEnabled("propal")) {
$objectsrc = new Propal($db);
$objectsrc->fetch($object->$typeobject->id);
}
@@ -1732,7 +1732,7 @@ if ($action == 'create') {
// Thirdparty
$morehtmlref .= '
'.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' ';
if (0) { // Do not change on shipment
@@ -1779,7 +1779,7 @@ if ($action == 'create') {
print '
';
// Linked documents
- if ($typeobject == 'commande' && $object->$typeobject->id && !empty($conf->commande->enabled)) {
+ if ($typeobject == 'commande' && $object->$typeobject->id && isModEnabled('commande')) {
print '';
print $langs->trans("RefOrder").' ';
print '';
@@ -1787,7 +1787,7 @@ if ($action == 'create') {
print " \n";
print ' ';
}
- if ($typeobject == 'propal' && $object->$typeobject->id && !empty($conf->propal->enabled)) {
+ if ($typeobject == 'propal' && $object->$typeobject->id && isModEnabled("propal")) {
print '';
print $langs->trans("RefProposal").' ';
print '';
@@ -2048,7 +2048,7 @@ if ($action == 'create') {
if (!empty($conf->stock->enabled)) {
print $langs->trans("WarehouseSource").' - ';
}
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
print $langs->trans("Batch");
}
print ' ';
@@ -2062,7 +2062,7 @@ if ($action == 'create') {
print ''.$langs->trans("WarehouseSource").' ';
}
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
print ''.$langs->trans("Batch").' ';
}
}
@@ -2358,7 +2358,7 @@ if ($action == 'create') {
}
// Batch number managment
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
if (isset($lines[$i]->detail_batch)) {
print '';
print '';
@@ -2437,7 +2437,7 @@ if ($action == 'create') {
if ($origin && $origin_id > 0) {
$colspan++;
}
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
$colspan++;
}
if (!empty($conf->stock->enabled)) {
@@ -2515,7 +2515,7 @@ if ($action == 'create') {
// Create bill
if (isModEnabled('facture') && ($object->statut == Expedition::STATUS_VALIDATED || $object->statut == Expedition::STATUS_CLOSED)) {
if ($user->rights->facture->creer) {
- // TODO show button only if (! empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT))
+ // TODO show button only if (!empty($conf->global->WORKFLOW_BILL_ON_SHIPMENT))
// If we do that, we must also make this option official.
print dolGetButtonAction('', $langs->trans('CreateBill'), 'default', DOL_URL_ROOT.'/compta/facture/card.php?action=create&origin='.$object->element.'&originid='.$object->id.'&socid='.$object->socid, '');
}
diff --git a/htdocs/expedition/class/expedition.class.php b/htdocs/expedition/class/expedition.class.php
index 9ce876eb039..b1a767e197d 100644
--- a/htdocs/expedition/class/expedition.class.php
+++ b/htdocs/expedition/class/expedition.class.php
@@ -37,10 +37,10 @@
require_once DOL_DOCUMENT_ROOT.'/core/class/commonobject.class.php';
require_once DOL_DOCUMENT_ROOT."/core/class/commonobjectline.class.php";
require_once DOL_DOCUMENT_ROOT.'/core/class/commonincoterm.class.php';
-if (!empty($conf->propal->enabled)) {
+if (isModEnabled("propal")) {
require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
}
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
}
require_once DOL_DOCUMENT_ROOT.'/expedition/class/expeditionlinebatch.class.php';
@@ -625,7 +625,7 @@ class Expedition extends CommonObject
$this->fetch_optionals();
// Fix Get multicurrency param for transmited
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled('multicurrency')) {
if (!empty($this->multicurrency_code)) {
$this->multicurrency_code = $this->thirdparty->multicurrency_code;
}
@@ -965,7 +965,7 @@ class Expedition extends CommonObject
}
// If product need a batch number, we should not have called this function but addline_batch instead.
- if (!empty($conf->productbatch->enabled) && !empty($orderline->fk_product) && !empty($orderline->product_tobatch)) {
+ if (isModEnabled('productbatch') && !empty($orderline->fk_product) && !empty($orderline->product_tobatch)) {
$this->error = 'ADDLINE_WAS_CALLED_INSTEAD_OF_ADDLINEBATCH';
return -4;
}
@@ -1291,7 +1291,7 @@ class Expedition extends CommonObject
}
// delete batch expedition line
- if (!$error && $conf->productbatch->enabled) {
+ if (!$error && isModEnabled('productbatch')) {
$shipmentlinebatch = new ExpeditionLineBatch($this->db);
if ($shipmentlinebatch->deleteFromShipment($this->id) < 0) {
$error++; $this->errors[] = "Error ".$this->db->lasterror();
@@ -1716,7 +1716,7 @@ class Expedition extends CommonObject
}
// Detail of batch
- if (!empty($conf->productbatch->enabled) && $obj->line_id > 0 && $obj->product_tobatch > 0) {
+ if (isModEnabled('productbatch') && $obj->line_id > 0 && $obj->product_tobatch > 0) {
$newdetailbatch = $shipmentlinebatch->fetchAll($obj->line_id, $obj->fk_product);
if (is_array($newdetailbatch)) {
@@ -2901,7 +2901,7 @@ class ExpeditionLigne extends CommonObjectLine
// update lot
- if (!empty($batch) && $conf->productbatch->enabled) {
+ if (!empty($batch) && isModEnabled('productbatch')) {
dol_syslog(get_class($this)."::update expedition batch id=$expedition_batch_id, batch_id=$batch_id, batch=$batch");
if (empty($batch_id) || empty($this->fk_product)) {
diff --git a/htdocs/expedition/contact.php b/htdocs/expedition/contact.php
index 669c6f8e56d..da2fe595aec 100644
--- a/htdocs/expedition/contact.php
+++ b/htdocs/expedition/contact.php
@@ -29,7 +29,7 @@ require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/sendings.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -53,11 +53,11 @@ if ($id > 0 || !empty($ref)) {
}
// Linked documents
- if ($typeobject == 'commande' && $object->$typeobject->id && !empty($conf->commande->enabled)) {
+ if ($typeobject == 'commande' && $object->$typeobject->id && isModEnabled('commande')) {
$objectsrc = new Commande($db);
$objectsrc->fetch($object->$typeobject->id);
}
- if ($typeobject == 'propal' && $object->$typeobject->id && !empty($conf->propal->enabled)) {
+ if ($typeobject == 'propal' && $object->$typeobject->id && isModEnabled("propal")) {
$objectsrc = new Propal($db);
$objectsrc->fetch($object->$typeobject->id);
}
@@ -149,7 +149,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if (0) { // Do not change on shipment
@@ -196,7 +196,7 @@ if ($id > 0 || !empty($ref)) {
print '';
// Linked documents
- if ($typeobject == 'commande' && $object->$typeobject->id && !empty($conf->commande->enabled)) {
+ if ($typeobject == 'commande' && $object->$typeobject->id && isModEnabled('commande')) {
print '';
$objectsrc = new Commande($db);
$objectsrc->fetch($object->$typeobject->id);
@@ -206,7 +206,7 @@ if ($id > 0 || !empty($ref)) {
print " \n";
print ' ';
}
- if ($typeobject == 'propal' && $object->$typeobject->id && !empty($conf->propal->enabled)) {
+ if ($typeobject == 'propal' && $object->$typeobject->id && isModEnabled("propal")) {
print '';
$objectsrc = new Propal($db);
$objectsrc->fetch($object->$typeobject->id);
diff --git a/htdocs/expedition/document.php b/htdocs/expedition/document.php
index d0729879017..08f30446f72 100644
--- a/htdocs/expedition/document.php
+++ b/htdocs/expedition/document.php
@@ -33,7 +33,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/sendings.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/expedition/class/expedition.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -123,7 +123,7 @@ if ($id > 0 || !empty($ref)) {
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if (0) { // Do not change on shipment
diff --git a/htdocs/expedition/list.php b/htdocs/expedition/list.php
index adc80e27b64..b693800e253 100644
--- a/htdocs/expedition/list.php
+++ b/htdocs/expedition/list.php
@@ -577,7 +577,7 @@ if ($user->rights->user->user->lire) {
$moreforfilter .= '';
}
// If the user can view prospects other than his'
-if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire && ($user->rights->produit->lire || $user->rights->service->lire)) {
+if (isModEnabled('categorie') && $user->rights->categorie->lire && ($user->rights->produit->lire || $user->rights->service->lire)) {
include_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
$moreforfilter .= '';
$tmptitle = $langs->trans('IncludingProductWithTag');
@@ -588,7 +588,7 @@ if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire && ($use
$moreforfilter .= '
';
}
-if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire) {
+if (isModEnabled('categorie') && $user->rights->categorie->lire) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
$moreforfilter .= '';
$tmptitle = $langs->trans('CustomersProspectsCategoriesShort');
diff --git a/htdocs/expedition/note.php b/htdocs/expedition/note.php
index e391d5be180..f3e2c2bdb07 100644
--- a/htdocs/expedition/note.php
+++ b/htdocs/expedition/note.php
@@ -27,7 +27,7 @@
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/expedition/class/expedition.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/sendings.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -51,11 +51,11 @@ if ($id > 0 || !empty($ref)) {
}
// Linked documents
- if ($typeobject == 'commande' && $object->$typeobject->id && !empty($conf->commande->enabled)) {
+ if ($typeobject == 'commande' && $object->$typeobject->id && isModEnabled('commande')) {
$objectsrc = new Commande($db);
$objectsrc->fetch($object->$typeobject->id);
}
- if ($typeobject == 'propal' && $object->$typeobject->id && !empty($conf->propal->enabled)) {
+ if ($typeobject == 'propal' && $object->$typeobject->id && isModEnabled("propal")) {
$objectsrc = new Propal($db);
$objectsrc->fetch($object->$typeobject->id);
}
@@ -110,7 +110,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= '
'.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' ';
if (0) { // Do not change on shipment
diff --git a/htdocs/expedition/shipment.php b/htdocs/expedition/shipment.php
index bf352ebe5da..4d5b27e9c7a 100644
--- a/htdocs/expedition/shipment.php
+++ b/htdocs/expedition/shipment.php
@@ -4,7 +4,7 @@
* Copyright (C) 2005-2012 Regis Houssin
* Copyright (C) 2012-2015 Juanjo Menent
* Copyright (C) 2018-2021 Frédéric France
- * Copyright (C) 2018 Philippe Grand
+ * Copyright (C) 2018-2022 Philippe Grand
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -33,17 +33,17 @@ require_once DOL_DOCUMENT_ROOT.'/product/class/html.formproduct.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/order.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/sendings.lib.php';
require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
if (!empty($conf->stock->enabled)) {
require_once DOL_DOCUMENT_ROOT.'/product/stock/class/entrepot.class.php';
}
-if (!empty($conf->propal->enabled)) {
+if (isModEnabled("propal")) {
require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
}
-if (!empty($conf->product->enabled) || !empty($conf->service->enabled)) {
+if (isModEnabled("product") || isModEnabled("service")) {
require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
}
@@ -227,7 +227,7 @@ if (empty($reshook)) {
$form = new Form($db);
$formfile = new FormFile($db);
$formproduct = new FormProduct($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -287,7 +287,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$soc->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->commande->creer) {
@@ -558,7 +558,7 @@ if ($id > 0 || !empty($ref)) {
print '';
- if (!empty($conf->multicurrency->enabled) && ($object->multicurrency_code != $conf->currency)) {
+ if (isModEnabled("multicurrency") && ($object->multicurrency_code != $conf->currency)) {
// Multicurrency Amount HT
print ''.$form->editfieldkey('MulticurrencyAmountHT', 'multicurrency_total_ht', '', $object, 0).' ';
print ''.price($object->multicurrency_total_ht, '', $langs, 0, - 1, - 1, (!empty($object->multicurrency_code) ? $object->multicurrency_code : $conf->currency)).' ';
diff --git a/htdocs/expensereport/card.php b/htdocs/expensereport/card.php
index 1da36a72e32..680f1861fe3 100644
--- a/htdocs/expensereport/card.php
+++ b/htdocs/expensereport/card.php
@@ -68,7 +68,7 @@ $socid = GETPOST('socid', 'int') ?GETPOST('socid', 'int') : GETPOST('socid_id',
$childids = $user->getAllChildIds(1);
-if (! empty($conf->global->EXPENSEREPORT_PREFILL_DATES_WITH_CURRENT_MONTH)) {
+if (!empty($conf->global->EXPENSEREPORT_PREFILL_DATES_WITH_CURRENT_MONTH)) {
if (empty($date_start)) {
$date_start = dol_mktime(0, 0, 0, (int) dol_print_date(dol_now(), '%m'), 1, (int) dol_print_date(dol_now(), '%Y'));
}
@@ -83,7 +83,7 @@ if (! empty($conf->global->EXPENSEREPORT_PREFILL_DATES_WITH_CURRENT_MONTH)) {
$rootfordata = DOL_DATA_ROOT;
$rootforuser = DOL_DATA_ROOT;
// If multicompany module is enabled, we redefine the root of data
-if (!empty($conf->multicompany->enabled) && !empty($conf->entity) && $conf->entity > 1) {
+if (isModEnabled('multicompany') && !empty($conf->entity) && $conf->entity > 1) {
$rootfordata .= '/'.$conf->entity;
}
$conf->expensereport->dir_output = $rootfordata.'/expensereport';
@@ -117,7 +117,7 @@ $permissiontoadd = $user->rights->expensereport->creer; // Used by the include o
$upload_dir = $conf->expensereport->dir_output.'/'.dol_sanitizeFileName($object->ref);
-$projectRequired = $conf->project->enabled && ! empty($conf->global->EXPENSEREPORT_PROJECT_IS_REQUIRED);
+$projectRequired = isModEnabled('project') && !empty($conf->global->EXPENSEREPORT_PROJECT_IS_REQUIRED);
$fileRequired = !empty($conf->global->EXPENSEREPORT_FILE_IS_REQUIRED);
if ($object->id > 0) {
@@ -383,10 +383,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -493,10 +493,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -603,10 +603,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -717,10 +717,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -831,10 +831,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -943,10 +943,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -982,10 +982,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -1011,10 +1011,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -1229,10 +1229,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -1321,10 +1321,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -1624,7 +1624,7 @@ if ($action == 'create') {
print '';
} else {
- $taxlessUnitPriceDisabled = ! empty($conf->global->EXPENSEREPORT_FORCE_LINE_AMOUNTS_INCLUDING_TAXES_ONLY) ? ' disabled' : '';
+ $taxlessUnitPriceDisabled = !empty($conf->global->EXPENSEREPORT_FORCE_LINE_AMOUNTS_INCLUDING_TAXES_ONLY) ? ' disabled' : '';
print dol_get_fiche_head($head, 'card', $langs->trans("ExpenseReport"), -1, 'trip');
@@ -1697,7 +1697,7 @@ if ($action == 'create') {
// Thirdparty
$morehtmlref.=' '.$langs->trans('ThirdParty') . ' : ' . $soc->getNomUrl(1);
// Project
- if (! empty($conf->project->enabled))
+ if (isModEnabled('project'))
{
$langs->load("projects");
$morehtmlref.=' '.$langs->trans('Project') . ' ';
@@ -1717,7 +1717,7 @@ if ($action == 'create') {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref.='';
@@ -1930,7 +1930,7 @@ if ($action == 'create') {
// List of payments already done
$nbcols = 3;
$nbrows = 0;
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$nbrows++;
$nbcols++;
}
@@ -1941,7 +1941,7 @@ if ($action == 'create') {
print ' '.$langs->trans('Payments').' ';
print ''.$langs->trans('Date').' ';
print ''.$langs->trans('Type').' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ''.$langs->trans('BankAccount').' ';
}
print ''.$langs->trans('Amount').' ';
@@ -1983,7 +1983,7 @@ if ($action == 'create') {
$labeltype = $langs->trans("PaymentType".$objp->payment_code) != ("PaymentType".$objp->payment_code) ? $langs->trans("PaymentType".$objp->payment_code) : $objp->payment_type;
print "".$labeltype.' '.$objp->num_payment." \n";
// Bank account
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$bankaccountstatic->id = $objp->baid;
$bankaccountstatic->ref = $objp->baref;
$bankaccountstatic->label = $objp->baref;
@@ -2064,7 +2064,7 @@ if ($action == 'create') {
print ''.$langs->trans('LineNb').' ';
//print ''.$langs->trans('Piece').' ';
print ''.$langs->trans('Date').' ';
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
print ''.$langs->trans('Project').' ';
}
print ''.$langs->trans('Type').' ';
@@ -2109,7 +2109,7 @@ if ($action == 'create') {
print ''.dol_print_date($db->jdate($line->date), 'day').' ';
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
print '';
if ($line->fk_project > 0) {
$projecttmp->id = $line->fk_project;
@@ -2270,7 +2270,7 @@ if ($action == 'create') {
if ($action == 'editline' && $line->rowid == GETPOST('rowid', 'int')) {
// Add line with link to add new file or attach line to an existing file
$colspan = 11;
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$colspan++;
}
if (!empty($conf->global->MAIN_USE_EXPENSE_IK)) {
@@ -2345,7 +2345,7 @@ if ($action == 'create') {
print ' ';
// Select project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
print '';
$formproject->select_projects(-1, $line->fk_project, 'fk_project', 0, 0, $projectRequired ? 0 : 1, 1, 0, 0, 0, '', 0, 0, 'maxwidth300');
print ' ';
@@ -2418,7 +2418,7 @@ if ($action == 'create') {
if (!empty($conf->global->MAIN_USE_EXPENSE_IK)) {
$colspan++;
}
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$colspan++;
}
if ($action != 'editline') {
@@ -2495,7 +2495,7 @@ if ($action == 'create') {
print '';
print ' ';
print ''.$langs->trans('Date').' ';
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
print ''.$form->textwithpicto($langs->trans('Project'), $langs->trans("ClosedProjectsAreHidden")).' ';
}
print ''.$langs->trans('Type').' ';
@@ -2524,7 +2524,7 @@ if ($action == 'create') {
print '';
// Select project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
print '';
$formproject->select_projects(-1, $fk_project, 'fk_project', 0, 0, $projectRequired ? 0 : 1, -1, 0, 0, 0, '', 0, 0, 'maxwidth300');
print ' ';
@@ -2767,7 +2767,7 @@ if ($action != 'create' && $action != 'edit' && $action != 'editline') {
}
// If bank module is used
- if ($user->rights->expensereport->to_paid && !empty($conf->banque->enabled) && $object->status == ExpenseReport::STATUS_APPROVED) {
+ if ($user->rights->expensereport->to_paid && isModEnabled("banque") && $object->status == ExpenseReport::STATUS_APPROVED) {
// Pay
if ($remaintopay == 0) {
print ''.$langs->trans('DoPayment').'
';
diff --git a/htdocs/expensereport/class/paymentexpensereport.class.php b/htdocs/expensereport/class/paymentexpensereport.class.php
index f7ff6cf7e9c..e871cba86b3 100644
--- a/htdocs/expensereport/class/paymentexpensereport.class.php
+++ b/htdocs/expensereport/class/paymentexpensereport.class.php
@@ -516,7 +516,7 @@ class PaymentExpenseReport extends CommonObject
$error = 0;
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
include_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
$acc = new Account($this->db);
diff --git a/htdocs/expensereport/payment/card.php b/htdocs/expensereport/payment/card.php
index 847c059a9c6..c24689a9d69 100644
--- a/htdocs/expensereport/payment/card.php
+++ b/htdocs/expensereport/payment/card.php
@@ -26,7 +26,7 @@ require_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php';
require_once DOL_DOCUMENT_ROOT.'/expensereport/class/paymentexpensereport.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/modules/expensereport/modules_expensereport.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/expensereport.lib.php';
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
}
@@ -120,7 +120,7 @@ print ' '.$langs->trans('Note').' '.nl2
$disable_delete = 0;
// Bank account
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
if ($object->bank_account) {
$bankline = new AccountLine($db);
$bankline->fetch($object->bank_line);
diff --git a/htdocs/expensereport/payment/list.php b/htdocs/expensereport/payment/list.php
index 3f3e017612d..5a08c30f636 100644
--- a/htdocs/expensereport/payment/list.php
+++ b/htdocs/expensereport/payment/list.php
@@ -103,7 +103,7 @@ $arrayfields = array(
'u.login' =>array('label'=>"User", 'checked'=>1, 'position'=>30),
'c.libelle' =>array('label'=>"Type", 'checked'=>1, 'position'=>40),
'pndf.num_payment' =>array('label'=>"Numero", 'checked'=>1, 'position'=>50, 'tooltip'=>"ChequeOrTransferNumber"),
- 'ba.label' =>array('label'=>"Account", 'checked'=>1, 'position'=>60, 'enable'=>(!empty($conf->banque->enabled))),
+ 'ba.label' =>array('label'=>"Account", 'checked'=>1, 'position'=>60, 'enable'=>(isModEnabled("banque"))),
'pndf.amount' =>array('label'=>"Amount", 'checked'=>1, 'position'=>70),
);
$arrayfields = dol_sort_array($arrayfields, 'position');
diff --git a/htdocs/expensereport/payment/payment.php b/htdocs/expensereport/payment/payment.php
index 3676f663ce8..74e0c63151b 100644
--- a/htdocs/expensereport/payment/payment.php
+++ b/htdocs/expensereport/payment/payment.php
@@ -76,7 +76,7 @@ if ($action == 'add_payment') {
$error++;
}
- if (!empty($conf->banque->enabled) && !($accountid > 0)) {
+ if (isModEnabled("banque") && !($accountid > 0)) {
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("AccountToDebit")), null, 'errors');
$error++;
}
@@ -245,7 +245,7 @@ if ($action == 'create' || empty($action)) {
print " \n";
print ' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print '';
print ''.$langs->trans('AccountToDebit').' ';
print '';
diff --git a/htdocs/exports/export.php b/htdocs/exports/export.php
index f06e83f4c40..4591ccd0bf3 100644
--- a/htdocs/exports/export.php
+++ b/htdocs/exports/export.php
@@ -451,7 +451,7 @@ if ($step == 1 || !$datatoexport) {
print $label;
print ' ';
if ($objexport->array_export_perms[$key]) {
- print ''.img_picto($langs->trans("NewExport"), 'next', 'class="fa-15x"').' ';
+ print ''.img_picto($langs->trans("NewExport"), 'next', 'class="fa-15"').' ';
} else {
print ''.$langs->trans("NotEnoughPermissions").' ';
}
diff --git a/htdocs/fichinter/card-rec.php b/htdocs/fichinter/card-rec.php
index 3f644b074bd..04e9c293cc1 100644
--- a/htdocs/fichinter/card-rec.php
+++ b/htdocs/fichinter/card-rec.php
@@ -37,11 +37,11 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/fichinter.lib.php';
require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
-if (!empty($conf->contrat->enabled)) {
+if (isModEnabled('contrat')) {
require_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcontract.class.php';
}
@@ -241,10 +241,10 @@ llxHeader('', $langs->trans("RepeatableIntervention"), $help_url);
$form = new Form($db);
$companystatic = new Societe($db);
-if (!empty($conf->contrat->enabled)) {
+if (isModEnabled('contrat')) {
$contratstatic = new Contrat($db);
}
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$projectstatic = new Project($db);
}
@@ -272,10 +272,10 @@ if ($action == 'create') {
print dol_get_fiche_head();
$rowspan = 4;
- if (!empty($conf->project->enabled) && $object->fk_project > 0) {
+ if (isModEnabled('project') && $object->fk_project > 0) {
$rowspan++;
}
- if (!empty($conf->contrat->enabled) && $object->fk_contrat > 0) {
+ if (isModEnabled('contrat') && $object->fk_contrat > 0) {
$rowspan++;
}
@@ -314,7 +314,7 @@ if ($action == 'create') {
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$formproject = new FormProjets($db);
print " ".$langs->trans("Project")." ";
$projectid = GETPOST('projectid') ?GETPOST('projectid') : $object->fk_project;
@@ -328,7 +328,7 @@ if ($action == 'create') {
}
// Contrat
- if (!empty($conf->contrat->enabled)) {
+ if (isModEnabled('contrat')) {
$formcontract = new FormContract($db);
print " ".$langs->trans("Contract")." ";
$contractid = GETPOST('contractid') ?GETPOST('contractid') : $object->fk_contract;
@@ -484,7 +484,7 @@ if ($action == 'create') {
$morehtmlref .= $langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$formproject = new FormProjets($db);
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
@@ -539,7 +539,7 @@ if ($action == 'create') {
print ' '.$langs->trans("Description").' '.nl2br($object->description)." ";
// Contract
- if (!empty($conf->contrat->enabled)) {
+ if (isModEnabled('contrat')) {
$langs->load('contracts');
print '';
print '';
@@ -800,10 +800,10 @@ if ($action == 'create') {
print ' ';
print_liste_field_titre("Ref", $_SERVER['PHP_SELF'], "f.titre", "", "", 'width="200px"', $sortfield, $sortorder, 'left ');
print_liste_field_titre("Company", $_SERVER['PHP_SELF'], "s.nom", "", "", 'width="200px"', $sortfield, $sortorder, 'left ');
- if (!empty($conf->contrat->enabled)) {
+ if (isModEnabled('contrat')) {
print_liste_field_titre("Contract", $_SERVER['PHP_SELF'], "f.fk_contrat", "", "", 'width="100px"', $sortfield, $sortorder, 'left ');
}
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
print_liste_field_titre("Project", $_SERVER['PHP_SELF'], "f.fk_project", "", "", 'width="100px"', $sortfield, $sortorder, 'left ');
}
print_liste_field_titre("Duration", $_SERVER['PHP_SELF'], 'f.duree', '', '', 'width="50px"', $sortfield, $sortorder, 'right ');
@@ -834,7 +834,7 @@ if ($action == 'create') {
print ''.$langs->trans("None").' ';
}
- if (!empty($conf->contrat->enabled)) {
+ if (isModEnabled('contrat')) {
print '';
if ($objp->fk_contrat > 0) {
$contratstatic->fetch($objp->fk_contrat);
@@ -842,7 +842,7 @@ if ($action == 'create') {
}
print ' ';
}
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
print '';
if ($objp->fk_project > 0) {
$projectstatic->fetch($objp->fk_project);
diff --git a/htdocs/fichinter/card.php b/htdocs/fichinter/card.php
index d03cb11a7e0..7cde90e3d7e 100644
--- a/htdocs/fichinter/card.php
+++ b/htdocs/fichinter/card.php
@@ -7,7 +7,7 @@
* Copyright (C) 2014-2018 Ferran Marcet
* Copyright (C) 2014-2022 Charlene Benke
* Copyright (C) 2015-2016 Abbes Bahfir
- * Copyright (C) 2018 Philippe Grand
+ * Copyright (C) 2018-2022 Philippe Grand
* Copyright (C) 2020 Frédéric France
*
* This program is free software; you can redistribute it and/or modify
@@ -36,7 +36,7 @@ require_once DOL_DOCUMENT_ROOT.'/fichinter/class/fichinter.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/modules/fichinter/modules_fichinter.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/fichinter.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -173,10 +173,10 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -198,10 +198,10 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -516,10 +516,10 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -612,10 +612,10 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -645,10 +645,10 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -665,10 +665,10 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -687,10 +687,10 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -784,10 +784,10 @@ if (empty($reshook)) {
$form = new Form($db);
$formfile = new FormFile($db);
-if (!empty($conf->contrat->enabled)) {
+if (isModEnabled('contrat')) {
$formcontract = new FormContract($db);
}
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -908,7 +908,7 @@ if ($action == 'create') {
print ' ';
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$formproject = new FormProjets($db);
$langs->load("project");
@@ -998,7 +998,7 @@ if ($action == 'create') {
print '' . $langs->trans('AmountTTC') . ' ' . price($objectsrc->total_ttc) . " ";
- if (!empty($conf->multicurrency->enabled))
+ if (isModEnabled("multicurrency"))
{
print '' . $langs->trans('MulticurrencyAmountHT') . ' ' . price($objectsrc->multicurrency_total_ht) . ' ';
print '' . $langs->trans('MulticurrencyAmountVAT') . ' ' . price($objectsrc->multicurrency_total_tva) . " ";
@@ -1159,7 +1159,7 @@ if ($action == 'create') {
// Thirdparty
$morehtmlref .= ''.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1, 'customer');
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->ficheinter->creer) {
@@ -1233,7 +1233,7 @@ if ($action == 'create') {
print '';
// Contract
- if (!empty($conf->contrat->enabled)) {
+ if (isModEnabled('contrat')) {
$langs->load('contracts');
print '';
print '';
@@ -1645,7 +1645,7 @@ if ($action == 'create') {
}
// Proposal
- if ($conf->service->enabled && !empty($conf->propal->enabled) && $object->statut > Fichinter::STATUS_DRAFT) {
+ if ($conf->service->enabled && isModEnabled("propal") && $object->statut > Fichinter::STATUS_DRAFT) {
$langs->load("propal");
if ($object->statut < Fichinter::STATUS_BILLED) {
if ($user->rights->propal->creer) {
diff --git a/htdocs/fichinter/class/fichinter.class.php b/htdocs/fichinter/class/fichinter.class.php
index 61c127cab9b..04bd092cdfa 100644
--- a/htdocs/fichinter/class/fichinter.class.php
+++ b/htdocs/fichinter/class/fichinter.class.php
@@ -36,36 +36,36 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/commonobjectline.class.php';
*/
class Fichinter extends CommonObject
{
-
public $fields = array(
- 'rowid' =>array('type'=>'integer', 'label'=>'TechnicalID', 'enabled'=>1, 'visible'=>-1, 'notnull'=>1, 'position'=>10),
- 'fk_soc' =>array('type'=>'integer:Societe:societe/class/societe.class.php', 'label'=>'ThirdParty', 'enabled'=>'$conf->societe->enabled', 'visible'=>-1, 'notnull'=>1, 'position'=>15),
- 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Fk projet', 'enabled'=>'$conf->project->enabled', 'visible'=>-1, 'position'=>20),
- 'fk_contrat' =>array('type'=>'integer', 'label'=>'Fk contrat', 'enabled'=>'$conf->contrat->enabled', 'visible'=>-1, 'position'=>25),
- 'ref' =>array('type'=>'varchar(30)', 'label'=>'Ref', 'enabled'=>1, 'visible'=>-1, 'notnull'=>1, 'showoncombobox'=>1, 'position'=>30),
- 'ref_ext' =>array('type'=>'varchar(255)', 'label'=>'Ref ext', 'enabled'=>1, 'visible'=>0, 'position'=>35),
- 'ref_client' =>array('type'=>'varchar(255)', 'label'=>'RefCustomer', 'enabled'=>1, 'visible'=>-1, 'position'=>36),
- 'entity' =>array('type'=>'integer', 'label'=>'Entity', 'default'=>1, 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>40, 'index'=>1),
- 'tms' =>array('type'=>'timestamp', 'label'=>'DateModification', 'enabled'=>1, 'visible'=>-1, 'notnull'=>1, 'position'=>45),
- 'datec' =>array('type'=>'datetime', 'label'=>'DateCreation', 'enabled'=>1, 'visible'=>-1, 'position'=>50),
- 'date_valid' =>array('type'=>'datetime', 'label'=>'DateValidation', 'enabled'=>1, 'visible'=>-1, 'position'=>55),
- 'datei' =>array('type'=>'date', 'label'=>'Datei', 'enabled'=>1, 'visible'=>-1, 'position'=>60),
- 'fk_user_author' =>array('type'=>'integer:User:user/class/user.class.php', 'label'=>'Fk user author', 'enabled'=>1, 'visible'=>-1, 'position'=>65),
- 'fk_user_modif' =>array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserModif', 'enabled'=>1, 'visible'=>-2, 'notnull'=>-1, 'position'=>70),
- 'fk_user_valid' =>array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserValidation', 'enabled'=>1, 'visible'=>-1, 'position'=>75),
- 'fk_statut' =>array('type'=>'smallint(6)', 'label'=>'Fk statut', 'enabled'=>1, 'visible'=>-1, 'position'=>500),
- 'dateo' =>array('type'=>'date', 'label'=>'Dateo', 'enabled'=>1, 'visible'=>-1, 'position'=>85),
- 'datee' =>array('type'=>'date', 'label'=>'Datee', 'enabled'=>1, 'visible'=>-1, 'position'=>90),
- 'datet' =>array('type'=>'date', 'label'=>'Datet', 'enabled'=>1, 'visible'=>-1, 'position'=>95),
- 'duree' =>array('type'=>'double', 'label'=>'Duree', 'enabled'=>1, 'visible'=>-1, 'position'=>100),
- 'description' =>array('type'=>'text', 'label'=>'Description', 'enabled'=>1, 'visible'=>-1, 'position'=>105, 'showoncombobox'=>2),
- 'note_private' =>array('type'=>'text', 'label'=>'NotePrivate', 'enabled'=>1, 'visible'=>0, 'position'=>110),
- 'note_public' =>array('type'=>'text', 'label'=>'NotePublic', 'enabled'=>1, 'visible'=>0, 'position'=>115),
- 'model_pdf' =>array('type'=>'varchar(255)', 'label'=>'Model pdf', 'enabled'=>1, 'visible'=>0, 'position'=>120),
- 'last_main_doc' =>array('type'=>'varchar(255)', 'label'=>'Last main doc', 'enabled'=>1, 'visible'=>-1, 'position'=>125),
- 'import_key' =>array('type'=>'varchar(14)', 'label'=>'ImportId', 'enabled'=>1, 'visible'=>-2, 'position'=>130),
- 'extraparams' =>array('type'=>'varchar(255)', 'label'=>'Extraparams', 'enabled'=>1, 'visible'=>-1, 'position'=>135),
+ 'rowid' =>array('type'=>'integer', 'label'=>'TechnicalID', 'enabled'=>1, 'visible'=>-1, 'notnull'=>1, 'position'=>10),
+ 'fk_soc' =>array('type'=>'integer:Societe:societe/class/societe.class.php', 'label'=>'ThirdParty', 'enabled'=>'$conf->societe->enabled', 'visible'=>-1, 'notnull'=>1, 'position'=>15),
+ 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Fk projet', 'enabled'=>'isModEnabled("project")', 'visible'=>-1, 'position'=>20),
+ 'fk_contrat' =>array('type'=>'integer', 'label'=>'Fk contrat', 'enabled'=>'$conf->contrat->enabled', 'visible'=>-1, 'position'=>25),
+ 'ref' =>array('type'=>'varchar(30)', 'label'=>'Ref', 'enabled'=>1, 'visible'=>-1, 'notnull'=>1, 'showoncombobox'=>1, 'position'=>30),
+ 'ref_ext' =>array('type'=>'varchar(255)', 'label'=>'Ref ext', 'enabled'=>1, 'visible'=>0, 'position'=>35),
+ 'ref_client' =>array('type'=>'varchar(255)', 'label'=>'RefCustomer', 'enabled'=>1, 'visible'=>-1, 'position'=>36),
+ 'entity' =>array('type'=>'integer', 'label'=>'Entity', 'default'=>1, 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>40, 'index'=>1),
+ 'tms' =>array('type'=>'timestamp', 'label'=>'DateModification', 'enabled'=>1, 'visible'=>-1, 'notnull'=>1, 'position'=>45),
+ 'datec' =>array('type'=>'datetime', 'label'=>'DateCreation', 'enabled'=>1, 'visible'=>-1, 'position'=>50),
+ 'date_valid' =>array('type'=>'datetime', 'label'=>'DateValidation', 'enabled'=>1, 'visible'=>-1, 'position'=>55),
+ 'datei' =>array('type'=>'date', 'label'=>'Datei', 'enabled'=>1, 'visible'=>-1, 'position'=>60),
+ 'fk_user_author' =>array('type'=>'integer:User:user/class/user.class.php', 'label'=>'Fk user author', 'enabled'=>1, 'visible'=>-1, 'position'=>65),
+ 'fk_user_modif' =>array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserModif', 'enabled'=>1, 'visible'=>-2, 'notnull'=>-1, 'position'=>70),
+ 'fk_user_valid' =>array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserValidation', 'enabled'=>1, 'visible'=>-1, 'position'=>75),
+ 'fk_statut' =>array('type'=>'smallint(6)', 'label'=>'Fk statut', 'enabled'=>1, 'visible'=>-1, 'position'=>500),
+ 'dateo' =>array('type'=>'date', 'label'=>'Dateo', 'enabled'=>1, 'visible'=>-1, 'position'=>85),
+ 'datee' =>array('type'=>'date', 'label'=>'Datee', 'enabled'=>1, 'visible'=>-1, 'position'=>90),
+ 'datet' =>array('type'=>'date', 'label'=>'Datet', 'enabled'=>1, 'visible'=>-1, 'position'=>95),
+ 'duree' =>array('type'=>'double', 'label'=>'Duree', 'enabled'=>1, 'visible'=>-1, 'position'=>100),
+ 'description' =>array('type'=>'text', 'label'=>'Description', 'enabled'=>1, 'visible'=>-1, 'position'=>105, 'showoncombobox'=>2),
+ 'note_private' =>array('type'=>'text', 'label'=>'NotePrivate', 'enabled'=>1, 'visible'=>0, 'position'=>110),
+ 'note_public' =>array('type'=>'text', 'label'=>'NotePublic', 'enabled'=>1, 'visible'=>0, 'position'=>115),
+ 'model_pdf' =>array('type'=>'varchar(255)', 'label'=>'Model pdf', 'enabled'=>1, 'visible'=>0, 'position'=>120),
+ 'last_main_doc' =>array('type'=>'varchar(255)', 'label'=>'Last main doc', 'enabled'=>1, 'visible'=>-1, 'position'=>125),
+ 'import_key' =>array('type'=>'varchar(14)', 'label'=>'ImportId', 'enabled'=>1, 'visible'=>-2, 'position'=>130),
+ 'extraparams' =>array('type'=>'varchar(255)', 'label'=>'Extraparams', 'enabled'=>1, 'visible'=>-1, 'position'=>135),
);
+
/**
* @var string ID to identify managed object
*/
@@ -1187,8 +1187,8 @@ class Fichinter extends CommonObject
if ($objsoc->fetch($socid) > 0) {
$this->socid = $objsoc->id;
- //$this->cond_reglement_id = (! empty($objsoc->cond_reglement_id) ? $objsoc->cond_reglement_id : 0);
- //$this->mode_reglement_id = (! empty($objsoc->mode_reglement_id) ? $objsoc->mode_reglement_id : 0);
+ //$this->cond_reglement_id = (!empty($objsoc->cond_reglement_id) ? $objsoc->cond_reglement_id : 0);
+ //$this->mode_reglement_id = (!empty($objsoc->mode_reglement_id) ? $objsoc->mode_reglement_id : 0);
$this->fk_project = '';
$this->fk_delivery_address = '';
}
@@ -1267,7 +1267,8 @@ class Fichinter extends CommonObject
$line->fk_fichinter = $fichinterid;
$line->desc = $desc;
- $line->datei = $date_intervention;
+ $line->date = $date_intervention;
+ $line->datei = $date_intervention; // For backward compatibility
$line->duration = $duration;
if (is_array($array_options) && count($array_options) > 0) {
@@ -1316,7 +1317,8 @@ class Fichinter extends CommonObject
while ($xnbp < $nbp) {
$line = new FichinterLigne($this->db);
$line->desc = $langs->trans("Description")." ".$xnbp;
- $line->datei = ($now - 3600 * (1 + $xnbp));
+ $line->date = ($now - 3600 * (1 + $xnbp));
+ $line->datei = ($now - 3600 * (1 + $xnbp)); // For backward compatibility
$line->duration = 600;
$line->fk_fichinter = 0;
$this->lines[$xnbp] = $line;
@@ -1359,7 +1361,7 @@ class Fichinter extends CommonObject
//For invoicing we calculing hours
$line->qty = round($objp->duree / 3600, 2);
$line->date = $this->db->jdate($objp->date);
- $line->datei = $this->db->jdate($objp->date);
+ $line->datei = $this->db->jdate($objp->date); // For backward compatibility
$line->rang = $objp->rang;
$line->product_type = 1;
$line->fetch_optionals();
@@ -1486,6 +1488,8 @@ class FichinterLigne extends CommonObjectLine
public $duration; // Duration of intervention
public $rang = 0;
+ public $tva_tx;
+ public $subprice;
/**
* @var string ID to identify managed object
@@ -1522,8 +1526,7 @@ class FichinterLigne extends CommonObjectLine
*/
public function fetch($rowid)
{
- $sql = 'SELECT ft.rowid, ft.fk_fichinter, ft.description, ft.duree, ft.rang,';
- $sql .= ' ft.date as datei';
+ $sql = 'SELECT ft.rowid, ft.fk_fichinter, ft.description, ft.duree, ft.rang, ft.date';
$sql .= ' FROM '.MAIN_DB_PREFIX.'fichinterdet as ft';
$sql .= ' WHERE ft.rowid = '.((int) $rowid);
@@ -1534,7 +1537,8 @@ class FichinterLigne extends CommonObjectLine
$this->rowid = $objp->rowid;
$this->id = $objp->rowid;
$this->fk_fichinter = $objp->fk_fichinter;
- $this->datei = $this->db->jdate($objp->datei);
+ $this->date = $this->db->jdate($objp->date);
+ $this->datei = $this->db->jdate($objp->date); // For backward compatibility
$this->desc = $objp->description;
$this->duration = $objp->duree;
$this->rang = $objp->rang;
@@ -1562,6 +1566,10 @@ class FichinterLigne extends CommonObjectLine
dol_syslog("FichinterLigne::insert rang=".$this->rang);
+ if (empty($this->date) && !empty($this->datei)) { // For backward compatibility
+ $this->date = $this->datei;
+ }
+
$this->db->begin();
$rangToUse = $this->rang;
@@ -1585,7 +1593,7 @@ class FichinterLigne extends CommonObjectLine
$sql .= ' (fk_fichinter, description, date, duree, rang)';
$sql .= " VALUES (".((int) $this->fk_fichinter).",";
$sql .= " '".$this->db->escape($this->desc)."',";
- $sql .= " '".$this->db->idate($this->datei)."',";
+ $sql .= " '".$this->db->idate($this->date)."',";
$sql .= " ".((int) $this->duration).",";
$sql .= ' '.((int) $rangToUse);
$sql .= ')';
@@ -1647,14 +1655,18 @@ class FichinterLigne extends CommonObjectLine
$error = 0;
+ if (empty($this->date) && !empty($this->datei)) { // For backward compatibility
+ $this->date = $this->datei;
+ }
+
$this->db->begin();
// Mise a jour ligne en base
$sql = "UPDATE ".MAIN_DB_PREFIX."fichinterdet SET";
- $sql .= " description='".$this->db->escape($this->desc)."'";
- $sql .= ",date='".$this->db->idate($this->datei)."'";
- $sql .= ",duree=".$this->duration;
- $sql .= ",rang='".$this->db->escape($this->rang)."'";
+ $sql .= " description = '".$this->db->escape($this->desc)."',";
+ $sql .= " date = '".$this->db->idate($this->date)."',";
+ $sql .= " duree = ".((int) $this->duration).",";
+ $sql .= " rang = ".((int) $this->rang);
$sql .= " WHERE rowid = ".((int) $this->id);
dol_syslog("FichinterLigne::update", LOG_DEBUG);
diff --git a/htdocs/fichinter/class/fichinterrec.class.php b/htdocs/fichinter/class/fichinterrec.class.php
index b128bba60f8..bcf89704e55 100644
--- a/htdocs/fichinter/class/fichinterrec.class.php
+++ b/htdocs/fichinter/class/fichinterrec.class.php
@@ -64,7 +64,6 @@ class FichinterRec extends Fichinter
public $number;
public $date;
public $amount;
- public $remise;
public $tva;
public $total;
@@ -222,7 +221,7 @@ class FichinterRec extends Fichinter
$result_insert = $this->addline(
$fichintsrc->lines[$i]->desc,
$fichintsrc->lines[$i]->duration,
- $fichintsrc->lines[$i]->datei,
+ $fichintsrc->lines[$i]->date,
$fichintsrc->lines[$i]->rang,
$fichintsrc->lines[$i]->subprice,
$fichintsrc->lines[$i]->qty,
@@ -350,8 +349,8 @@ class FichinterRec extends Fichinter
// phpcs:enable
$this->lines = array();
- $sql = 'SELECT l.rowid, l.fk_product, l.product_type as product_type, l.label as custom_label, l.description, ';
- $sql .= ' l.price, l.qty, l.tva_tx, l.remise_percent, l.subprice, l.duree, ';
+ $sql = 'SELECT l.rowid, l.fk_product, l.product_type as product_type, l.label as custom_label, l.description,';
+ $sql .= ' l.price, l.qty, l.tva_tx, l.remise_percent, l.subprice, l.duree, l.date,';
$sql .= ' l.total_ht, l.total_tva, l.total_ttc,';
$sql .= ' l.rang, l.special_code,';
$sql .= ' l.fk_unit, p.ref as product_ref, p.fk_product_type as fk_product_type,';
@@ -381,19 +380,16 @@ class FichinterRec extends Fichinter
$line->qty = $objp->qty;
$line->duree = $objp->duree;
$line->duration = $objp->duree;
- $line->datei = $objp->date;
+ $line->date = $objp->date;
$line->subprice = $objp->subprice;
$line->tva_tx = $objp->tva_tx;
$line->remise_percent = $objp->remise_percent;
$line->fk_remise_except = $objp->fk_remise_except;
$line->fk_product = $objp->fk_product;
- $line->date_start = $objp->date_start;
- $line->date_end = $objp->date_end;
$line->info_bits = $objp->info_bits;
$line->total_ht = $objp->total_ht;
$line->total_tva = $objp->total_tva;
$line->total_ttc = $objp->total_ttc;
- $line->code_ventilation = $objp->fk_code_ventilation;
$line->rang = $objp->rang;
$line->special_code = $objp->special_code;
$line->fk_unit = $objp->fk_unit;
@@ -460,7 +456,7 @@ class FichinterRec extends Fichinter
*
* @param string $desc Description de la ligne
* @param integer $duration Durée
- * @param string $datei Date
+ * @param string $date Date
* @param int $rang Position of line
* @param double $pu_ht Unit price without tax (> 0 even for credit note)
* @param double $qty Quantity
@@ -477,7 +473,7 @@ class FichinterRec extends Fichinter
* @param string $fk_unit Unit
* @return int <0 if KO, Id of line if OK
*/
- public function addline($desc, $duration, $datei, $rang = -1, $pu_ht = 0, $qty = 0, $txtva = 0, $fk_product = 0, $remise_percent = 0, $price_base_type = 'HT', $info_bits = 0, $fk_remise_except = '', $pu_ttc = 0, $type = 0, $special_code = 0, $label = '', $fk_unit = null)
+ public function addline($desc, $duration, $date, $rang = -1, $pu_ht = 0, $qty = 0, $txtva = 0, $fk_product = 0, $remise_percent = 0, $price_base_type = 'HT', $info_bits = 0, $fk_remise_except = '', $pu_ttc = 0, $type = 0, $special_code = 0, $label = '', $fk_unit = null)
{
global $mysoc;
@@ -520,6 +516,8 @@ class FichinterRec extends Fichinter
$total_tva = $tabprice[1];
$total_ttc = $tabprice[2];
+ $pu_ht = $tabprice[3];
+
$product_type = $type;
if ($fk_product) {
$product = new Product($this->db);
@@ -539,8 +537,7 @@ class FichinterRec extends Fichinter
$sql .= ", fk_product";
$sql .= ", product_type";
$sql .= ", remise_percent";
- //$sql.= ", subprice";
- $sql .= ", remise";
+ $sql .= ", subprice";
$sql .= ", total_ht";
$sql .= ", total_tva";
$sql .= ", total_ttc";
@@ -551,7 +548,7 @@ class FichinterRec extends Fichinter
$sql .= (int) $this->id;
$sql .= ", ".(!empty($label) ? "'".$this->db->escape($label)."'" : "null");
$sql .= ", ".(!empty($desc) ? "'".$this->db->escape($desc)."'" : "null");
- $sql .= ", ".(!empty($datei) ? "'".$this->db->idate($datei)."'" : "null");
+ $sql .= ", ".(!empty($date) ? "'".$this->db->idate($date)."'" : "null");
$sql .= ", ".$duration;
//$sql.= ", ".price2num($pu_ht);
//$sql.= ", ".(!empty($qty)? $qty :(!empty($duration)? $duration :"null"));
@@ -559,8 +556,7 @@ class FichinterRec extends Fichinter
$sql .= ", ".(!empty($fk_product) ? $fk_product : "null");
$sql .= ", ".$product_type;
$sql .= ", ".(!empty($remise_percent) ? $remise_percent : "null");
- //$sql.= ", '".price2num($pu_ht)."'";
- $sql .= ", null";
+ $sql.= ", '".price2num($pu_ht)."'";
$sql .= ", '".price2num($total_ht)."'";
$sql .= ", '".price2num($total_tva)."'";
$sql .= ", '".price2num($total_ttc)."'";
diff --git a/htdocs/fichinter/contact.php b/htdocs/fichinter/contact.php
index ef6ffc80881..8528281c607 100644
--- a/htdocs/fichinter/contact.php
+++ b/htdocs/fichinter/contact.php
@@ -123,7 +123,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= $langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->ficheinter->creer) {
diff --git a/htdocs/fichinter/document.php b/htdocs/fichinter/document.php
index d0dd326df07..a2511cfee8f 100644
--- a/htdocs/fichinter/document.php
+++ b/htdocs/fichinter/document.php
@@ -34,7 +34,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/fichinter.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -123,7 +123,7 @@ if ($object->id) {
// Thirdparty
$morehtmlref .= $langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->commande->creer) {
diff --git a/htdocs/fichinter/info.php b/htdocs/fichinter/info.php
index 589f1901cd6..a5c0abfeb3d 100644
--- a/htdocs/fichinter/info.php
+++ b/htdocs/fichinter/info.php
@@ -28,7 +28,7 @@ require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/fichinter/class/fichinter.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/fichinter.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -78,7 +78,7 @@ $morehtmlref = '';
// Thirdparty
$morehtmlref .= $langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->commande->creer) {
diff --git a/htdocs/fichinter/list.php b/htdocs/fichinter/list.php
index d8bb62f6b5d..554f0053a92 100644
--- a/htdocs/fichinter/list.php
+++ b/htdocs/fichinter/list.php
@@ -34,19 +34,19 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
require_once DOL_DOCUMENT_ROOT.'/fichinter/class/fichinter.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
-if (!empty($conf->contrat->enabled)) {
+if (isModEnabled('contrat')) {
require_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php';
}
// Load translation files required by the page
$langs->loadLangs(array('companies', 'bills', 'interventions'));
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$langs->load("projects");
}
-if (!empty($conf->contrat->enabled)) {
+if (isModEnabled('contrat')) {
$langs->load("contracts");
}
@@ -120,7 +120,7 @@ $arrayfields = array(
'f.ref'=>array('label'=>'Ref', 'checked'=>1),
'f.ref_client'=>array('label'=>'RefCustomer', 'checked'=>1),
's.nom'=>array('label'=>'ThirdParty', 'checked'=>1),
- 'pr.ref'=>array('label'=>'Project', 'checked'=>1, 'enabled'=>(empty($conf->project->enabled) ? 0 : 1)),
+ 'pr.ref'=>array('label'=>'Project', 'checked'=>1, 'enabled'=>(!isModEnabled('project') ? 0 : 1)),
'c.ref'=>array('label'=>'Contract', 'checked'=>1, 'enabled'=>(empty($conf->contrat->enabled) ? 0 : 1)),
'f.description'=>array('label'=>'Description', 'checked'=>1),
'f.datec'=>array('label'=>'DateCreation', 'checked'=>0, 'position'=>500),
@@ -202,10 +202,10 @@ $form = new Form($db);
$formfile = new FormFile($db);
$objectstatic = new Fichinter($db);
$companystatic = new Societe($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$projetstatic = new Project($db);
}
-if (!empty($conf->contrat->enabled)) {
+if (isModEnabled('contrat')) {
$contratstatic = new Contrat($db);
}
@@ -234,10 +234,10 @@ if (empty($conf->global->FICHINTER_DISABLE_DETAILS) && $atleastonefieldinlines)
$sql .= " fd.rowid as lineid, fd.description as descriptiondetail, fd.date as dp, fd.duree,";
}
$sql .= " s.nom as name, s.rowid as socid, s.client, s.fournisseur, s.email, s.status as thirdpartystatus";
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$sql .= ", pr.rowid as projet_id, pr.ref as projet_ref, pr.title as projet_title";
}
-if (!empty($conf->contrat->enabled)) {
+if (isModEnabled('contrat')) {
$sql .= ", c.rowid as contrat_id, c.ref as contrat_ref, c.ref_customer as contrat_ref_customer, c.ref_supplier as contrat_ref_supplier";
}
// Add fields from extrafields
@@ -251,10 +251,10 @@ $parameters = array();
$reshook = $hookmanager->executeHooks('printFieldListSelect', $parameters); // Note that $action and $object may have been modified by hook
$sql .= $hookmanager->resPrint;
$sql .= " FROM ".MAIN_DB_PREFIX."fichinter as f";
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."projet as pr on f.fk_projet = pr.rowid";
}
-if (!empty($conf->contrat->enabled)) {
+if (isModEnabled('contrat')) {
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."contrat as c on f.fk_contrat = c.rowid";
}
if (isset($extrafields->attributes[$object->table_element]['label']) && is_array($extrafields->attributes[$object->table_element]['label']) && count($extrafields->attributes[$object->table_element]['label'])) {
diff --git a/htdocs/fichinter/note.php b/htdocs/fichinter/note.php
index be5f67da555..3fb2e349c04 100644
--- a/htdocs/fichinter/note.php
+++ b/htdocs/fichinter/note.php
@@ -27,7 +27,7 @@
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/fichinter/class/fichinter.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/fichinter.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -88,7 +88,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= $langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->commande->creer) {
diff --git a/htdocs/fourn/ajax/getSupplierPrices.php b/htdocs/fourn/ajax/getSupplierPrices.php
index 6cfc4fbe7b9..6ebac09d8fb 100644
--- a/htdocs/fourn/ajax/getSupplierPrices.php
+++ b/htdocs/fourn/ajax/getSupplierPrices.php
@@ -114,7 +114,7 @@ if ($idprod > 0) {
// Add price for costprice (at end)
$price = $producttmp->cost_price;
- if (empty($price) && ! empty($conf->global->PRODUCT_USE_SUB_COST_PRICES_IF_COST_PRICE_EMPTY)) {
+ if (empty($price) && !empty($conf->global->PRODUCT_USE_SUB_COST_PRICES_IF_COST_PRICE_EMPTY)) {
// get costprice for subproducts if any
$producttmp->get_sousproduits_arbo();
$prods_arbo=$producttmp->get_arbo_each_prod();
diff --git a/htdocs/fourn/card.php b/htdocs/fourn/card.php
index fb89cd2c455..9a7a3d7dcc0 100644
--- a/htdocs/fourn/card.php
+++ b/htdocs/fourn/card.php
@@ -36,10 +36,10 @@ require_once DOL_DOCUMENT_ROOT.'/supplier_proposal/class/supplier_proposal.class
require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
-if (!empty($conf->adherent->enabled)) {
+if (isModEnabled('adherent')) {
require_once DOL_DOCUMENT_ROOT.'/adherents/class/adherent.class.php';
}
-if (!empty($conf->categorie->enabled)) {
+if (isModEnabled('categorie')) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
}
@@ -328,7 +328,7 @@ if ($object->id > 0) {
print '
';
print ' ';
- if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) && !empty($conf->global->ORDER_MANAGE_MIN_AMOUNT)) {
+ if (((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) && !empty($conf->global->ORDER_MANAGE_MIN_AMOUNT)) {
print '';
print '';
print $form->editfieldkey("OrderMinAmount", 'supplier_order_min_amount', $object->supplier_order_min_amount, $object, $user->rights->societe->creer);
@@ -340,7 +340,7 @@ if ($object->id > 0) {
}
// Categories
- if (!empty($conf->categorie->enabled)) {
+ if (isModEnabled('categorie')) {
$langs->load("categories");
print ' '.$langs->trans("SuppliersCategoriesShort").' ';
print '';
@@ -353,7 +353,7 @@ if ($object->id > 0) {
include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_view.tpl.php';
// Module Adherent
- if (!empty($conf->adherent->enabled)) {
+ if (isModEnabled('adherent')) {
$langs->load("members");
$langs->load("users");
print ' '.$langs->trans("LinkedToDolibarrMember").' ';
@@ -387,7 +387,7 @@ if ($object->id > 0) {
$boxstat .= '';
$boxstat .= '';
- if (!empty($conf->supplier_proposal->enabled)) {
+ if (isModEnabled('supplier_proposal')) {
// Box proposals
$tmp = $object->getOutstandingProposals('supplier');
$outstandingOpened = $tmp['opened'];
@@ -408,7 +408,7 @@ if ($object->id > 0) {
}
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) {
// Box proposals
$tmp = $object->getOutstandingOrders('supplier');
$outstandingOpened = $tmp['opened'];
@@ -429,7 +429,7 @@ if ($object->id > 0) {
}
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_invoice->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_invoice")) {
$warn = '';
$tmp = $object->getOutstandingBills('supplier');
$outstandingOpened = $tmp['opened'];
@@ -514,7 +514,7 @@ if ($object->id > 0) {
/*
* List of products
*/
- if (!empty($conf->product->enabled) || !empty($conf->service->enabled)) {
+ if (isModEnabled("product") || isModEnabled("service")) {
$langs->load("products");
//Query from product/liste.php
$sql = 'SELECT p.rowid, p.ref, p.label, p.fk_product_type, p.entity, p.tosell as status, p.tobuy as status_buy, p.tobatch as status_batch,';
@@ -842,7 +842,7 @@ if ($object->id > 0) {
print dolGetButtonAction($langs->trans('ThirdPartyIsClosed'), $langs->trans('ThirdPartyIsClosed'), 'default', $_SERVER['PHP_SELF'].'#', '', false);
}
- if (!empty($conf->supplier_proposal->enabled) && !empty($user->rights->supplier_proposal->creer)) {
+ if (isModEnabled('supplier_proposal') && !empty($user->rights->supplier_proposal->creer)) {
$langs->load("supplier_proposal");
if ($object->status == 1) {
print dolGetButtonAction('', $langs->trans('AddSupplierProposal'), 'default', DOL_URL_ROOT.'/supplier_proposal/card.php?action=create&socid='.$object->id, '');
diff --git a/htdocs/fourn/class/api_supplier_invoices.class.php b/htdocs/fourn/class/api_supplier_invoices.class.php
index 17146eecd35..5cc3e5592a2 100644
--- a/htdocs/fourn/class/api_supplier_invoices.class.php
+++ b/htdocs/fourn/class/api_supplier_invoices.class.php
@@ -433,7 +433,7 @@ class SupplierInvoices extends DolibarrApi
throw new RestException(401, 'Access not allowed for login '.DolibarrApiAccess::$user->login);
}
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
if (empty($accountid)) {
throw new RestException(400, 'Bank account ID is mandatory');
}
@@ -482,7 +482,7 @@ class SupplierInvoices extends DolibarrApi
throw new RestException(400, 'Payment error : '.$paiement->error);
}
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$result = $paiement->addPaymentToBank(DolibarrApiAccess::$user, 'payment_supplier', '(SupplierInvoicePayment)', $accountid, $chqemetteur, $chqbank);
if ($result < 0) {
$this->db->rollback();
diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php
index d4a0d587f68..b19609dc7bb 100644
--- a/htdocs/fourn/class/fournisseur.commande.class.php
+++ b/htdocs/fourn/class/fournisseur.commande.class.php
@@ -36,7 +36,7 @@
require_once DOL_DOCUMENT_ROOT.'/core/class/commonorder.class.php';
require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
-if (!empty($conf->productbatch->enabled)) {
+if (isModEnabled('productbatch')) {
require_once DOL_DOCUMENT_ROOT.'/product/class/productbatch.class.php';
}
require_once DOL_DOCUMENT_ROOT.'/multicurrency/class/multicurrency.class.php';
@@ -191,7 +191,7 @@ class CommandeFournisseur extends CommonOrder
* Note: Filter can be a string like "(t.ref:like:'SO-%') or (t.date_creation:<:'20160101') or (t.nature:is:NULL)"
* 'label' the translation key.
* 'picto' is code of a picto to show before value in forms
- * 'enabled' is a condition when the field must be managed (Example: 1 or '$conf->global->MY_SETUP_PARAM' or '!empty($conf->multicurrency->enabled)' ...)
+ * 'enabled' is a condition when the field must be managed (Example: 1 or '$conf->global->MY_SETUP_PARAM' or 'isModEnabled("multicurrency")' ...)
* 'position' is the sort order of field.
* 'notnull' is set to 1 if not null in database. Set to -1 if we must set data to null if empty ('' or 0).
* 'visible' says if field is visible in list (Examples: 0=Not visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create). 5=Visible on list and view only (not create/not update). Using a negative value means field is not shown by default on list but can be selected for viewing)
@@ -218,7 +218,7 @@ class CommandeFournisseur extends CommonOrder
'ref' =>array('type'=>'varchar(255)', 'label'=>'Ref', 'enabled'=>1, 'visible'=>1, 'showoncombobox'=>1, 'position'=>25, 'searchall'=>1),
'ref_ext' =>array('type'=>'varchar(255)', 'label'=>'Ref ext', 'enabled'=>1, 'visible'=>0, 'position'=>35),
'ref_supplier' =>array('type'=>'varchar(255)', 'label'=>'RefOrderSupplierShort', 'enabled'=>1, 'visible'=>1, 'position'=>40, 'searchall'=>1),
- 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Project', 'enabled'=>'$conf->project->enabled', 'visible'=>-1, 'position'=>45),
+ 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Project', 'enabled'=>"isModEnabled('project')", 'visible'=>-1, 'position'=>45),
'date_valid' =>array('type'=>'datetime', 'label'=>'DateValidation', 'enabled'=>1, 'visible'=>-1, 'position'=>60),
'date_approve' =>array('type'=>'datetime', 'label'=>'DateApprove', 'enabled'=>1, 'visible'=>-1, 'position'=>62),
'date_approve2' =>array('type'=>'datetime', 'label'=>'DateApprove2', 'enabled'=>1, 'visible'=>3, 'position'=>64),
@@ -247,11 +247,11 @@ class CommandeFournisseur extends CommonOrder
'fk_incoterms' =>array('type'=>'integer', 'label'=>'IncotermCode', 'enabled'=>1, 'visible'=>3, 'position'=>205),
'location_incoterms' =>array('type'=>'varchar(255)', 'label'=>'IncotermLocation', 'enabled'=>1, 'visible'=>3, 'position'=>210),
'fk_multicurrency' =>array('type'=>'integer', 'label'=>'Fk multicurrency', 'enabled'=>1, 'visible'=>0, 'position'=>215),
- 'multicurrency_code' =>array('type'=>'varchar(255)', 'label'=>'Currency', 'enabled'=>'!empty($conf->multicurrency->enabled)', 'visible'=>-1, 'position'=>220),
- 'multicurrency_tx' =>array('type'=>'double(24,8)', 'label'=>'CurrencyRate', 'enabled'=>'!empty($conf->multicurrency->enabled)', 'visible'=>-1, 'position'=>225),
- 'multicurrency_total_ht' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountHT', 'enabled'=>'!empty($conf->multicurrency->enabled)', 'visible'=>-1, 'position'=>230),
- 'multicurrency_total_tva' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountVAT', 'enabled'=>'!empty($conf->multicurrency->enabled)', 'visible'=>-1, 'position'=>235),
- 'multicurrency_total_ttc' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountTTC', 'enabled'=>'!empty($conf->multicurrency->enabled)', 'visible'=>-1, 'position'=>240),
+ 'multicurrency_code' =>array('type'=>'varchar(255)', 'label'=>'Currency', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>220),
+ 'multicurrency_tx' =>array('type'=>'double(24,8)', 'label'=>'CurrencyRate', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>225),
+ 'multicurrency_total_ht' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountHT', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>230),
+ 'multicurrency_total_tva' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountVAT', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>235),
+ 'multicurrency_total_ttc' =>array('type'=>'double(24,8)', 'label'=>'MulticurrencyAmountTTC', 'enabled'=>'isModEnabled("multicurrency")', 'visible'=>-1, 'position'=>240),
'date_creation' =>array('type'=>'datetime', 'label'=>'Date creation', 'enabled'=>1, 'visible'=>-1, 'position'=>500),
'fk_soc' =>array('type'=>'integer:Societe:societe/class/societe.class.php', 'label'=>'ThirdParty', 'enabled'=>'$conf->societe->enabled', 'visible'=>1, 'notnull'=>1, 'position'=>46),
'entity' =>array('type'=>'integer', 'label'=>'Entity', 'default'=>1, 'enabled'=>1, 'visible'=>0, 'notnull'=>1, 'position'=>1000, 'index'=>1),
@@ -1888,7 +1888,7 @@ class CommandeFournisseur extends CommonOrder
}
}
- if (!empty($conf->multicurrency->enabled) && $pu_ht_devise > 0) {
+ if (isModEnabled("multicurrency") && $pu_ht_devise > 0) {
$pu = 0;
}
@@ -1959,7 +1959,7 @@ class CommandeFournisseur extends CommonOrder
$this->line->total_localtax2 = $total_localtax2;
$this->line->total_ttc = $total_ttc;
$this->line->product_type = $type;
- $this->line->special_code = $special_code;
+ $this->line->special_code = (!empty($this->special_code) ? $this->special_code : 0);
$this->line->origin = $origin;
$this->line->origin_id = $origin_id;
$this->line->fk_unit = $fk_unit;
@@ -2831,7 +2831,7 @@ class CommandeFournisseur extends CommonOrder
if ($qty < $this->line->packaging) {
$qty = $this->line->packaging;
} else {
- if (! empty($this->line->packaging) && ($qty % $this->line->packaging) > 0) {
+ if (!empty($this->line->packaging) && ($qty % $this->line->packaging) > 0) {
$coeff = intval($qty / $this->line->packaging) + 1;
$qty = $this->line->packaging * $coeff;
setEventMessage($langs->trans('QtyRecalculatedWithPackaging'), 'mesgs');
@@ -2858,7 +2858,7 @@ class CommandeFournisseur extends CommonOrder
$this->line->total_localtax2 = $total_localtax2;
$this->line->total_ttc = $total_ttc;
$this->line->product_type = $type;
- $this->line->special_code = $this->special_code;
+ $this->line->special_code = (!empty($this->special_code) ? $this->special_code : 0);
$this->line->origin = $this->origin;
$this->line->fk_unit = $fk_unit;
@@ -3367,7 +3367,7 @@ class CommandeFournisseur extends CommonOrder
{
global $conf, $langs;
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) {
require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.dispatch.class.php';
$qtydelivered = array();
diff --git a/htdocs/fourn/class/fournisseur.facture-rec.class.php b/htdocs/fourn/class/fournisseur.facture-rec.class.php
index 31bc37b6e1a..b2b30ebe281 100644
--- a/htdocs/fourn/class/fournisseur.facture-rec.class.php
+++ b/htdocs/fourn/class/fournisseur.facture-rec.class.php
@@ -195,7 +195,7 @@ class FactureFournisseurRec extends CommonInvoice
'fk_user_author' =>array('type'=>'integer:User:user/class/user.class.php', 'label'=>'Fk user author', 'enabled'=>1, 'visible'=>-1, 'position'=>80),
'fk_user_modif' =>array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserModif', 'enabled'=>1, 'visible'=>-2, 'notnull'=>-1, 'position'=>210),
- 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Fk projet', 'enabled'=>'$conf->project->enabled', 'visible'=>-1, 'position'=>85),
+ 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Fk projet', 'enabled'=>"isModEnabled('project')", 'visible'=>-1, 'position'=>85),
'fk_account' =>array('type'=>'integer', 'label'=>'Fk account', 'enabled'=>'$conf->banque->enabled', 'visible'=>-1, 'position'=>175),
'fk_cond_reglement' =>array('type'=>'integer', 'label'=>'Fk cond reglement', 'enabled'=>1, 'visible'=>-1, 'position'=>90),
'fk_mode_reglement' =>array('type'=>'integer', 'label'=>'Fk mode reglement', 'enabled'=>1, 'visible'=>-1, 'position'=>95),
@@ -982,9 +982,9 @@ class FactureFournisseurRec extends CommonInvoice
$sql .= ', fk_multicurrency, multicurrency_code, multicurrency_subprice, multicurrency_total_ht, multicurrency_total_tva, multicurrency_total_ttc';
$sql .= ') VALUES (';
$sql .= ' ' . (int) $facid; // source supplier invoie id
- $sql .= ', ' . (! empty($fk_product) ? "'" . $this->db->escape($fk_product) . "'" : 'null');
- $sql .= ', ' . (! empty($ref) ? "'" . $this->db->escape($ref) . "'" : 'null');
- $sql .= ', ' . (! empty($label) ? "'" . $this->db->escape($label) . "'" : 'null');
+ $sql .= ', ' . (!empty($fk_product) ? "'" . $this->db->escape($fk_product) . "'" : 'null');
+ $sql .= ', ' . (!empty($ref) ? "'" . $this->db->escape($ref) . "'" : 'null');
+ $sql .= ', ' . (!empty($label) ? "'" . $this->db->escape($label) . "'" : 'null');
$sql .= ", '" . $this->db->escape($desc) . "'";
$sql .= ', ' . price2num($pu_ht);
$sql .= ', ' . price2num($pu_ttc);
@@ -2154,8 +2154,8 @@ class FactureFournisseurLigneRec extends CommonObjectLine
$sql .= ' fk_facture_fourn = ' . (int) $this->fk_facture_fourn;
$sql .= ', fk_parent_line = ' . (int) $this->fk_parent;
$sql .= ', fk_product = ' . (int) $this->fk_product;
- $sql .= ', ref = ' . (! empty($this->ref) ? "'" . $this->db->escape($this->ref) . "'" : 'NULL');
- $sql .= ", label = " . (! empty($this->label) ? "'" . $this->db->escape($this->label) . "'" : 'NULL');
+ $sql .= ', ref = ' . (!empty($this->ref) ? "'" . $this->db->escape($this->ref) . "'" : 'NULL');
+ $sql .= ", label = " . (!empty($this->label) ? "'" . $this->db->escape($this->label) . "'" : 'NULL');
$sql .= ", description = '" . $this->db->escape($this->description) . "'";
$sql .= ', pu_ht = ' . price2num($this->pu_ht);
$sql .= ', pu_ttc = ' . price2num($this->pu_ttc);
diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/htdocs/fourn/class/fournisseur.facture.class.php
index 2135c66dfee..c4e034dd7a1 100644
--- a/htdocs/fourn/class/fournisseur.facture.class.php
+++ b/htdocs/fourn/class/fournisseur.facture.class.php
@@ -297,7 +297,7 @@ class FactureFournisseur extends CommonInvoice
'fk_user_modif' =>array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserModif', 'enabled'=>1, 'visible'=>-2, 'notnull'=>-1, 'position'=>130),
'fk_user_valid' =>array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserValidation', 'enabled'=>1, 'visible'=>-1, 'position'=>135),
'fk_facture_source' =>array('type'=>'integer', 'label'=>'Fk facture source', 'enabled'=>1, 'visible'=>-1, 'position'=>140),
- 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Project', 'enabled'=>'$conf->project->enabled', 'visible'=>-1, 'position'=>145),
+ 'fk_projet' =>array('type'=>'integer:Project:projet/class/project.class.php:1:fk_statut=1', 'label'=>'Project', 'enabled'=>"isModEnabled('project')", 'visible'=>-1, 'position'=>145),
'fk_account' =>array('type'=>'integer', 'label'=>'Account', 'enabled'=>'$conf->banque->enabled', 'visible'=>-1, 'position'=>150),
'fk_cond_reglement' =>array('type'=>'integer', 'label'=>'PaymentTerm', 'enabled'=>1, 'visible'=>-1, 'position'=>155),
'fk_mode_reglement' =>array('type'=>'integer', 'label'=>'PaymentMode', 'enabled'=>1, 'visible'=>-1, 'position'=>160),
@@ -433,7 +433,7 @@ class FactureFournisseur extends CommonInvoice
$result = $_facrec->fetchObjectLinked(null, '', null, '', 'OR', 1, 'sourcetype', 0); // This load $_facrec->linkedObjectsIds
// Define some dates
- if (! empty($_facrec->frequency)) {
+ if (!empty($_facrec->frequency)) {
$originaldatewhen = $_facrec->date_when;
$nextdatewhen = dol_time_plus_duree($originaldatewhen, $_facrec->frequency, $_facrec->unit_frequency);
$previousdaynextdatewhen = dol_time_plus_duree($nextdatewhen, -1, 'd');
@@ -464,7 +464,7 @@ class FactureFournisseur extends CommonInvoice
if (! $this->type) {
$this->type = self::TYPE_STANDARD;
}
- if (! empty(GETPOST('ref_supplier'))) {
+ if (!empty(GETPOST('ref_supplier'))) {
$this->ref_supplier = trim($this->ref_supplier);
} else {
$this->ref_supplier = trim($this->ref_supplier . '_' . ($_facrec->nb_gen_done + 1));
@@ -504,13 +504,13 @@ class FactureFournisseur extends CommonInvoice
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && isset($this->thirdparty->default_lang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && isset($this->thirdparty->default_lang)) {
$newlang = $this->thirdparty->default_lang; // for proposal, order, invoice, ...
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && isset($this->default_lang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && isset($this->default_lang)) {
$newlang = $this->default_lang; // for thirdparty
}
- if (! empty($newlang)) {
+ if (!empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
}
@@ -540,7 +540,7 @@ class FactureFournisseur extends CommonInvoice
}
// Define due date if not already defined
- if (! empty($forceduedate)) {
+ if (!empty($forceduedate)) {
$this->date_echeance = $forceduedate;
}
@@ -760,9 +760,9 @@ class FactureFournisseur extends CommonInvoice
// If margin module defined on costprice, we try the costprice
// If not defined or if module margin defined and pmp and stock module enabled, we try pmp price
// else we get the best supplier price
- if ($conf->global->MARGIN_TYPE == 'costprice' && ! empty($producttmp->cost_price)) {
+ if ($conf->global->MARGIN_TYPE == 'costprice' && !empty($producttmp->cost_price)) {
$buyprice = $producttmp->cost_price;
- } elseif (! empty($conf->stock->enabled) && ($conf->global->MARGIN_TYPE == 'costprice' || $conf->global->MARGIN_TYPE == 'pmp') && ! empty($producttmp->pmp)) {
+ } elseif (!empty($conf->stock->enabled) && ($conf->global->MARGIN_TYPE == 'costprice' || $conf->global->MARGIN_TYPE == 'pmp') && !empty($producttmp->pmp)) {
$buyprice = $producttmp->pmp;
} else {
if ($producttmp->find_min_price_product_fournisseur($_facrec->lines[$i]->fk_product) > 0) {
@@ -2125,7 +2125,7 @@ class FactureFournisseur extends CommonInvoice
$product_type = $type;
}
- if (!empty($conf->multicurrency->enabled) && $pu_devise > 0) {
+ if (isModEnabled("multicurrency") && $pu_devise > 0) {
$pu = 0;
}
@@ -3861,7 +3861,7 @@ class SupplierInvoiceLine extends CommonObjectLine
$sql .= ' '.((!empty($this->fk_product) && $this->fk_product > 0) ? $this->fk_product : "null").',';
$sql .= " ".((int) $this->product_type).",";
$sql .= " ".price2num($this->remise_percent).",";
- $sql .= ' '.(! empty($this->fk_remise_except) ? ((int) $this->fk_remise_except) : "null").',';
+ $sql .= ' '.(!empty($this->fk_remise_except) ? ((int) $this->fk_remise_except) : "null").',';
$sql .= " ".price2num($this->subprice).",";
$sql .= " ".(!empty($this->qty) ?price2num($this->total_ttc / $this->qty) : price2num($this->total_ttc)).",";
$sql .= " ".(!empty($this->date_start) ? "'".$this->db->idate($this->date_start)."'" : "null").",";
diff --git a/htdocs/fourn/class/fournisseur.product.class.php b/htdocs/fourn/class/fournisseur.product.class.php
index cdab93e6caa..276c5b20ed9 100644
--- a/htdocs/fourn/class/fournisseur.product.class.php
+++ b/htdocs/fourn/class/fournisseur.product.class.php
@@ -296,7 +296,7 @@ class ProductFournisseur extends Product
// Multicurrency
$multicurrency_unitBuyPrice = null;
$fk_multicurrency = null;
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
if (empty($multicurrency_tx)) {
$multicurrency_tx = 1;
}
@@ -808,7 +808,7 @@ class ProductFournisseur extends Product
$sql .= " ,pfp.multicurrency_price, pfp.multicurrency_unitprice, pfp.multicurrency_tx, pfp.fk_multicurrency, pfp.multicurrency_code";
$sql .= " FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."product_fournisseur_price as pfp";
$sql .= " WHERE s.entity IN (".getEntity('societe').")";
- $sql .= " AND pfp.entity = ".$conf->entity; // only current entity
+ $sql .= " AND pfp.entity IN (".getEntity('productsupplierprice').")";
$sql .= " AND pfp.fk_product = ".((int) $prodid);
$sql .= " AND pfp.fk_soc = s.rowid";
$sql .= " AND s.status = 1"; // only enabled society
@@ -1173,7 +1173,7 @@ class ProductFournisseur extends Product
$label .= ''.$langs->trans('RefSupplier').': '.$this->ref_supplier;
if ($this->type == Product::TYPE_PRODUCT || !empty($conf->global->STOCK_SUPPORTS_SERVICES)) {
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
$langs->load("productbatch");
$label .= "".$langs->trans("ManageLotSerial").' : '.$this->getLibStatut(0, 2);
}
diff --git a/htdocs/fourn/class/paiementfourn.class.php b/htdocs/fourn/class/paiementfourn.class.php
index 8fc181e18e0..e0b3fcac0c6 100644
--- a/htdocs/fourn/class/paiementfourn.class.php
+++ b/htdocs/fourn/class/paiementfourn.class.php
@@ -349,7 +349,7 @@ class PaiementFourn extends Paiement
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$newlang = '';
$outputlangs = $langs;
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $invoice->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -862,7 +862,7 @@ class PaiementFourn extends Paiement
global $conf;
$way = 'dolibarr';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
foreach ($this->multicurrency_amounts as $value) {
if (!empty($value)) { // one value found then payment is in invoice currency
$way = 'customer';
diff --git a/htdocs/fourn/commande/card.php b/htdocs/fourn/commande/card.php
index 01cae8860d6..86113b13592 100644
--- a/htdocs/fourn/commande/card.php
+++ b/htdocs/fourn/commande/card.php
@@ -4,7 +4,7 @@
* Copyright (C) 2005 Eric Seigne
* Copyright (C) 2005-2016 Regis Houssin
* Copyright (C) 2010-2015 Juanjo Menent
- * Copyright (C) 2011-2018 Philippe Grand
+ * Copyright (C) 2011-2022 Philippe Grand
* Copyright (C) 2012-2016 Marcos García
* Copyright (C) 2013 Florian Henry
* Copyright (C) 2014 Ion Agorria
@@ -43,13 +43,13 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
-if (!empty($conf->supplier_proposal->enabled)) {
+if (isModEnabled('supplier_proposal')) {
require_once DOL_DOCUMENT_ROOT.'/supplier_proposal/class/supplier_proposal.class.php';
}
-if (!empty($conf->product->enabled)) {
+if (isModEnabled("product")) {
require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
}
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -160,7 +160,7 @@ $permissiontoadd = $usercancreate; // Used by the include of actions_addupdatede
// Project permission
$caneditproject = false;
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$caneditproject = empty($conf->global->SUPPLIER_ORDER_FORBID_EDIT_PROJECT) || ($object->statut == CommandeFournisseur::STATUS_DRAFT && preg_match('/^[\(]?PROV/i', $object->ref));
}
@@ -405,7 +405,16 @@ if (empty($reshook)) {
}
// Add a product line
- if ($action == 'addline' && $usercancreate) {
+ if ($action == 'addline' && GETPOST('submitforalllines', 'aZ09') && GETPOST('vatforalllines', 'alpha') && $usercancreate) {
+ // Define vat_rate
+ $vat_rate = (GETPOST('vatforalllines') ? GETPOST('vatforalllines') : 0);
+ $vat_rate = str_replace('*', '', $vat_rate);
+ $localtax1_rate = get_localtax($vat_rate, 1, $object->thirdparty, $mysoc);
+ $localtax2_rate = get_localtax($vat_rate, 2, $object->thirdparty, $mysoc);
+ foreach ($object->lines as $line) {
+ $result = $object->updateline($line->id, $line->desc, $line->subprice, $line->qty, $line->remise_percent, $vat_rate, $localtax1_rate, $localtax2_rate, 'HT', $line->info_bits, $line->product_type, 0, $line->date_start, $line->date_end, $line->array_options, $line->fk_unit, $line->multicurrency_subprice);
+ }
+ } elseif ($action == 'addline' && $usercancreate) {
$db->begin();
$langs->load('errors');
@@ -669,11 +678,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
- $newlang = GETPOST('lang_id', 'aZ09');
- }
if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
+ if (GETPOST('lang_id', 'aZ09'))
+ $newlang = GETPOST('lang_id', 'aZ09');
}
if (!empty($newlang)) {
$outputlangs = new Translate("", $conf);
@@ -846,10 +854,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -884,10 +892,10 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -926,10 +934,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -989,10 +997,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -1050,10 +1058,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -1536,7 +1544,7 @@ $form = new Form($db);
$formfile = new FormFile($db);
$formorder = new FormOrder($db);
$productstatic = new Product($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -1617,7 +1625,7 @@ if ($action == 'create') {
$datedelivery = (!empty($objectsrc->date_livraison) ? $objectsrc->date_livraison : (!empty($objectsrc->delivery_date) ? $objectsrc->delivery_date : ''));
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
if (!empty($objectsrc->multicurrency_code)) {
$currency_code = $objectsrc->multicurrency_code;
}
@@ -1635,7 +1643,7 @@ if ($action == 'create') {
$cond_reglement_id = !empty($societe->cond_reglement_supplier_id) ? $societe->cond_reglement_supplier_id : 0;
$mode_reglement_id = !empty($societe->mode_reglement_supplier_id) ? $societe->mode_reglement_supplier_id : 0;
- if (!empty($conf->multicurrency->enabled) && !empty($societe->multicurrency_code)) {
+ if (isModEnabled("multicurrency") && !empty($societe->multicurrency_code)) {
$currency_code = $societe->multicurrency_code;
}
@@ -1742,7 +1750,7 @@ if ($action == 'create') {
print ' ';
// Bank Account
- if (!empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER) && !empty($conf->banque->enabled)) {
+ if (!empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER) && isModEnabled("banque")) {
$langs->load("bank");
print ''.$langs->trans('BankAccount').' ';
print img_picto('', 'bank_account', 'class="paddingrightonly"');
@@ -1751,7 +1759,7 @@ if ($action == 'create') {
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$formproject = new FormProjets($db);
$langs->load('projects');
@@ -1773,7 +1781,7 @@ if ($action == 'create') {
}
// Multicurrency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
print ' ';
print ''.$form->editfieldkey('Currency', 'multicurrency_code', '', $object, 0).' ';
print '';
@@ -1820,7 +1828,7 @@ if ($action == 'create') {
print ' '.$langs->trans('AmountTTC').' '.price($objectsrc->total_ttc)." ";
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
print ''.$langs->trans('MulticurrencyAmountHT').' '.price($objectsrc->multicurrency_total_ht).' ';
print ''.$langs->trans('MulticurrencyAmountVAT').' '.price($objectsrc->multicurrency_total_tva).' ';
print ''.$langs->trans('MulticurrencyAmountTTC').' '.price($objectsrc->multicurrency_total_ttc).' ';
@@ -2039,7 +2047,7 @@ if ($action == 'create') {
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($usercancreate) {
@@ -2166,7 +2174,7 @@ if ($action == 'create') {
print '';
// Multicurrency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
// Multicurrency code
print '';
print '';
@@ -2216,7 +2224,7 @@ if ($action == 'create') {
}
// Bank Account
- if (!empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER) && !empty($conf->banque->enabled)) {
+ if (!empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER) && isModEnabled("banque")) {
print ' ';
print '';
print $langs->trans('BankAccount');
@@ -2358,7 +2366,7 @@ if ($action == 'create') {
print '
';
// Margin Infos
- /*if (! empty($conf->margin->enabled)) {
+ /*if (!empty($conf->margin->enabled)) {
$formmargin->displayMarginInfos($object);
}*/
@@ -2463,7 +2471,7 @@ if ($action == 'create') {
}
}
// Create event
- /*if ($conf->agenda->enabled && ! empty($conf->global->MAIN_ADD_EVENT_ON_ELEMENT_CARD)) // Add hidden condition because this is not a "workflow" action so should appears somewhere else on page.
+ /*if ($conf->agenda->enabled && !empty($conf->global->MAIN_ADD_EVENT_ON_ELEMENT_CARD)) // Add hidden condition because this is not a "workflow" action so should appears somewhere else on page.
{
print '';
}*/
@@ -2561,7 +2569,7 @@ if ($action == 'create') {
}
if (in_array($object->statut, array(3, 4, 5))) {
- if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) && $usercanreceive) {
+ if (((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) && $usercanreceive) {
print '';
} else {
print '';
@@ -2587,7 +2595,7 @@ if ($action == 'create') {
// Create bill
//if (isModEnabled('facture'))
//{
- if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_invoice->enabled)) && ($object->statut >= 2 && $object->statut != 7 && $object->billed != 1)) { // statut 2 means approved, 7 means canceled
+ if (((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_invoice")) && ($object->statut >= 2 && $object->statut != 7 && $object->billed != 1)) { // statut 2 means approved, 7 means canceled
if ($user->rights->fournisseur->facture->creer || $user->rights->supplier_invoice->creer) {
print ''.$langs->trans("CreateBill").' ';
}
diff --git a/htdocs/fourn/commande/contact.php b/htdocs/fourn/commande/contact.php
index 3cae4f04c73..32eb55d2d4c 100644
--- a/htdocs/fourn/commande/contact.php
+++ b/htdocs/fourn/commande/contact.php
@@ -29,7 +29,7 @@ require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php';
require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -135,7 +135,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->fournisseur->commande->creer || $user->rights->supplier_order->creer) {
diff --git a/htdocs/fourn/commande/dispatch.php b/htdocs/fourn/commande/dispatch.php
index c20768e8f38..c5aa40d99d6 100644
--- a/htdocs/fourn/commande/dispatch.php
+++ b/htdocs/fourn/commande/dispatch.php
@@ -39,14 +39,14 @@ require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.dispatch.class
require_once DOL_DOCUMENT_ROOT.'/product/class/html.formproduct.class.php';
require_once DOL_DOCUMENT_ROOT.'/product/stock/class/mouvementstock.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
// Load translation files required by the page
$langs->loadLangs(array("bills", "orders", "sendings", "companies", "deliveries", "products", "stocks", "receptions"));
-if (!empty($conf->productbatch->enabled)) {
+if (isModEnabled('productbatch')) {
$langs->load('productbatch');
}
@@ -243,7 +243,7 @@ if ($action == 'dispatch' && $permissiontoreceive) {
$fk_commandefourndet = "fk_commandefourndet_".$reg[1].'_'.$reg[2];
if (!empty($conf->global->SUPPLIER_ORDER_CAN_UPDATE_BUYINGPRICE_DURING_RECEIPT)) {
- if (empty($conf->multicurrency->enabled) && empty($conf->dynamicprices->enabled)) {
+ if (!isModEnabled("multicurrency") && empty($conf->dynamicprices->enabled)) {
$dto = GETPOST("dto_".$reg[1].'_'.$reg[2], 'int');
if (!empty($dto)) {
$unit_price = price2num(GETPOST("pu_".$reg[1]) * (100 - $dto) / 100, 'MU');
@@ -269,7 +269,7 @@ if ($action == 'dispatch' && $permissiontoreceive) {
}
if (!$error && !empty($conf->global->SUPPLIER_ORDER_CAN_UPDATE_BUYINGPRICE_DURING_RECEIPT)) {
- if (empty($conf->multicurrency->enabled) && empty($conf->dynamicprices->enabled)) {
+ if (!isModEnabled("multicurrency") && empty($conf->dynamicprices->enabled)) {
$dto = price2num(GETPOST("dto_".$reg[1].'_'.$reg[2], 'int'), '');
if (empty($dto)) {
$dto = 0;
@@ -311,7 +311,7 @@ if ($action == 'dispatch' && $permissiontoreceive) {
$fk_commandefourndet = 'fk_commandefourndet_'.$reg[1].'_'.$reg[2];
if (!empty($conf->global->SUPPLIER_ORDER_CAN_UPDATE_BUYINGPRICE_DURING_RECEIPT)) {
- if (empty($conf->multicurrency->enabled) && empty($conf->dynamicprices->enabled)) {
+ if (!isModEnabled("multicurrency") && empty($conf->dynamicprices->enabled)) {
$dto = GETPOST("dto_".$reg[1].'_'.$reg[2], 'int');
if (!empty($dto)) {
$unit_price = price2num(GETPOST("pu_".$reg[1]) * (100 - $dto) / 100, 'MU');
@@ -344,7 +344,7 @@ if ($action == 'dispatch' && $permissiontoreceive) {
}
if (!$error && !empty($conf->global->SUPPLIER_ORDER_CAN_UPDATE_BUYINGPRICE_DURING_RECEIPT)) {
- if (empty($conf->multicurrency->enabled) && empty($conf->dynamicprices->enabled)) {
+ if (!isModEnabled("multicurrency") && empty($conf->dynamicprices->enabled)) {
$dto = GETPOST("dto_".$reg[1].'_'.$reg[2], 'int');
//update supplier price
if (GETPOSTISSET($saveprice)) {
@@ -373,19 +373,6 @@ if ($action == 'dispatch' && $permissiontoreceive) {
}
}
- if (!$error) {
- global $conf, $langs, $user;
- // Call trigger
-
- $result = $object->call_trigger('ORDER_SUPPLIER_DISPATCH', $user);
- // End call triggers
-
- if ($result < 0) {
- setEventMessages($object->error, $object->errors, 'errors');
- $error++;
- }
- }
-
if ($result >= 0 && !$error) {
$db->commit();
@@ -554,7 +541,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->fournisseur->commande->creer || $user->rights->supplier_order->creer) {
@@ -734,7 +721,7 @@ if ($id > 0 || !empty($ref)) {
print ' ';
print ''.$langs->trans("Description").' ';
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
print ''.$langs->trans("batch_number").' ';
if (empty($conf->global->PRODUCT_DISABLE_SELLBY)) {
print ''.$langs->trans("SellByDate").' ';
@@ -755,7 +742,7 @@ if ($id > 0 || !empty($ref)) {
print ' ';
if (!empty($conf->global->SUPPLIER_ORDER_CAN_UPDATE_BUYINGPRICE_DURING_RECEIPT)) {
- if (empty($conf->multicurrency->enabled) && empty($conf->dynamicprices->enabled)) {
+ if (!isModEnabled("multicurrency") && empty($conf->dynamicprices->enabled)) {
print ''.$langs->trans("Price").' ';
print ''.$langs->trans("ReductionShort").' (%) ';
print ''.$langs->trans("UpdatePrice").' ';
@@ -833,7 +820,7 @@ if ($id > 0 || !empty($ref)) {
$linktoprod = $tmpproduct->getNomUrl(1);
$linktoprod .= ' - '.$objp->label."\n";
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
if ($objp->tobatch) {
// Product
print '';
@@ -882,7 +869,7 @@ if ($id > 0 || !empty($ref)) {
// Already dispatched
print ' '.$products_dispatched[$objp->rowid].' ';
- if (!empty($conf->productbatch->enabled) && $objp->tobatch > 0) {
+ if (isModEnabled('productbatch') && $objp->tobatch > 0) {
$type = 'batch';
print '';
print ' '; // Qty to dispatch
@@ -994,7 +981,7 @@ if ($id > 0 || !empty($ref)) {
print '';
print '';
- if (!empty($conf->productbatch->enabled) && $objp->tobatch > 0) {
+ if (isModEnabled('productbatch') && $objp->tobatch > 0) {
$type = 'batch';
print img_picto($langs->trans('AddStockLocationLine'), 'split.png', 'class="splitbutton" onClick="addDispatchLine('.$i.', \''.$type.'\')"');
} else {
@@ -1004,7 +991,7 @@ if ($id > 0 || !empty($ref)) {
print ' ';
if (!empty($conf->global->SUPPLIER_ORDER_CAN_UPDATE_BUYINGPRICE_DURING_RECEIPT)) {
- if (empty($conf->multicurrency->enabled) && empty($conf->dynamicprices->enabled)) {
+ if (!isModEnabled("multicurrency") && empty($conf->dynamicprices->enabled)) {
// Price
print '';
print ' ';
@@ -1175,7 +1162,7 @@ if ($id > 0 || !empty($ref)) {
print ' '.$langs->trans("Product").' ';
print ''.$langs->trans("DateCreation").' ';
print ''.$langs->trans("DateDeliveryPlanned").' ';
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
print ''.$langs->trans("batch_number").' ';
if (empty($conf->global->PRODUCT_DISABLE_SELLBY)) {
print ''.$langs->trans("SellByDate").' ';
@@ -1191,7 +1178,7 @@ if ($id > 0 || !empty($ref)) {
// Status
if (!empty($conf->global->SUPPLIER_ORDER_USE_DISPATCH_STATUS) && empty($reception->rowid)) {
print ''.$langs->trans("Status").' ';
- } elseif (!empty($conf->reception->enabled)) {
+ } elseif (isModEnabled("reception")) {
print ' ';
}
@@ -1203,10 +1190,6 @@ if ($id > 0 || !empty($ref)) {
while ($i < $num) {
$objp = $db->fetch_object($resql);
- $tmpproduct->id = $objp->fk_product;
- $tmpproduct->ref = $objp->ref;
- $tmpproduct->label = $objp->label;
-
if ($action == 'editline' && $lineid == $objp->dispatchlineid) {
print 'id.'#line_'.GETPOST('lineid', 'int').'" method="POST">
@@ -1218,7 +1201,7 @@ if ($id > 0 || !empty($ref)) {
print '';
// Reception ref
- if (!empty($conf->reception->enabled)) {
+ if (isModEnabled("reception")) {
print '';
if (!empty($objp->fk_reception)) {
$reception = new Reception($db);
@@ -1244,7 +1227,7 @@ if ($id > 0 || !empty($ref)) {
print ' '.dol_print_date($db->jdate($objp->datec), 'day').' ';
print ''.dol_print_date($db->jdate($objp->date_delivery), 'day').' ';
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
if ($objp->batch) {
include_once DOL_DOCUMENT_ROOT.'/product/stock/class/productlot.class.php';
$lot = new Productlot($db);
@@ -1335,7 +1318,7 @@ if ($id > 0 || !empty($ref)) {
}
}
print '';
- } elseif (!empty($conf->reception->enabled)) {
+ } elseif (isModEnabled("reception")) {
print '';
if (!empty($reception->id)) {
print $reception->getLibStatut(5);
diff --git a/htdocs/fourn/commande/document.php b/htdocs/fourn/commande/document.php
index 5a017296887..957fa32867f 100644
--- a/htdocs/fourn/commande/document.php
+++ b/htdocs/fourn/commande/document.php
@@ -34,7 +34,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -131,7 +131,7 @@ if ($object->id > 0) {
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->fournisseur->commande->creer || $user->rights->supplier_order->creer) {
diff --git a/htdocs/fourn/commande/index.php b/htdocs/fourn/commande/index.php
index 7d6b3b6936a..3d5a111ed03 100644
--- a/htdocs/fourn/commande/index.php
+++ b/htdocs/fourn/commande/index.php
@@ -172,7 +172,7 @@ if ($resql) {
* Draft orders
*/
-if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) {
+if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) {
$sql = "SELECT c.rowid, c.ref, s.nom as name, s.rowid as socid";
$sql .= " FROM ".MAIN_DB_PREFIX."commande_fournisseur as c";
$sql .= ", ".MAIN_DB_PREFIX."societe as s";
@@ -219,12 +219,12 @@ if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SU
*/
$sql = "SELECT";
-if (!empty($conf->multicompany->enabled) && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
+if (isModEnabled('multicompany') && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
$sql .= " DISTINCT";
}
$sql .= " u.rowid, u.lastname, u.firstname, u.email, u.statut";
$sql .= " FROM ".MAIN_DB_PREFIX."user as u";
-if (!empty($conf->multicompany->enabled) && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
+if (isModEnabled('multicompany') && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
$sql .= ",".MAIN_DB_PREFIX."usergroup_user as ug";
$sql .= " WHERE ((ug.fk_user = u.rowid";
$sql .= " AND ug.entity IN (".getEntity('usergroup')."))";
diff --git a/htdocs/fourn/commande/info.php b/htdocs/fourn/commande/info.php
index 18c4f5f2670..27f0483d35a 100644
--- a/htdocs/fourn/commande/info.php
+++ b/htdocs/fourn/commande/info.php
@@ -29,7 +29,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -139,7 +139,7 @@ $morehtmlref .= $form->editfieldval("RefSupplier", 'ref_supplier', $object->ref_
// Thirdparty
$morehtmlref .= ' '.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->fournisseur->commande->creer || $user->rights->supplier_order->creer) {
diff --git a/htdocs/fourn/commande/list.php b/htdocs/fourn/commande/list.php
index 8d03dbb387c..c6401b0a70a 100644
--- a/htdocs/fourn/commande/list.php
+++ b/htdocs/fourn/commande/list.php
@@ -120,7 +120,7 @@ $search_project_ref = GETPOST('search_project_ref', 'alpha');
$search_btn = GETPOST('button_search', 'alpha');
$search_remove_btn = GETPOST('button_removefilter', 'alpha');
-if (is_array(GETPOST('search_status', 'none'))) { // 'none' because we want to know type before sanitizing
+if (GETPOSTISARRAY('search_status')) {
$search_status = join(',', GETPOST('search_status', 'array:intcomma'));
} else {
$search_status = (GETPOST('search_status', 'intcomma') != '' ? GETPOST('search_status', 'intcomma') : GETPOST('statut', 'intcomma'));
@@ -741,7 +741,6 @@ if ($search_billed > 0) {
//$help_url="EN:Module_Customers_Orders|FR:Module_Commandes_Clients|ES:Módulo_Pedidos_de_clientes";
$help_url = '';
-// llxHeader('',$title,$help_url);
$sql = 'SELECT';
if ($sall || $search_product_category > 0) {
@@ -1228,7 +1227,7 @@ if ($resql) {
$moreforfilter .= '';
}
// If the user can view prospects other than his'
- if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire && ($user->rights->produit->lire || $user->rights->service->lire)) {
+ if (isModEnabled('categorie') && $user->rights->categorie->lire && ($user->rights->produit->lire || $user->rights->service->lire)) {
include_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
$moreforfilter .= '';
$tmptitle = $langs->trans('IncludingProductWithTag');
diff --git a/htdocs/fourn/commande/note.php b/htdocs/fourn/commande/note.php
index cfdea75d9d9..7c19c6c8867 100644
--- a/htdocs/fourn/commande/note.php
+++ b/htdocs/fourn/commande/note.php
@@ -28,7 +28,7 @@
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php';
require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -106,7 +106,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref .= '
'.$langs->trans('ThirdParty').' : '.$object->thirdparty->getNomUrl(1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' ';
if ($user->rights->fournisseur->commande->creer || $user->rights->supplier_order->creer) {
diff --git a/htdocs/fourn/facture/card-rec.php b/htdocs/fourn/facture/card-rec.php
index e996f29b3c8..3b3a0d75253 100644
--- a/htdocs/fourn/facture/card-rec.php
+++ b/htdocs/fourn/facture/card-rec.php
@@ -35,7 +35,7 @@ require_once DOL_DOCUMENT_ROOT . '/fourn/class/fournisseur.facture-rec.class.php
require_once DOL_DOCUMENT_ROOT . '/fourn/class/fournisseur.product.class.php';
require_once DOL_DOCUMENT_ROOT . '/product/class/product.class.php';
require_once DOL_DOCUMENT_ROOT . '/core/class/html.formother.class.php';
-if (! empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
include_once DOL_DOCUMENT_ROOT . '/projet/class/project.class.php';
}
require_once DOL_DOCUMENT_ROOT . '/core/class/html.formprojet.class.php';
@@ -112,10 +112,10 @@ $permissiontoedit = $user->rights->fournisseur->facture->creer || $user->rights-
$usercanread = $user->rights->fournisseur->facture->lire || $user->rights->supplier_invoice->lire;
$usercancreate = $user->rights->fournisseur->facture->creer || $user->rights->supplier_invoice->creer;
$usercandelete = $user->rights->fournisseur->facture->supprimer || $user->rights->supplier_invoice->supprimer;
-$usercanvalidate = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($usercancreate)) || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->fournisseur->supplier_invoice_advance->validate)));
+$usercanvalidate = ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($usercancreate)) || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->fournisseur->supplier_invoice_advance->validate)));
$usercansend = (empty($conf->global->MAIN_USE_ADVANCED_PERMS) || $user->rights->fournisseur->supplier_invoice_advance->send);
-$usercanproductignorepricemin = ((! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && empty($user->rights->produit->ignore_price_min_advance)) || empty($conf->global->MAIN_USE_ADVANCED_PERMS));
+$usercanproductignorepricemin = ((!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && empty($user->rights->produit->ignore_price_min_advance)) || empty($conf->global->MAIN_USE_ADVANCED_PERMS));
$usercancreatemargin = $user->rights->margins->creer;
$usercanreadallmargin = $user->rights->margins->liretous;
$usercancreatewithdrarequest = $user->rights->prelevement->bons->creer;
@@ -301,7 +301,7 @@ if (empty($reshook)) {
} elseif ($action == 'setdate_when' && $usercancreate) {
// Set next date of execution
$date = dol_mktime(GETPOST('date_whenhour'), GETPOST('date_whenmin'), 0, GETPOST('date_whenmonth'), GETPOST('date_whenday'), GETPOST('date_whenyear'));
- if (! empty($date)) {
+ if (!empty($date)) {
$object->setNextDate($date);
}
} elseif ($action == 'setnb_gen_max' && $usercancreate) {
@@ -484,7 +484,7 @@ if (empty($reshook)) {
$res = $productsupplier->fetch($idprod); // Load product from its id
// Call to init some price properties of $productsupplier
// So if a supplier price already exists for another thirdparty (first one found), we use it as reference price
- if (! empty($conf->global->SUPPLIER_TAKE_FIRST_PRICE_IF_NO_PRICE_FOR_CURRENT_SUPPLIER)) {
+ if (!empty($conf->global->SUPPLIER_TAKE_FIRST_PRICE_IF_NO_PRICE_FOR_CURRENT_SUPPLIER)) {
$fksoctosearch = 0;
$productsupplier->get_buyprice(0, -1, $idprod, 'none', $fksoctosearch); // We force qty to -1 to be sure to find if a supplier price exist
if ($productsupplier->fourn_socid != $socid) { // The price we found is for another supplier, so we clear supplier price
@@ -502,7 +502,7 @@ if (empty($reshook)) {
}
}
- if (! $error && ($qty >= 0) && (! empty($product_desc) || (! empty($idprod) && $idprod > 0))) {
+ if (! $error && ($qty >= 0) && (!empty($product_desc) || (!empty($idprod) && $idprod > 0))) {
$ret = $object->fetch($id);
if ($ret < 0) {
dol_print_error($db, $object->error);
@@ -524,7 +524,7 @@ if (empty($reshook)) {
// Ecrase $tva_tx par celui du produit
// Ecrase $base_price_type par celui du produit
// Replaces $fk_unit with the product's
- if (! empty($idprod) && $idprod > 0) {
+ if (!empty($idprod) && $idprod > 0) {
$prod = new Product($db);
$prod->fetch($idprod);
@@ -553,7 +553,7 @@ if (empty($reshook)) {
$tmpprodvat = price2num(preg_replace('/\s*\(.*\)/', '', $prod->tva_tx));
// if price ht was forced (ie: from gui when calculated by margin rate and cost price). TODO Why this ?
- if (! empty($price_ht)) {
+ if (!empty($price_ht)) {
$pu_ht = price2num($price_ht, 'MU');
$pu_ttc = price2num($pu_ht * (1 + ($tmpvat / 100)), 'MU');
} elseif ($tmpvat != $tmpprodvat) {
@@ -569,7 +569,7 @@ if (empty($reshook)) {
$desc = '';
// Define output language
- if (! empty($conf->global->MAIN_MULTILANGS) && ! empty($conf->global->PRODUIT_TEXTS_IN_THIRDPARTY_LANGUAGE)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && !empty($conf->global->PRODUIT_TEXTS_IN_THIRDPARTY_LANGUAGE)) {
$outputlangs = $langs;
$newlang = '';
if (empty($newlang) && GETPOST('lang_id', 'aZ09')) {
@@ -578,12 +578,12 @@ if (empty($reshook)) {
if (empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
- if (! empty($newlang)) {
+ if (!empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
}
- $desc = (! empty($prod->multilangs [$outputlangs->defaultlang] ["description"])) ? $prod->multilangs [$outputlangs->defaultlang] ["description"] : $prod->description;
+ $desc = (!empty($prod->multilangs [$outputlangs->defaultlang] ["description"])) ? $prod->multilangs [$outputlangs->defaultlang] ["description"] : $prod->description;
} else {
$desc = $prod->description;
}
@@ -591,10 +591,10 @@ if (empty($reshook)) {
$desc = dol_concatdesc($desc, $product_desc);
// Add custom code and origin country into description
- if (empty($conf->global->MAIN_PRODUCT_DISABLE_CUSTOMCOUNTRYCODE) && (! empty($prod->customcode) || ! empty($prod->country_code))) {
+ if (empty($conf->global->MAIN_PRODUCT_DISABLE_CUSTOMCOUNTRYCODE) && (!empty($prod->customcode) || !empty($prod->country_code))) {
$tmptxt = '(';
// Define output language
- if (! empty($conf->global->MAIN_MULTILANGS) && ! empty($conf->global->PRODUIT_TEXTS_IN_THIRDPARTY_LANGUAGE)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && !empty($conf->global->PRODUIT_TEXTS_IN_THIRDPARTY_LANGUAGE)) {
$outputlangs = $langs;
$newlang = '';
if (empty($newlang) && GETPOST('lang_id', 'alpha')) {
@@ -603,28 +603,28 @@ if (empty($reshook)) {
if (empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
- if (! empty($newlang)) {
+ if (!empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
$outputlangs->load('products');
}
- if (! empty($prod->customcode)) {
+ if (!empty($prod->customcode)) {
$tmptxt .= $outputlangs->transnoentitiesnoconv("CustomCode") . ': ' . $prod->customcode;
}
- if (! empty($prod->customcode) && ! empty($prod->country_code)) {
+ if (!empty($prod->customcode) && !empty($prod->country_code)) {
$tmptxt .= ' - ';
}
- if (! empty($prod->country_code)) {
+ if (!empty($prod->country_code)) {
$tmptxt .= $outputlangs->transnoentitiesnoconv("CountryOrigin") . ': ' . getCountry($prod->country_code, 0, $db, $outputlangs, 0);
}
} else {
- if (! empty($prod->customcode)) {
+ if (!empty($prod->customcode)) {
$tmptxt .= $langs->transnoentitiesnoconv("CustomCode") . ': ' . $prod->customcode;
}
- if (! empty($prod->customcode) && ! empty($prod->country_code)) {
+ if (!empty($prod->customcode) && !empty($prod->country_code)) {
$tmptxt .= ' - ';
}
- if (! empty($prod->country_code)) {
+ if (!empty($prod->country_code)) {
$tmptxt .= $langs->transnoentitiesnoconv("CountryOrigin") . ': ' . getCountry($prod->country_code, 0, $db, $langs, 0);
}
}
@@ -647,8 +647,8 @@ if (empty($reshook)) {
$fk_unit = GETPOST('units', 'alpha');
}
- $date_start_fill = ! empty(GETPOST('date_start_fill', 'int')) ? GETPOST('date_start_fill', 'int') : null;
- $date_end_fill = ! empty(GETPOST('date_end_fill', 'int')) ? GETPOST('date_end_fill', 'int') : null;
+ $date_start_fill = !empty(GETPOST('date_start_fill', 'int')) ? GETPOST('date_start_fill', 'int') : null;
+ $date_end_fill = !empty(GETPOST('date_end_fill', 'int')) ? GETPOST('date_end_fill', 'int') : null;
// Margin
$fournprice = price2num(GETPOST('fournprice' . $predef) ? GETPOST('fournprice' . $predef) : '');
@@ -667,7 +667,7 @@ if (empty($reshook)) {
$remise_percent = (float) price2num($remise_percent);
$price_min = (float) price2num($price_min);
- if ($usercanproductignorepricemin && (! empty($price_min) && ($pu_ht * (1 - $remise_percent / 100) < $price_min))) {
+ if ($usercanproductignorepricemin && (!empty($price_min) && ($pu_ht * (1 - $remise_percent / 100) < $price_min))) {
$mesg = $langs->trans("CantBeLessThanMinPrice", price(price2num($price_min, 'MU'), 0, $langs, 0, 0, -1, $conf->currency));
setEventMessages($mesg, null, 'errors');
} else {
@@ -778,21 +778,21 @@ if (empty($reshook)) {
// Check minimum price
$productid = GETPOST('productid', 'int');
- if (! empty($productid)) {
+ if (!empty($productid)) {
$product = new Product($db);
$product->fetch($productid);
$type = $product->type;
$price_min = $product->price_min;
- if (! empty($conf->global->PRODUIT_MULTIPRICES) && ! empty($object->thirdparty->price_level)) {
+ if (!empty($conf->global->PRODUIT_MULTIPRICES) && !empty($object->thirdparty->price_level)) {
$price_min = $product->multiprices_min[$object->thirdparty->price_level];
}
$label = $product->label;
// Check price is not lower than minimum (check is done only for standard or replacement invoices)
- if (((! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && empty($user->rights->produit->ignore_price_min_advance)) || empty($conf->global->MAIN_USE_ADVANCED_PERMS)) && $price_min && (price2num($pu_ht) * (1 - $remise_percent / 100) < price2num($price_min))) {
+ if (((!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && empty($user->rights->produit->ignore_price_min_advance)) || empty($conf->global->MAIN_USE_ADVANCED_PERMS)) && $price_min && (price2num($pu_ht) * (1 - $remise_percent / 100) < price2num($price_min))) {
setEventMessages($langs->trans("CantBeLessThanMinPrice", price(price2num($price_min, 'MU'), 0, $langs, 0, 0, -1, $conf->currency)), null, 'errors');
$error++;
}
@@ -812,8 +812,8 @@ if (empty($reshook)) {
$error++;
}
- $date_start_fill = ! empty(GETPOST('date_start_fill', 'int')) ? GETPOST('date_start_fill', 'int') : 'NULL';
- $date_end_fill = ! empty(GETPOST('date_end_fill', 'int')) ? GETPOST('date_end_fill', 'int') : 'NULL';
+ $date_start_fill = !empty(GETPOST('date_start_fill', 'int')) ? GETPOST('date_start_fill', 'int') : 'NULL';
+ $date_end_fill = !empty(GETPOST('date_end_fill', 'int')) ? GETPOST('date_end_fill', 'int') : 'NULL';
// Update line
if (! $error) {
@@ -869,7 +869,7 @@ llxHeader('', $langs->trans("RepeatableSupplierInvoice"), $help_url);
$form = new Form($db);
$formother = new FormOther($db);
-if (! empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
$companystatic = new Societe($db);
@@ -898,7 +898,7 @@ if ($action == 'create') {
print dol_get_fiche_head(null, '', '', 0);
$rowspan = 4;
- if (! empty($conf->project->enabled)) $rowspan++;
+ if (isModEnabled('project')) $rowspan++;
if ($object->fk_account > 0) $rowspan++;
print '
';
@@ -986,12 +986,12 @@ if ($action == 'create') {
print "";
// Project
- if (! empty($conf->project->enabled) && is_object($object->thirdparty) && $object->thirdparty->id > 0) {
+ if (isModEnabled('project') && is_object($object->thirdparty) && $object->thirdparty->id > 0) {
$projectid = GETPOST('projectid') ? GETPOST('projectid') : $object->fk_project;
$langs->load('projects');
print '' . $langs->trans('Project') . ' ';
$numprojet = $formproject->select_projects($object->thirdparty->id, $projectid, 'projectid', 0, 0, 1, 0, 0, 0, 0, '', 0, 0, '');
- print ' thirdparty->id . (! empty($id) ? '&id=' . $id : '')) . '">' . $langs->trans("AddProject") . ' ';
+ print ' thirdparty->id . (!empty($id) ? '&id=' . $id : '')) . '">' . $langs->trans("AddProject") . ' ';
print ' ';
}
@@ -1044,7 +1044,7 @@ if ($action == 'create') {
print "";
// Auto generate document
- if (! empty($conf->global->INVOICE_REC_CAN_DISABLE_DOCUMENT_FILE_GENERATION)) {
+ if (!empty($conf->global->INVOICE_REC_CAN_DISABLE_DOCUMENT_FILE_GENERATION)) {
print "" . $langs->trans("StatusOfGeneratedDocuments") . " ";
$select = array('0' => $langs->trans('DoNotGenerateDoc'), '1' => $langs->trans('AutoGenerateDoc'));
print $form->selectarray('generate_pdf', $select, GETPOST('generate_pdf'));
@@ -1072,7 +1072,7 @@ if ($action == 'create') {
print '';
print '
';
// Show object lines
- if (! empty($object->lines)) {
+ if (!empty($object->lines)) {
$disableedit = 1;
$disablemove = 1;
$disableremove = 1;
@@ -1119,7 +1119,7 @@ if ($action == 'create') {
// Recurring invoice content
- $linkback = '' . $langs->trans('BackToList') . ' ';
+ $linkback = '' . $langs->trans('BackToList') . ' ';
$morehtmlref = '';
if ($action != 'edittitle') {
@@ -1135,7 +1135,7 @@ if ($action == 'create') {
$morehtmlref .= ' ' . $langs->trans('ThirdParty') . ' : ' . $object->thirdparty->getNomUrl(1);
// Project
- if (! empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load('projects');
$morehtmlref .= ' ' . $langs->trans('Project') . ' ';
if ($usercancreate) {
@@ -1153,7 +1153,7 @@ if ($action == 'create') {
$morehtmlref .= $form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$project = new Project($db);
$project->fetch($object->fk_project);
$morehtmlref .= ' : ' . $project->getNomUrl(1);
@@ -1243,14 +1243,14 @@ if ($action == 'create') {
print '';
// Multicurrency
- if (! empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
// Multicurrency code
print '';
print '';
print '';
@@ -1266,7 +1266,7 @@ if ($action == 'create') {
print '';
print $form->editfieldkey('CurrencyRate', 'multicurrency_tx', '', $object, 0);
print ' ';
- if ($usercancreate && $action != 'editmulticurrencyrate' && ! empty($object->brouillon) && $object->multicurrency_code && $object->multicurrency_code != $conf->currency) {
+ if ($usercancreate && $action != 'editmulticurrencyrate' && !empty($object->brouillon) && $object->multicurrency_code && $object->multicurrency_code != $conf->currency) {
print 'id . '">' . img_edit($langs->transnoentitiesnoconv('SetMultiCurrencyCode'), 1) . ' ';
}
print '
';
@@ -1290,7 +1290,7 @@ if ($action == 'create') {
// Help of substitution key
$dateexample = dol_now();
- if (! empty($object->frequency) && ! empty($object->date_when)) {
+ if (!empty($object->frequency) && !empty($object->date_when)) {
$dateexample = $object->date_when;
}
@@ -1478,7 +1478,7 @@ if ($action == 'create') {
}
print ' ';
// Auto generate documents
- if (! empty($conf->global->INVOICE_REC_CAN_DISABLE_DOCUMENT_FILE_GENERATION)) {
+ if (!empty($conf->global->INVOICE_REC_CAN_DISABLE_DOCUMENT_FILE_GENERATION)) {
print ' ';
print '';
if ($action == 'generate_pdf' || $object->frequency > 0) {
@@ -1544,7 +1544,7 @@ if ($action == 'create') {
';
- if (! empty($conf->use_javascript_ajax) && $object->statut == 0) {
+ if (!empty($conf->use_javascript_ajax) && $object->statut == 0) {
include DOL_DOCUMENT_ROOT . '/core/tpl/ajaxrow.tpl.php';
}
@@ -1552,7 +1552,7 @@ if ($action == 'create') {
print '';
$object->fetch_lines();
// Show object lines
- if (! empty($object->lines)) {
+ if (!empty($object->lines)) {
$canchangeproduct = 1;
// To set ref for getNomURL function
foreach ($object->lines as $line) {
@@ -1598,7 +1598,7 @@ if ($action == 'create') {
if (empty($object->suspended)) {
if ($usercancreate) {
- if (! empty($object->frequency) && $object->nb_gen_max > 0 && ($object->nb_gen_done >= $object->nb_gen_max)) {
+ if (!empty($object->frequency) && $object->nb_gen_max > 0 && ($object->nb_gen_done >= $object->nb_gen_max)) {
print '';
} else {
if (empty($object->frequency) || $object->date_when <= $nowlasthour) {
diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php
index bd06da5f987..2ee737fdf0e 100644
--- a/htdocs/fourn/facture/card.php
+++ b/htdocs/fourn/facture/card.php
@@ -5,7 +5,7 @@
* Copyright (C) 2005 Marc Barilley
* Copyright (C) 2005-2013 Regis Houssin
* Copyright (C) 2010-2019 Juanjo Menent
- * Copyright (C) 2013-2015 Philippe Grand
+ * Copyright (C) 2013-2022 Philippe Grand
* Copyright (C) 2013 Florian Henry
* Copyright (C) 2014-2016 Marcos García
* Copyright (C) 2016-2022 Alexandre Spangaro
@@ -45,11 +45,11 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
-if (!empty($conf->product->enabled)) {
+if (isModEnabled("product")) {
require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/product.lib.php';
}
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
}
@@ -229,10 +229,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -273,11 +273,11 @@ if (empty($reshook)) {
// Define output language
/*$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id','aZ09'))
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id','aZ09'))
$newlang = GETPOST('lang_id','aZ09');
- if ($conf->global->MAIN_MULTILANGS && empty($newlang))
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang))
$newlang = $object->thirdparty->default_lang;
- if (! empty($newlang)) {
+ if (!empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
}
@@ -342,10 +342,10 @@ if (empty($reshook)) {
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -501,10 +501,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -1383,6 +1383,15 @@ if (empty($reshook)) {
$db->rollback();
setEventMessages($object->error, $object->errors, 'errors');
}
+ } elseif ($action == 'addline' && GETPOST('submitforalllines', 'aZ09') && GETPOST('vatforalllines', 'alpha') && $usercancreate) {
+ // Define vat_rate
+ $vat_rate = (GETPOST('vatforalllines') ? GETPOST('vatforalllines') : 0);
+ $vat_rate = str_replace('*', '', $vat_rate);
+ $localtax1_rate = get_localtax($vat_rate, 1, $object->thirdparty, $mysoc);
+ $localtax2_rate = get_localtax($vat_rate, 2, $object->thirdparty, $mysoc);
+ foreach ($object->lines as $line) {
+ $result = $object->updateline($line->id, $line->desc, $line->subprice, $vat_rate, $localtax1_rate, $localtax2_rate, $line->qty, $line->fk_product, 'HT', $line->info_bits, $line->product_type, $line->remise_percent, 0, $line->date_start, $line->date_end, $line->array_options, $line->fk_unit, $line->multicurrency_subprice, $line->ref_supplier, $line->rang);
+ }
} elseif ($action == 'addline' && $usercancreate) {
// Add a product line
$db->begin();
@@ -1648,10 +1657,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -1748,10 +1757,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -1888,7 +1897,7 @@ $form = new Form($db);
$formfile = new FormFile($db);
$bankaccountstatic = new Account($db);
$paymentstatic = new PaiementFourn($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
@@ -1915,7 +1924,7 @@ if ($action == 'create') {
if (GETPOST('socid', 'int') > 0) {
$societe = new Societe($db);
$societe->fetch(GETPOST('socid', 'int'));
- if (!empty($conf->multicurrency->enabled) && !empty($societe->multicurrency_code)) {
+ if (isModEnabled("multicurrency") && !empty($societe->multicurrency_code)) {
$currency_code = $societe->multicurrency_code;
}
}
@@ -1964,7 +1973,7 @@ if ($action == 'create') {
$dateinvoice = empty($conf->global->MAIN_AUTOFILL_DATE) ?-1 : '';
$transport_mode_id = (!empty($objectsrc->transport_mode_id) ? $objectsrc->transport_mode_id : (!empty($soc->transport_mode_id) ? $soc->transport_mode_id : 0));
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
if (!empty($objectsrc->multicurrency_code)) {
$currency_code = $objectsrc->multicurrency_code;
}
@@ -1991,7 +2000,7 @@ if ($action == 'create') {
$datetmp = dol_mktime(12, 0, 0, GETPOST('echmonth', 'int'), GETPOST('echday', 'int'), GETPOST('echyear', 'int'));
$datedue = ($datetmp == '' ?-1 : $datetmp);
- if (!empty($conf->multicurrency->enabled) && !empty($soc->multicurrency_code)) {
+ if (isModEnabled("multicurrency") && !empty($soc->multicurrency_code)) {
$currency_code = $soc->multicurrency_code;
}
}
@@ -2401,14 +2410,14 @@ if ($action == 'create') {
print '';
// Bank Account
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ''.$langs->trans('BankAccount').' ';
print img_picto('', 'bank_account', 'class="pictofixedwidth"').$form->select_comptes((GETPOSTISSET('fk_account') ?GETPOST('fk_account', 'alpha') : $fk_account), 'fk_account', 0, '', 1, '', 0, 'maxwidth200 widthcentpercentminusx', 1);
print ' ';
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$formproject = new FormProjets($db);
$langs->load('projects');
@@ -2428,7 +2437,7 @@ if ($action == 'create') {
}
// Multicurrency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
print '';
print ''.$form->editfieldkey('Currency', 'multicurrency_code', '', $object, 0).' ';
print '';
@@ -2465,7 +2474,7 @@ if ($action == 'create') {
}
// Intracomm report
- if (!empty($conf->intracommreport->enabled)) {
+ if (isModEnabled('intracommreport')) {
$langs->loadLangs(array("intracommreport"));
print ' '.$langs->trans('IntracommReportTransportMode').' ';
$form->selectTransportMode(GETPOSTISSET('transport_mode_id') ? GETPOST('transport_mode_id') : $transport_mode_id, 'transport_mode_id');
@@ -2537,7 +2546,7 @@ if ($action == 'create') {
}
print ' '.$langs->trans('AmountTTC').' '.price($objectsrc->total_ttc)." ";
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
print ''.$langs->trans('MulticurrencyAmountHT').' '.price($objectsrc->multicurrency_total_ht).' ';
print ''.$langs->trans('MulticurrencyAmountVAT').' '.price($objectsrc->multicurrency_total_tva)." ";
print ''.$langs->trans('MulticurrencyAmountTTC').' '.price($objectsrc->multicurrency_total_ttc)." ";
@@ -2613,7 +2622,7 @@ if ($action == 'create') {
$resteapayer = price2num($object->total_ttc - $totalpaid - $totalcreditnotes - $totaldeposits, 'MT');
// Multicurrency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$multicurrency_totalpaid = $object->getSommePaiement(1);
$multicurrency_totalcreditnotes = $object->getSumCreditNotesUsed(1);
$multicurrency_totaldeposits = $object->getSumDepositsUsed(1);
@@ -2645,6 +2654,8 @@ if ($action == 'create') {
/*
* View card
*/
+ $objectidnext = $object->getIdReplacingInvoice();
+
$head = facturefourn_prepare_head($object);
$titre = $langs->trans('SupplierInvoice');
@@ -2692,7 +2703,7 @@ if ($action == 'create') {
$action = '';
} else {
$text = $langs->trans('ConfirmValidateBill', $numref);
- /*if (! empty($conf->notification->enabled))
+ /*if (!empty($conf->notification->enabled))
{
require_once DOL_DOCUMENT_ROOT .'/core/class/notify.class.php';
$notify=new Notify($db);
@@ -2864,7 +2875,7 @@ if ($action == 'create') {
$morehtmlref .= ' ('.$langs->trans("OtherBills").' )';
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($usercancreate) {
@@ -2937,7 +2948,7 @@ if ($action == 'create') {
}
print ' ('.$langs->transnoentities("InvoiceHasAvoir") . (count($invoicecredits) ? ' ' : '') . implode(',', $invoicecredits) . ')';
}
- if (isset($facidnext) && $facidnext > 0) {
+ if (isset($objectidnext) && $objectidnext > 0) {
$facthatreplace = new FactureFournisseur($db);
$facthatreplace->fetch($facidnext);
print ' ('.$langs->transnoentities("ReplacedByInvoice", $facthatreplace->getNomUrl(1)).')';
@@ -3046,7 +3057,7 @@ if ($action == 'create') {
print '';
// Multicurrency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
// Multicurrency code
print '';
print '';
@@ -3095,7 +3106,7 @@ if ($action == 'create') {
}
// Bank Account
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ' ';
print '';
print $langs->trans('BankAccount');
@@ -3137,7 +3148,7 @@ if ($action == 'create') {
}
// Intracomm report
- if (!empty($conf->intracommreport->enabled)) {
+ if (isModEnabled('intracommreport')) {
$langs->loadLangs(array("intracommreport"));
print ' ';
print '';
@@ -3169,7 +3180,7 @@ if ($action == 'create') {
print '';
- if (!empty($conf->multicurrency->enabled) && ($object->multicurrency_code != $conf->currency)) {
+ if (isModEnabled("multicurrency") && ($object->multicurrency_code != $conf->currency)) {
// Multicurrency Amount HT
print ''.$form->editfieldkey('MulticurrencyAmountHT', 'multicurrency_total_ht', '', $object, 0).' ';
print ''.price($object->multicurrency_total_ht, '', $langs, 0, - 1, - 1, (!empty($object->multicurrency_code) ? $object->multicurrency_code : $conf->currency)).' ';
@@ -3247,16 +3258,16 @@ if ($action == 'create') {
}
$nbrows = 9; $nbcols = 3;
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$nbrows++;
}
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$nbrows++; $nbcols++;
}
if (!empty($conf->incoterm->enabled)) {
$nbrows++;
}
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$nbrows += 5;
}
@@ -3269,7 +3280,7 @@ if ($action == 'create') {
}
$sql = 'SELECT p.datep as dp, p.ref, p.num_paiement as num_payment, p.rowid, p.fk_bank,';
- $sql .= ' c.id as paiement_type,';
+ $sql .= ' c.id as paiement_type, c.code as payment_code,';
$sql .= ' pf.amount,';
$sql .= ' ba.rowid as baid, ba.ref as baref, ba.label, ba.number as banumber, ba.account_number, ba.fk_accountancy_journal';
$sql .= ' FROM '.MAIN_DB_PREFIX.'paiementfourn as p';
@@ -3291,7 +3302,7 @@ if ($action == 'create') {
print ''.($object->type == FactureFournisseur::TYPE_CREDIT_NOTE ? $langs->trans("PaymentsBack") : $langs->trans('Payments')).' ';
print ''.$langs->trans('Date').' ';
print ''.$langs->trans('Type').' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ''.$langs->trans('BankAccount').' ';
}
print ''.$langs->trans('Amount').' ';
@@ -3306,7 +3317,10 @@ if ($action == 'create') {
$paymentstatic->datepaye = $db->jdate($objp->dp);
$paymentstatic->ref = ($objp->ref ? $objp->ref : $objp->rowid);
$paymentstatic->num_payment = $objp->num_payment;
- $paymentstatic->payment_code = $objp->payment_code;
+
+ $paymentstatic->paiementcode = $objp->payment_code;
+ $paymentstatic->type_code = $objp->payment_code;
+ $paymentstatic->type_label = $objp->payment_type;
print '';
print '';
@@ -3316,7 +3330,7 @@ if ($action == 'create') {
print ' ';
print $form->form_modes_reglement(null, $objp->paiement_type, 'none').' '.$objp->num_payment;
print ' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
$bankaccountstatic->id = $objp->baid;
$bankaccountstatic->ref = $objp->baref;
$bankaccountstatic->label = $objp->baref;
@@ -3588,7 +3602,7 @@ if ($action == 'create') {
global $forceall, $senderissupplier, $dateSelector, $inputalsopricewithtax;
$forceall = 1; $dateSelector = 0; $inputalsopricewithtax = 1;
$senderissupplier = 2; // $senderissupplier=2 is same than 1 but disable test on minimum qty and disable autofill qty with minimum.
- //if (! empty($conf->global->SUPPLIER_INVOICE_WITH_NOPRICEDEFINED)) $senderissupplier=2;
+ //if (!empty($conf->global->SUPPLIER_INVOICE_WITH_NOPRICEDEFINED)) $senderissupplier=2;
if (!empty($conf->global->SUPPLIER_INVOICE_WITH_PREDEFINED_PRICES_ONLY)) {
$senderissupplier = 1;
}
@@ -3651,7 +3665,7 @@ if ($action == 'create') {
|| ($object->type == FactureFournisseur::TYPE_CREDIT_NOTE && empty($discount->id))
|| ($object->type == FactureFournisseur::TYPE_DEPOSIT && empty($discount->id)))
&& ($object->statut == FactureFournisseur::STATUS_CLOSED || $object->statut == FactureFournisseur::STATUS_ABANDONED)) { // A paid invoice (partially or completely)
- if (!$facidnext && $object->close_code != 'replaced' && $usercancreate) { // Not replaced by another invoice
+ if (!$objectidnext && $object->close_code != 'replaced' && $usercancreate) { // Not replaced by another invoice
print ''.$langs->trans('ReOpen').' ';
} else {
if ($usercancreate) {
@@ -3741,7 +3755,7 @@ if ($action == 'create') {
}
// Create event
- /*if ($conf->agenda->enabled && ! empty($conf->global->MAIN_ADD_EVENT_ON_ELEMENT_CARD)) // Add hidden condition because this is not a "workflow" action so should appears somewhere else on page.
+ /*if ($conf->agenda->enabled && !empty($conf->global->MAIN_ADD_EVENT_ON_ELEMENT_CARD)) // Add hidden condition because this is not a "workflow" action so should appears somewhere else on page.
{
print '';
}*/
diff --git a/htdocs/fourn/facture/contact.php b/htdocs/fourn/facture/contact.php
index 1096cb1eae8..ad36d63e9a7 100644
--- a/htdocs/fourn/facture/contact.php
+++ b/htdocs/fourn/facture/contact.php
@@ -31,7 +31,7 @@ require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php';
require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formcompany.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -137,7 +137,7 @@ if ($id > 0 || !empty($ref)) {
$morehtmlref .= ' ('.$langs->trans("OtherBills").' )';
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->facture->creer) {
diff --git a/htdocs/fourn/facture/document.php b/htdocs/fourn/facture/document.php
index 6cedd8884df..4479b89c34d 100644
--- a/htdocs/fourn/facture/document.php
+++ b/htdocs/fourn/facture/document.php
@@ -35,7 +35,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -116,7 +116,7 @@ if ($object->id > 0) {
$morehtmlref .= ' ('.$langs->trans("OtherBills").' )';
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->facture->creer) {
diff --git a/htdocs/fourn/facture/info.php b/htdocs/fourn/facture/info.php
index de5985ae28f..c5491dfdbfd 100644
--- a/htdocs/fourn/facture/info.php
+++ b/htdocs/fourn/facture/info.php
@@ -30,7 +30,7 @@ require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php';
require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -79,7 +79,7 @@ if (empty($conf->global->MAIN_DISABLE_OTHER_LINK) && $object->thirdparty->id > 0
$morehtmlref .= ' ('.$langs->trans("OtherBills").' )';
}
// Project
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' ';
if ($user->rights->facture->creer) {
diff --git a/htdocs/fourn/facture/list-rec.php b/htdocs/fourn/facture/list-rec.php
index f876462e15f..93519ff9524 100644
--- a/htdocs/fourn/facture/list-rec.php
+++ b/htdocs/fourn/facture/list-rec.php
@@ -248,7 +248,7 @@ llxHeader('', $langs->trans("RepeatableSupplierInvoices"), $help_url);
$form = new Form($db);
$formother = new FormOther($db);
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$formproject = new FormProjets($db);
}
$companystatic = new Societe($db);
diff --git a/htdocs/fourn/facture/list.php b/htdocs/fourn/facture/list.php
index f9419653c2f..4c5b84ea4ee 100644
--- a/htdocs/fourn/facture/list.php
+++ b/htdocs/fourn/facture/list.php
@@ -10,7 +10,7 @@
* Copyright (C) 2015 Abbes Bahfir
* Copyright (C) 2015-2016 Ferran Marcet
* Copyright (C) 2017 Josep Lluís Amador
- * Copyright (C) 2018 Charlene Benke
+ * Copyright (C) 2018-2022 Charlene Benke
* Copyright (C) 2018-2020 Frédéric France
* Copyright (C) 2019-2021 Alexandre Spangaro
*
@@ -195,13 +195,13 @@ $arrayfields = array(
'u.login'=>array('label'=>"Author", 'checked'=>1),
'dynamount_payed'=>array('label'=>"Paid", 'checked'=>0),
'rtp'=>array('label'=>"Rest", 'checked'=>0),
- 'f.multicurrency_code'=>array('label'=>'Currency', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1)),
- 'f.multicurrency_tx'=>array('label'=>'CurrencyRate', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1)),
- 'f.multicurrency_total_ht'=>array('label'=>'MulticurrencyAmountHT', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1)),
- 'f.multicurrency_total_vat'=>array('label'=>'MulticurrencyAmountVAT', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1)),
- 'f.multicurrency_total_ttc'=>array('label'=>'MulticurrencyAmountTTC', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1)),
- 'multicurrency_dynamount_payed'=>array('label'=>'MulticurrencyAlreadyPaid', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1)),
- 'multicurrency_rtp'=>array('label'=>'MulticurrencyRemainderToPay', 'checked'=>0, 'enabled'=>(empty($conf->multicurrency->enabled) ? 0 : 1)), // Not enabled by default because slow
+ 'f.multicurrency_code'=>array('label'=>'Currency', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1)),
+ 'f.multicurrency_tx'=>array('label'=>'CurrencyRate', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1)),
+ 'f.multicurrency_total_ht'=>array('label'=>'MulticurrencyAmountHT', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1)),
+ 'f.multicurrency_total_vat'=>array('label'=>'MulticurrencyAmountVAT', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1)),
+ 'f.multicurrency_total_ttc'=>array('label'=>'MulticurrencyAmountTTC', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1)),
+ 'multicurrency_dynamount_payed'=>array('label'=>'MulticurrencyAlreadyPaid', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1)),
+ 'multicurrency_rtp'=>array('label'=>'MulticurrencyRemainderToPay', 'checked'=>0, 'enabled'=>(!isModEnabled("multicurrency") ? 0 : 1)), // Not enabled by default because slow
'f.datec'=>array('label'=>"DateCreation", 'checked'=>0, 'position'=>500),
'f.tms'=>array('label'=>"DateModificationShort", 'checked'=>0, 'position'=>500),
'f.fk_statut'=>array('label'=>"Status", 'checked'=>1, 'position'=>1000),
@@ -404,8 +404,6 @@ $facturestatic = new FactureFournisseur($db);
$formcompany = new FormCompany($db);
$thirdparty = new Societe($db);
-// llxHeader('',$langs->trans("SuppliersInvoices"),'EN:Suppliers_Invoices|FR:FactureFournisseur|ES:Facturas_de_proveedores');
-
$sql = "SELECT";
if ($search_all || $search_product_category > 0) {
$sql = 'SELECT DISTINCT';
@@ -651,7 +649,7 @@ if (!$search_all) {
}
}
// Add GroupBy from hooks
- $parameters = array('all' => $all, 'fieldstosearchall' => $fieldstosearchall);
+ $parameters = array('all' => $search_all, 'fieldstosearchall' => $fieldstosearchall);
$reshook = $hookmanager->executeHooks('printFieldListGroupBy', $parameters, $object); // Note that $action and $object may have been modified by hook
$sql .= $hookmanager->resPrint;
} else {
@@ -684,7 +682,7 @@ if ($resql) {
$arrayofselected = is_array($toselect) ? $toselect : array();
- if ($num == 1 && !empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE) && $sall) {
+ if ($num == 1 && !empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE) && $search_all) {
$obj = $db->fetch_object($resql);
$id = $obj->facid;
@@ -902,7 +900,7 @@ if ($resql) {
$moreforfilter .= '';
}
// If the user can view prospects other than his'
- if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire && ($user->rights->produit->lire || $user->rights->service->lire)) {
+ if (isModEnabled('categorie') && $user->rights->categorie->lire && ($user->rights->produit->lire || $user->rights->service->lire)) {
include_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
$moreforfilter .= '';
$tmptitle = $langs->trans('IncludingProductWithTag');
@@ -911,7 +909,7 @@ if ($resql) {
$moreforfilter .= '
';
}
- if (!empty($conf->categorie->enabled)) {
+ if (isModEnabled('categorie')) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
$moreforfilter .= '';
$tmptitle = $langs->trans('SuppliersCategoriesShort');
@@ -965,7 +963,7 @@ if ($resql) {
FactureFournisseur::TYPE_DEPOSIT=>$langs->trans("InvoiceDeposit"),
);
/*
- if (! empty($conf->global->INVOICE_USE_SITUATION))
+ if (!empty($conf->global->INVOICE_USE_SITUATION))
{
$listtype[Facture::TYPE_SITUATION] = $langs->trans("InvoiceSituation");
}
@@ -1293,6 +1291,14 @@ if ($resql) {
if ($num > 0) {
$i = 0;
$totalarray = array();
+ $totalarray['nbfield']=0;
+ $totalarray['val'] = array();
+ $totalarray['val']['f.total_ht']=0;
+ $totalarray['val']['f.total_vat']=0;
+ $totalarray['val']['f.total_localtax1']=0;
+ $totalarray['val']['f.total_localtax1']=0;
+ $totalarray['val']['f.total_ttc']=0;
+
while ($i < min($num, $limit)) {
$obj = $db->fetch_object($resql);
diff --git a/htdocs/fourn/facture/note.php b/htdocs/fourn/facture/note.php
index 46a9f8fdc44..c405b6bab12 100644
--- a/htdocs/fourn/facture/note.php
+++ b/htdocs/fourn/facture/note.php
@@ -30,7 +30,7 @@ require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php';
require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php';
require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -110,7 +110,7 @@ if ($object->id > 0) {
$morehtmlref .= ' (
'.$langs->trans("OtherBills").' )';
}
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' ';
if ($user->rights->fournisseur->commande->creer || $user->rights->supplier_order->creer) {
@@ -179,11 +179,13 @@ if ($object->id > 0) {
}
print ' ('.$langs->transnoentities("InvoiceHasAvoir") . implode(',', $invoicecredits) . ')';
}
+ /*
if ($facidnext > 0) {
$facthatreplace = new FactureFournisseur($db);
$facthatreplace->fetch($facidnext);
print ' ('.$langs->transnoentities("ReplacedByInvoice", $facthatreplace->getNomUrl(1)).')';
}
+ */
print '
';
// Label
@@ -197,13 +199,13 @@ if ($object->id > 0) {
// Amount Local Taxes
//TODO: Place into a function to control showing by country or study better option
- if ($societe->localtax1_assuj == "1") { //Localtax1
- print ''.$langs->transcountry("AmountLT1", $societe->country_code).' ';
+ if ($mysoc->localtax1_assuj == "1") { //Localtax1
+ print ''.$langs->transcountry("AmountLT1", $mysoc->country_code).' ';
print ''.price($object->total_localtax1, 1, $langs, 0, -1, -1, $conf->currency).' ';
print ' ';
}
- if ($societe->localtax2_assuj == "1") { //Localtax2
- print ''.$langs->transcountry("AmountLT2", $societe->country_code).' ';
+ if ($mysoc->localtax2_assuj == "1") { //Localtax2
+ print ''.$langs->transcountry("AmountLT2", $mysoc->country_code).' ';
print ''.price($object->total_localtax2, 1, $langs, 0, -1, -1, $conf->currency).' ';
print ' ';
}
diff --git a/htdocs/fourn/facture/paiement.php b/htdocs/fourn/facture/paiement.php
index 832e93ff026..d9b755fdf4e 100644
--- a/htdocs/fourn/facture/paiement.php
+++ b/htdocs/fourn/facture/paiement.php
@@ -224,7 +224,7 @@ if (empty($reshook)) {
$error++;
}
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
// If bank module is on, account is required to enter a payment
if (GETPOST('accountid') <= 0) {
setEventMessages($langs->transnoentities('ErrorFieldRequired', $langs->transnoentities('AccountToCredit')), null, 'errors');
@@ -504,7 +504,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
print ''.$langs->trans('PaymentMode').' ';
$form->select_types_paiements(!GETPOST('paiementid') ? $obj->fk_mode_reglement : GETPOST('paiementid'), 'paiementid');
print ' ';
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print ''.$langs->trans('Account').' ';
print img_picto('', 'bank_account', 'class="pictofixedwidth"');
print $form->select_comptes(empty($accountid) ? $obj->fk_account : $accountid, 'accountid', 0, '', 2, '', 0, 'widthcentpercentminusx maxwidth500', 1);
@@ -575,7 +575,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
print ' '.$langs->trans('RefSupplier').' ';
print ''.$langs->trans('Date').' ';
print ''.$langs->trans('DateMaxPayment').' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
print ''.$langs->trans('Currency').' ';
print ''.$langs->trans('MulticurrencyAmountTTC').' ';
print ''.$langs->trans('MulticurrencyAlreadyPaid').' ';
@@ -612,7 +612,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
$remaintopay = price2num($invoice->total_ttc - $paiement - $creditnotes - $deposits, 'MT');
// Multicurrency Price
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$multicurrency_payment = $invoice->getSommePaiement(1);
$multicurrency_creditnotes = $invoice->getSumCreditNotesUsed(1);
$multicurrency_deposits = $invoice->getSumDepositsUsed(1);
@@ -653,7 +653,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
}
// Multicurrency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
// Currency
print ''.$objp->multicurrency_code." \n";
@@ -767,7 +767,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
// Print total
print '';
print ''.$langs->trans('TotalTTC').': ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
print ' ';
print ' ';
print ' ';
diff --git a/htdocs/fourn/index.php b/htdocs/fourn/index.php
index 1dc3e963db7..68a6d663d8a 100644
--- a/htdocs/fourn/index.php
+++ b/htdocs/fourn/index.php
@@ -99,7 +99,7 @@ if ($resql) {
// Draft orders
-if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) {
+if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) {
$langs->load("orders");
$sql = "SELECT cf.rowid, cf.ref, cf.total_ttc,";
@@ -157,7 +157,7 @@ if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SU
}
// Draft invoices
-if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_invoice->enabled)) && $user->rights->fournisseur->facture->lire) {
+if (((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_invoice")) && $user->rights->fournisseur->facture->lire) {
$sql = "SELECT ff.ref_supplier, ff.rowid, ff.total_ttc, ff.type";
$sql .= ", s.nom as name, s.rowid as socid";
$sql .= " FROM ".MAIN_DB_PREFIX."facture_fourn as ff";
diff --git a/htdocs/fourn/paiement/card.php b/htdocs/fourn/paiement/card.php
index 3c2c864346a..c7c1297e0e8 100644
--- a/htdocs/fourn/paiement/card.php
+++ b/htdocs/fourn/paiement/card.php
@@ -19,26 +19,34 @@
*/
/**
- * \file htdocs/fourn/paiement/card.php
- * \ingroup facture, fournisseur
- * \brief Tab to show a payment of a supplier invoice
- * \remarks Fichier presque identique a compta/paiement/card.php
+ * \file htdocs/fourn/paiement/card.php
+ * \ingroup facture, fournisseur
+ * \brief Tab to show a payment of a supplier invoice
+ * \remarks Fichier presque identique a compta/paiement/card.php
*/
+
+// Load Dolibarr environment
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
-require_once DOL_DOCUMENT_ROOT.'/fourn/class/paiementfourn.class.php';
+require_once DOL_DOCUMENT_ROOT.'/core/lib/payments.lib.php';
require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php';
require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php';
-require_once DOL_DOCUMENT_ROOT.'/core/lib/payments.lib.php';
+require_once DOL_DOCUMENT_ROOT.'/fourn/class/paiementfourn.class.php';
-$langs->loadLangs(array('bills', 'banks', 'companies', 'suppliers'));
-$id = GETPOST('id', 'int');
+// Load translation files required by the page
+$langs->loadLangs(array('banks', 'bills', 'companies', 'suppliers'));
+
+
+// Get Parameters
+$id = GETPOST('id', 'int');
$action = GETPOST('action', 'alpha');
-$confirm = GETPOST('confirm', 'alpha');
+$confirm = GETPOST('confirm', 'alpha');
+// Initialize objects
$object = new PaiementFourn($db);
+
// Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context
$hookmanager->initHooks(array('supplierpaymentcard', 'globalcard'));
@@ -220,7 +228,7 @@ if ($result > 0) {
$allow_delete = 1;
// Bank account
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
if ($object->fk_account) {
$bankline = new AccountLine($db);
$bankline->fetch($object->bank_line);
diff --git a/htdocs/fourn/paiement/document.php b/htdocs/fourn/paiement/document.php
index a8a41b3fde6..e26734ed9c6 100644
--- a/htdocs/fourn/paiement/document.php
+++ b/htdocs/fourn/paiement/document.php
@@ -23,30 +23,36 @@
*/
/**
- * \file htdocs/fourn/paiement/document.php
- * \ingroup facture, fournisseur
- * \brief Management page of attached documents to a payment
+ * \file htdocs/fourn/paiement/document.php
+ * \ingroup facture, fournisseur
+ * \brief Management page of attached documents to a payment
*/
+
+// Load Dolibarr environment
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
-require_once DOL_DOCUMENT_ROOT.'/fourn/class/paiementfourn.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/payments.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php';
-if (!empty($conf->project->enabled)) {
+require_once DOL_DOCUMENT_ROOT.'/fourn/class/paiementfourn.class.php';
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
-// Load translation files required by the page
-$langs->loadLangs(array('bills', 'banks', 'companies', 'suppliers', 'other'));
+// Load translation files required by the page
+$langs->loadLangs(array('banks', 'bills', 'companies', 'suppliers', 'other'));
+
+
+// Get Parameters
$id = GETPOST('id', 'int');
$ref = GETPOST('ref', 'alpha');
$action = GETPOST('action', 'aZ09');
$confirm = GETPOST('confirm', 'alpha');
+
// Security check
if ($user->socid) {
$socid = $user->socid;
@@ -124,7 +130,7 @@ if ($object->id > 0) {
$allow_delete = 1;
// Bank account
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
if ($object->fk_account) {
$bankline = new AccountLine($db);
$bankline->fetch($object->bank_line);
diff --git a/htdocs/fourn/paiement/info.php b/htdocs/fourn/paiement/info.php
index 8032b2b418f..5979c2ff1ee 100644
--- a/htdocs/fourn/paiement/info.php
+++ b/htdocs/fourn/paiement/info.php
@@ -18,20 +18,26 @@
*/
/**
- * \file htdocs/fourn/paiement/info.php
- * \ingroup facture
- * \brief Onglet info d'un paiement fournisseur
+ * \file htdocs/fourn/paiement/info.php
+ * \ingroup facture, fournisseur
+ * \brief Tab for Supplier Payment Information
*/
+
+// Load Dolibarr environment
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/fourn/class/paiementfourn.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/payments.lib.php';
+require_once DOL_DOCUMENT_ROOT.'/fourn/class/paiementfourn.class.php';
+
+// Load translation files required by the page
$langs->loadLangs(array("bills", "suppliers", "companies"));
+// Get Parameters
$id = GETPOST('id', 'int');
+// Initialize Objects
$object = new PaiementFourn($db);
// Load object
diff --git a/htdocs/fourn/paiement/list.php b/htdocs/fourn/paiement/list.php
index 13812e3595f..edffba6a7a8 100644
--- a/htdocs/fourn/paiement/list.php
+++ b/htdocs/fourn/paiement/list.php
@@ -103,7 +103,7 @@ $arrayfields = array(
's.nom' =>array('label'=>"ThirdParty", 'checked'=>1, 'position'=>30),
'c.libelle' =>array('label'=>"Type", 'checked'=>1, 'position'=>40),
'p.num_paiement' =>array('label'=>"Numero", 'checked'=>1, 'position'=>50, 'tooltip'=>"ChequeOrTransferNumber"),
- 'ba.label' =>array('label'=>"Account", 'checked'=>1, 'position'=>60, 'enable'=>(!empty($conf->banque->enabled))),
+ 'ba.label' =>array('label'=>"Account", 'checked'=>1, 'position'=>60, 'enable'=>(isModEnabled("banque"))),
'p.amount' =>array('label'=>"Amount", 'checked'=>1, 'position'=>70),
);
$arrayfields = dol_sort_array($arrayfields, 'position');
diff --git a/htdocs/fourn/product/list.php b/htdocs/fourn/product/list.php
index a89b25c2201..4bd64a60fc8 100644
--- a/htdocs/fourn/product/list.php
+++ b/htdocs/fourn/product/list.php
@@ -21,18 +21,24 @@
*/
/**
- * \file htdocs/fourn/product/list.php
- * \ingroup produit
- * \brief Page to list supplier products and services
+ * \file htdocs/fourn/product/list.php
+ * \ingroup product
+ * \brief Page to list supplier products and services
*/
+
+// Load Dolibarr environment
require '../../main.inc.php';
-require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
-require_once DOL_DOCUMENT_ROOT.'/societe/class/societe.class.php';
-require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php';
+require_once DOL_DOCUMENT_ROOT .'/product/class/product.class.php';
+require_once DOL_DOCUMENT_ROOT .'/societe/class/societe.class.php';
+require_once DOL_DOCUMENT_ROOT .'/fourn/class/fournisseur.class.php';
-$langs->loadLangs(array("products", "suppliers"));
+// Load translation files required by the page
+$langs->loadLangs(array('products', 'suppliers'));
+
+
+// Get Parameters
$sref = GETPOST('sref', 'alphanohtml');
$sRefSupplier = GETPOST('srefsupplier');
$snom = GETPOST('snom', 'alphanohtml');
@@ -72,6 +78,7 @@ if (empty($user->rights->produit->lire) && empty($user->rights->service->lire))
accessforbidden();
}
+// Permissions
$permissiontoadd = ($user->hasRight('produit', 'lire') || $user->hasRight('service', 'lire'));
@@ -111,6 +118,7 @@ if (empty($reshook)) {
}
}
+
/*
* View
*/
diff --git a/htdocs/fourn/recap-fourn.php b/htdocs/fourn/recap-fourn.php
index 0e551d4e16d..b5489a3d8e0 100644
--- a/htdocs/fourn/recap-fourn.php
+++ b/htdocs/fourn/recap-fourn.php
@@ -63,7 +63,7 @@ if ($socid > 0) {
dol_banner_tab($societe, 'socid', '', ($user->socid ? 0 : 1), 'rowid', 'nom');
print dol_get_fiche_end();
- if ((!empty($conf->fournisseur->enabled) && $user->rights->fournisseur->facture->lire && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || (!empty($conf->supplier_invoice->enabled) && $user->rights->supplier_invoice->lire)) {
+ if ((isModEnabled("fournisseur") && $user->rights->fournisseur->facture->lire && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || (isModEnabled("supplier_invoice") && $user->rights->supplier_invoice->lire)) {
// Invoice list
print load_fiche_titre($langs->trans("SupplierPreview"));
diff --git a/htdocs/ftp/index.php b/htdocs/ftp/index.php
index 66a8354437b..f798ff10973 100644
--- a/htdocs/ftp/index.php
+++ b/htdocs/ftp/index.php
@@ -498,14 +498,30 @@ if (!function_exists('ftp_connect')) {
//$newsection = '/./';
$newsection = ssh2_sftp_realpath($conn_id, ".").'/./'; // workaround for bug https://bugs.php.net/bug.php?id=64169
}
+
//$newsection='/';
//$dirHandle = opendir("ssh2.sftp://$conn_id".$newsection);
//$dirHandle = opendir("ssh2.sftp://".intval($conn_id).ssh2_sftp_realpath($conn_id, ".").'/./');
+
$contents = scandir('ssh2.sftp://'.intval($conn_id).$newsection);
$buff = array();
foreach ($contents as $i => $key) {
$buff[$i] = "---------- - root root 1234 Aug 01 2000 ".$key;
}
+
+ //$i = 0;
+ //$handle = opendir('ssh2.sftp://'.intval($conn_id).$newsection);
+ //$buff=array();
+ //while (false !== ($file = readdir($handle))) {
+ // if (substr("$file", 0, 1) != "."){
+ // if (is_dir($file)) {
+ // $buff[$i]="d--------- - root root 1234 Aug 01 2000 ".$file;
+ // } else {
+ // $buff[$i]="---------- - root root 1234 Aug 01 2000 ".$file;
+ // }
+ // }
+ // $i++;
+ //}
} else {
$buff = ftp_rawlist($conn_id, $newsectioniso);
$contents = ftp_nlist($conn_id, $newsectioniso); // Sometimes rawlist fails but never nlist
@@ -631,7 +647,7 @@ if (!function_exists('ftp_connect')) {
// Actions
/*
- if ($user->rights->ftp->write && ! empty($section))
+ if ($user->rights->ftp->write && !empty($section))
{
$formfile->form_attach_new_file(DOL_URL_ROOT.'/ftp/index.php','',0,$section,1);
}
diff --git a/htdocs/holiday/card.php b/htdocs/holiday/card.php
index f9112f5faad..f1faf827b34 100644
--- a/htdocs/holiday/card.php
+++ b/htdocs/holiday/card.php
@@ -254,6 +254,12 @@ if (empty($reshook)) {
$error++;
}
+ $approverslist = $object->fetch_users_approver_holiday();
+ if (!in_array($approverid, $approverslist)) {
+ setEventMessages($langs->transnoentitiesnoconv('InvalidValidator'), null, 'errors');
+ $error++;
+ }
+
$result = 0;
if (!$error) {
@@ -284,7 +290,7 @@ if (empty($reshook)) {
}
}
- // If this is an update and we are an approver, we can update to change the approver
+ // If this is an update and we are an approver, we can update to change the expected approver with another one (including himself)
if ($action == 'update' && GETPOSTISSET('savevalidator') && !empty($user->rights->holiday->approve)) {
$object->fetch($id);
@@ -558,9 +564,10 @@ if (empty($reshook)) {
if ($object->statut == Holiday::STATUS_VALIDATED && $user->id == $object->fk_validator) {
$object->oldcopy = dol_clone($object);
- $object->date_valid = dol_now();
- $object->fk_user_valid = $user->id;
+ $object->date_approval = dol_now();
+ $object->fk_user_approve = $user->id;
$object->statut = Holiday::STATUS_APPROVED;
+ $object->status = Holiday::STATUS_APPROVED;
$db->begin();
@@ -663,6 +670,7 @@ if (empty($reshook)) {
$object->date_refuse = dol_print_date('dayhour', dol_now());
$object->fk_user_refuse = $user->id;
$object->statut = Holiday::STATUS_REFUSED;
+ $object->status = Holiday::STATUS_REFUSED;
$object->detail_refuse = GETPOST('detail_refuse', 'alphanohtml');
$db->begin();
@@ -751,6 +759,7 @@ if (empty($reshook)) {
$oldstatus = $object->statut;
$object->statut = Holiday::STATUS_DRAFT;
+ $object->status = Holiday::STATUS_DRAFT;
$result = $object->update($user);
if ($result < 0) {
@@ -783,6 +792,7 @@ if (empty($reshook)) {
$object->date_cancel = dol_now();
$object->fk_user_cancel = $user->id;
$object->statut = Holiday::STATUS_CANCELED;
+ $object->status = Holiday::STATUS_CANCELED;
$result = $object->update($user);
@@ -1497,8 +1507,8 @@ if ((empty($id) && empty($ref)) || $action == 'create' || $action == 'add') {
}
}
if ($object->statut == Holiday::STATUS_APPROVED) { // If validated and approved
- if ($user->id == $object->fk_validator || $cancreate || $cancreateall) {
- if (($object->date_debut > dol_now()) || !empty($user->admin)) {
+ if ($user->id == $object->fk_validator || $user->id == $object->fk_user_approve || $cancreate || $cancreateall) {
+ if (($object->date_debut > dol_now()) || !empty($user->admin) || $user->id == $object->fk_user_approve) {
print 'id.'&action=cancel&token='.newToken().'" class="butAction">'.$langs->trans("ActionCancelCP").' ';
} else {
print 'trans("NotAllowed").'">'.$langs->trans("ActionCancelCP").' ';
diff --git a/htdocs/holiday/class/holiday.class.php b/htdocs/holiday/class/holiday.class.php
index 806f899df36..102d37620bc 100644
--- a/htdocs/holiday/class/holiday.class.php
+++ b/htdocs/holiday/class/holiday.class.php
@@ -59,12 +59,6 @@ class Holiday extends CommonObject
*/
public $picto = 'holiday';
- /**
- * @deprecated
- * @see $id
- */
- public $rowid;
-
/**
* @var int User ID
*/
@@ -85,24 +79,29 @@ class Holiday extends CommonObject
public $statut = ''; // 1=draft, 2=validated, 3=approved
/**
- * @var int ID of user that must approve. TODO: there is no date for validation (date_valid is used for approval), add one.
+ * @var int ID of user that must approve. Real user for approval is fk_user_valid (old version) or fk_user_approve (new versions)
*/
public $fk_validator;
/**
- * @var int Date of approval. TODO: Add a field for approval date and use date_valid instead for validation.
+ * @var int Date of validation or approval. TODO: Use date_valid instead for validation.
*/
public $date_valid = '';
/**
- * @var int ID of user that has approved (empty if not approved)
+ * @var int ID of user that has validated
*/
public $fk_user_valid;
/**
- * @var int Date approbation
+ * @var int Date approval
*/
- public $date_approbation;
+ public $date_approval;
+
+ /**
+ * @var int ID of user that has approved
+ */
+ public $fk_user_approve;
/**
* @var int Date for refuse
@@ -383,6 +382,8 @@ class Holiday extends CommonObject
$sql .= " cp.fk_validator,";
$sql .= " cp.date_valid,";
$sql .= " cp.fk_user_valid,";
+ $sql .= " cp.date_approval,";
+ $sql .= " cp.fk_user_approve,";
$sql .= " cp.date_refuse,";
$sql .= " cp.fk_user_refuse,";
$sql .= " cp.date_cancel,";
@@ -420,6 +421,8 @@ class Holiday extends CommonObject
$this->fk_validator = $obj->fk_validator;
$this->date_valid = $this->db->jdate($obj->date_valid);
$this->fk_user_valid = $obj->fk_user_valid;
+ $this->date_approval = $this->db->jdate($obj->date_approval);
+ $this->fk_user_approve = $obj->fk_user_approve;
$this->date_refuse = $this->db->jdate($obj->date_refuse);
$this->fk_user_refuse = $obj->fk_user_refuse;
$this->date_cancel = $this->db->jdate($obj->date_cancel);
@@ -473,6 +476,8 @@ class Holiday extends CommonObject
$sql .= " cp.fk_validator,";
$sql .= " cp.date_valid,";
$sql .= " cp.fk_user_valid,";
+ $sql .= " cp.date_approval,";
+ $sql .= " cp.fk_user_approve,";
$sql .= " cp.date_refuse,";
$sql .= " cp.fk_user_refuse,";
$sql .= " cp.date_cancel,";
@@ -525,6 +530,7 @@ class Holiday extends CommonObject
$obj = $this->db->fetch_object($resql);
$tab_result[$i]['rowid'] = $obj->rowid;
+ $tab_result[$i]['id'] = $obj->rowid;
$tab_result[$i]['ref'] = ($obj->ref ? $obj->ref : $obj->rowid);
$tab_result[$i]['fk_user'] = $obj->fk_user;
@@ -540,6 +546,8 @@ class Holiday extends CommonObject
$tab_result[$i]['fk_validator'] = $obj->fk_validator;
$tab_result[$i]['date_valid'] = $this->db->jdate($obj->date_valid);
$tab_result[$i]['fk_user_valid'] = $obj->fk_user_valid;
+ $tab_result[$i]['date_approval'] = $this->db->jdate($obj->date_approval);
+ $tab_result[$i]['fk_user_approve'] = $obj->fk_user_approve;
$tab_result[$i]['date_refuse'] = $this->db->jdate($obj->date_refuse);
$tab_result[$i]['fk_user_refuse'] = $obj->fk_user_refuse;
$tab_result[$i]['date_cancel'] = $this->db->jdate($obj->date_cancel);
@@ -598,6 +606,8 @@ class Holiday extends CommonObject
$sql .= " cp.fk_validator,";
$sql .= " cp.date_valid,";
$sql .= " cp.fk_user_valid,";
+ $sql .= " cp.date_approval,";
+ $sql .= " cp.fk_user_approve,";
$sql .= " cp.date_refuse,";
$sql .= " cp.fk_user_refuse,";
$sql .= " cp.date_cancel,";
@@ -649,7 +659,9 @@ class Holiday extends CommonObject
$obj = $this->db->fetch_object($resql);
$tab_result[$i]['rowid'] = $obj->rowid;
+ $tab_result[$i]['id'] = $obj->rowid;
$tab_result[$i]['ref'] = ($obj->ref ? $obj->ref : $obj->rowid);
+
$tab_result[$i]['fk_user'] = $obj->fk_user;
$tab_result[$i]['fk_type'] = $obj->fk_type;
$tab_result[$i]['date_create'] = $this->db->jdate($obj->date_create);
@@ -664,6 +676,8 @@ class Holiday extends CommonObject
$tab_result[$i]['fk_validator'] = $obj->fk_validator;
$tab_result[$i]['date_valid'] = $this->db->jdate($obj->date_valid);
$tab_result[$i]['fk_user_valid'] = $obj->fk_user_valid;
+ $tab_result[$i]['date_approval'] = $this->db->jdate($obj->date_approval);
+ $tab_result[$i]['fk_user_approve'] = $obj->fk_user_approve;
$tab_result[$i]['date_refuse'] = $obj->date_refuse;
$tab_result[$i]['fk_user_refuse'] = $obj->fk_user_refuse;
$tab_result[$i]['date_cancel'] = $obj->date_cancel;
@@ -868,6 +882,16 @@ class Holiday extends CommonObject
} else {
$sql .= " fk_user_valid = NULL,";
}
+ if (!empty($this->date_approval)) {
+ $sql .= " date_approval = '".$this->db->idate($this->date_approval)."',";
+ } else {
+ $sql .= " date_approval = NULL,";
+ }
+ if (!empty($this->fk_user_approve)) {
+ $sql .= " fk_user_approve = '".$this->db->escape($this->fk_user_approve)."',";
+ } else {
+ $sql .= " fk_user_approve = NULL,";
+ }
if (!empty($this->date_refuse)) {
$sql .= " date_refuse = '".$this->db->idate($this->date_refuse)."',";
} else {
@@ -983,17 +1007,27 @@ class Holiday extends CommonObject
$sql .= " date_valid = NULL,";
}
if (!empty($this->fk_user_valid)) {
- $sql .= " fk_user_valid = '".$this->db->escape($this->fk_user_valid)."',";
+ $sql .= " fk_user_valid = ".((int) $this->fk_user_valid).",";
} else {
$sql .= " fk_user_valid = NULL,";
}
+ if (!empty($this->date_approval)) {
+ $sql .= " date_approval = '".$this->db->idate($this->date_approval)."',";
+ } else {
+ $sql .= " date_approval = NULL,";
+ }
+ if (!empty($this->fk_user_approve)) {
+ $sql .= " fk_user_approve = ".((int) $this->fk_user_approve).",";
+ } else {
+ $sql .= " fk_user_approve = NULL,";
+ }
if (!empty($this->date_refuse)) {
$sql .= " date_refuse = '".$this->db->idate($this->date_refuse)."',";
} else {
$sql .= " date_refuse = NULL,";
}
if (!empty($this->fk_user_refuse)) {
- $sql .= " fk_user_refuse = '".$this->db->escape($this->fk_user_refuse)."',";
+ $sql .= " fk_user_refuse = ".((int) $this->fk_user_refuse).",";
} else {
$sql .= " fk_user_refuse = NULL,";
}
@@ -1003,7 +1037,7 @@ class Holiday extends CommonObject
$sql .= " date_cancel = NULL,";
}
if (!empty($this->fk_user_cancel)) {
- $sql .= " fk_user_cancel = '".$this->db->escape($this->fk_user_cancel)."',";
+ $sql .= " fk_user_cancel = ".((int) $this->fk_user_cancel).",";
} else {
$sql .= " fk_user_cancel = NULL,";
}
@@ -1731,13 +1765,13 @@ class Holiday extends CommonObject
if ($type) {
// If user of Dolibarr
$sql = "SELECT";
- if (!empty($conf->multicompany->enabled) && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
+ if (isModEnabled('multicompany') && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
$sql .= " DISTINCT";
}
$sql .= " u.rowid";
$sql .= " FROM ".MAIN_DB_PREFIX."user as u";
- if (!empty($conf->multicompany->enabled) && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
+ if (isModEnabled('multicompany') && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
$sql .= ", ".MAIN_DB_PREFIX."usergroup_user as ug";
$sql .= " WHERE ((ug.fk_user = u.rowid";
$sql .= " AND ug.entity IN (".getEntity('usergroup')."))";
@@ -1821,13 +1855,13 @@ class Holiday extends CommonObject
if ($type) {
// If we need users of Dolibarr
$sql = "SELECT";
- if (!empty($conf->multicompany->enabled) && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
+ if (isModEnabled('multicompany') && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
$sql .= " DISTINCT";
}
$sql .= " u.rowid, u.lastname, u.firstname, u.gender, u.photo, u.employee, u.statut, u.fk_user";
$sql .= " FROM ".MAIN_DB_PREFIX."user as u";
- if (!empty($conf->multicompany->enabled) && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
+ if (isModEnabled('multicompany') && !empty($conf->global->MULTICOMPANY_TRANSVERSE_MODE)) {
$sql .= ", ".MAIN_DB_PREFIX."usergroup_user as ug";
$sql .= " WHERE ((ug.fk_user = u.rowid";
$sql .= " AND ug.entity IN (".getEntity('usergroup')."))";
@@ -1855,6 +1889,7 @@ class Holiday extends CommonObject
$obj = $this->db->fetch_object($resql);
$tab_result[$i]['rowid'] = $obj->rowid; // rowid of user
+ $tab_result[$i]['id'] = $obj->rowid; // id of user
$tab_result[$i]['name'] = $obj->lastname; // deprecated
$tab_result[$i]['lastname'] = $obj->lastname;
$tab_result[$i]['firstname'] = $obj->firstname;
@@ -1897,6 +1932,7 @@ class Holiday extends CommonObject
$obj = $this->db->fetch_object($resql);
$tab_result[$i]['rowid'] = $obj->rowid; // rowid of user
+ $tab_result[$i]['id'] = $obj->rowid; // id of user
$tab_result[$i]['name'] = $obj->lastname; // deprecated
$tab_result[$i]['lastname'] = $obj->lastname;
$tab_result[$i]['firstname'] = $obj->firstname;
@@ -2131,6 +2167,7 @@ class Holiday extends CommonObject
$obj = $this->db->fetch_object($resql);
$tab_result[$i]['rowid'] = $obj->rowid;
+ $tab_result[$i]['id'] = $obj->rowid;
$tab_result[$i]['date_action'] = $obj->date_action;
$tab_result[$i]['fk_user_action'] = $obj->fk_user_action;
$tab_result[$i]['fk_user_update'] = $obj->fk_user_update;
@@ -2179,7 +2216,7 @@ class Holiday extends CommonObject
$num = $this->db->num_rows($result);
if ($num) {
while ($obj = $this->db->fetch_object($result)) {
- $types[$obj->rowid] = array('rowid'=> $obj->rowid, 'code'=> $obj->code, 'label'=>$obj->label, 'affect'=>$obj->affect, 'delay'=>$obj->delay, 'newbymonth'=>$obj->newbymonth);
+ $types[$obj->rowid] = array('id'=> $obj->rowid, 'rowid'=> $obj->rowid, 'code'=> $obj->code, 'label'=>$obj->label, 'affect'=>$obj->affect, 'delay'=>$obj->delay, 'newbymonth'=>$obj->newbymonth);
}
return $types;
@@ -2206,12 +2243,13 @@ class Holiday extends CommonObject
$sql .= " f.date_create as datec,";
$sql .= " f.tms as date_modification,";
$sql .= " f.date_valid as datev,";
- $sql .= " f.date_approve as datea,";
+ $sql .= " f.date_approval as datea,";
$sql .= " f.date_refuse as dater,";
$sql .= " f.fk_user_create as fk_user_creation,";
$sql .= " f.fk_user_modif as fk_user_modification,";
- $sql .= " f.fk_user_valid as fk_user_approve_done,";
- $sql .= " f.fk_validator as fk_user_approve_expected,";
+ $sql .= " f.fk_user_valid as fk_user_validation,";
+ $sql .= " f.fk_user_approve as fk_user_approval_done,";
+ $sql .= " f.fk_validator as fk_user_approval_expected,";
$sql .= " f.fk_user_refuse as fk_user_refuse";
$sql .= " FROM ".MAIN_DB_PREFIX."holiday as f";
$sql .= " WHERE f.rowid = ".((int) $id);
@@ -2227,16 +2265,16 @@ class Holiday extends CommonObject
$this->date_creation = $this->db->jdate($obj->datec);
$this->date_modification = $this->db->jdate($obj->date_modification);
$this->date_validation = $this->db->jdate($obj->datev);
- $this->date_approbation = $this->db->jdate($obj->datea);
+ $this->date_approval = $this->db->jdate($obj->datea);
if (!empty($obj->fk_user_creation)) {
$cuser = new User($this->db);
$cuser->fetch($obj->fk_user_creation);
$this->user_creation = $cuser;
}
- if (!empty($obj->fk_user_approve_done)) {
+ if (!empty($obj->fk_user_valid)) {
$vuser = new User($this->db);
- $vuser->fetch($obj->fk_user_approve_done);
+ $vuser->fetch($obj->fk_user_valid);
$this->user_validation = $vuser;
}
if (!empty($obj->fk_user_modification)) {
@@ -2246,15 +2284,15 @@ class Holiday extends CommonObject
}
if ($obj->status == Holiday::STATUS_APPROVED || $obj->status == Holiday::STATUS_CANCELED) {
- if ($obj->fk_user_approve_done) {
+ if ($obj->fk_user_approval_done) {
$auser = new User($this->db);
- $auser->fetch($obj->fk_user_approve_done);
+ $auser->fetch($obj->fk_user_approval_done);
$this->user_approve = $auser;
}
} else {
- if (!empty($obj->fk_user_approve_expected)) {
+ if (!empty($obj->fk_user_approval_expected)) {
$auser = new User($this->db);
- $auser->fetch($obj->fk_user_approve_expected);
+ $auser->fetch($obj->fk_user_approval_expected);
$this->user_approve = $auser;
}
}
diff --git a/htdocs/holiday/define_holiday.php b/htdocs/holiday/define_holiday.php
index 85de7b09f61..3ea0d87d3cd 100644
--- a/htdocs/holiday/define_holiday.php
+++ b/htdocs/holiday/define_holiday.php
@@ -60,6 +60,17 @@ if (!$sortorder) {
}
+// Initialize technical object to manage hooks. Note that conf->hooks_modules contains array
+$hookmanager->initHooks(array('defineholidaylist'));
+$extrafields = new ExtraFields($db);
+
+$holiday = new Holiday($db);
+
+
+if (empty($conf->holiday->enabled)) {
+ accessforbidden('Module not enabled');
+}
+
// Protection if external user
if ($user->socid > 0) {
accessforbidden();
@@ -71,23 +82,6 @@ if (empty($user->rights->holiday->read)) {
}
-// Initialize technical object to manage hooks. Note that conf->hooks_modules contains array
-$hookmanager->initHooks(array('defineholidaylist'));
-$extrafields = new ExtraFields($db);
-
-$holiday = new Holiday($db);
-
-if (empty($conf->holiday->enabled)) {
- llxHeader('', $langs->trans('CPTitreMenu'));
- print '';
- print ''.$langs->trans('NotActiveModCP').' ';
- print '
';
- llxFooter();
- exit();
-}
-
-
-
/*
* Actions
*/
@@ -212,7 +206,6 @@ $title = $langs->trans('CPTitreMenu');
llxHeader('', $title);
-
$typeleaves = $holiday->getTypes(1, 1);
$result = $holiday->updateBalance(); // Create users into table holiday if they don't exists. TODO Remove this whif we use field into table user.
if ($result < 0) {
diff --git a/htdocs/holiday/document.php b/htdocs/holiday/document.php
index a4b9bcfcfdb..9d3e63bd09a 100644
--- a/htdocs/holiday/document.php
+++ b/htdocs/holiday/document.php
@@ -239,7 +239,7 @@ if ($object->id) {
print ''."\n";
print '';
- if (! empty($object->fk_user_create)) {
+ if (!empty($object->fk_user_create)) {
$userCreate=new User($db);
$userCreate->fetch($object->fk_user_create);
print '';
diff --git a/htdocs/holiday/list.php b/htdocs/holiday/list.php
index 5978b6a31be..521695b45f2 100644
--- a/htdocs/holiday/list.php
+++ b/htdocs/holiday/list.php
@@ -59,29 +59,6 @@ $id = GETPOST('id', 'int');
$childids = $user->getAllChildIds(1);
-// Security check
-$socid = 0;
-if ($user->socid > 0) { // Protection if external user
- //$socid = $user->socid;
- accessforbidden();
-}
-$result = restrictedArea($user, 'holiday', '', '');
-// If we are on the view of a specific user
-if ($id > 0) {
- $canread = 0;
- if ($id == $user->id) {
- $canread = 1;
- }
- if (!empty($user->rights->holiday->readall)) {
- $canread = 1;
- }
- if (!empty($user->rights->holiday->read) && in_array($id, $childids)) {
- $canread = 1;
- }
- if (!$canread) {
- accessforbidden();
- }
-}
$diroutputmassaction = $conf->holiday->dir_output.'/temp/massgeneration/'.$user->id;
@@ -156,15 +133,36 @@ $arrayfields = array(
// Extra fields
include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_list_array_fields.tpl.php';
-if (empty($conf->holiday->enabled)) {
- llxHeader('', $langs->trans('CPTitreMenu'));
- print '';
- print ''.$langs->trans('NotActiveModCP').' ';
- print '
';
- llxFooter();
- exit();
+
+// Security check
+$socid = 0;
+if ($user->socid > 0) { // Protection if external user
+ //$socid = $user->socid;
+ accessforbidden();
}
+if (empty($conf->holiday->enabled)) accessforbidden('Module not enabled');
+
+$result = restrictedArea($user, 'holiday', '', '');
+// If we are on the view of a specific user
+if ($id > 0) {
+ $canread = 0;
+ if ($id == $user->id) {
+ $canread = 1;
+ }
+ if (!empty($user->rights->holiday->readall)) {
+ $canread = 1;
+ }
+ if (!empty($user->rights->holiday->read) && in_array($id, $childids)) {
+ $canread = 1;
+ }
+ if (!$canread) {
+ accessforbidden();
+ }
+}
+
+
+
/*
* Actions
@@ -211,9 +209,9 @@ if (empty($reshook)) {
// Mass actions
$objectclass = 'Holiday';
$objectlabel = 'Holiday';
- $permissiontoread = $user->rights->holiday->read;
- $permissiontodelete = $user->rights->holiday->delete;
- $permissiontoapprove = $user->rights->holiday->approve;
+ $permissiontoread = $user->hasRight('holiday', 'read');
+ $permissiontodelete = $user->hasRight('holiday', 'delete');
+ $permissiontoapprove = $user->hasRight('holiday', 'approve');
$uploaddir = $conf->holiday->dir_output;
include DOL_DOCUMENT_ROOT.'/core/actions_massactions.inc.php';
}
@@ -582,7 +580,7 @@ if ($resql) {
// Approver
if (!empty($arrayfields['cp.fk_validator']['checked'])) {
- if ($user->rights->holiday->readall) {
+ if ($user->hasRight('holiday', 'readall')) {
print '';
$validator = new UserGroup($db);
$excludefilter = $user->admin ? '' : 'u.rowid <> '.$user->id;
diff --git a/htdocs/holiday/view_log.php b/htdocs/holiday/view_log.php
index ea71deb4d26..1463b91939e 100644
--- a/htdocs/holiday/view_log.php
+++ b/htdocs/holiday/view_log.php
@@ -74,11 +74,6 @@ if (!$sortorder) {
$sortorder = "DESC";
}
-// Si l'utilisateur n'a pas le droit de lire cette page
-if (!$user->rights->holiday->readall) {
- accessforbidden();
-}
-
// Load translation files required by the page
$langs->loadLangs(array('users', 'other', 'holiday'));
@@ -92,12 +87,12 @@ $arrayfields = array();
$arrayofmassactions = array();
if (empty($conf->holiday->enabled)) {
- llxHeader('', $langs->trans('CPTitreMenu'));
- print '';
- print ''.$langs->trans('NotActiveModCP').' ';
- print '
';
- llxFooter();
- exit();
+ accessforbidden('Module not enabled');
+}
+
+// Si l'utilisateur n'a pas le droit de lire cette page
+if (!$user->rights->holiday->readall) {
+ accessforbidden();
}
diff --git a/htdocs/hrm/class/evaluation.class.php b/htdocs/hrm/class/evaluation.class.php
index 77403631725..4915d44fb6f 100644
--- a/htdocs/hrm/class/evaluation.class.php
+++ b/htdocs/hrm/class/evaluation.class.php
@@ -189,7 +189,7 @@ class Evaluation extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
diff --git a/htdocs/hrm/class/evaluationdet.class.php b/htdocs/hrm/class/evaluationdet.class.php
index 8fd7d3b177a..e8476d0449d 100644
--- a/htdocs/hrm/class/evaluationdet.class.php
+++ b/htdocs/hrm/class/evaluationdet.class.php
@@ -178,7 +178,7 @@ class Evaluationline extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -500,8 +500,8 @@ class Evaluationline extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->evaluationdet->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->evaluationdet->evaluationdet_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->evaluationdet->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->evaluationdet->evaluationdet_advance->validate))))
{
$this->error='NotEnoughPermissions';
dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR);
@@ -618,8 +618,8 @@ class Evaluationline extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -642,8 +642,8 @@ class Evaluationline extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -666,8 +666,8 @@ class Evaluationline extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
diff --git a/htdocs/hrm/class/job.class.php b/htdocs/hrm/class/job.class.php
index c21335f2df5..117878c10c9 100644
--- a/htdocs/hrm/class/job.class.php
+++ b/htdocs/hrm/class/job.class.php
@@ -177,7 +177,7 @@ class Job extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -496,8 +496,8 @@ class Job extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->job->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->job->job_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->job->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->job->job_advance->validate))))
{
$this->error='NotEnoughPermissions';
dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR);
@@ -652,8 +652,8 @@ class Job extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -676,8 +676,8 @@ class Job extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -700,8 +700,8 @@ class Job extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
diff --git a/htdocs/hrm/class/position.class.php b/htdocs/hrm/class/position.class.php
index 9416907b8ed..19246dc2313 100644
--- a/htdocs/hrm/class/position.class.php
+++ b/htdocs/hrm/class/position.class.php
@@ -188,7 +188,7 @@ class Position extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
//$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -507,8 +507,8 @@ class Position extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->position->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->position->position_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->position->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->position->position_advance->validate))))
{
$this->error='NotEnoughPermissions';
dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR);
@@ -626,8 +626,8 @@ class Position extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -650,8 +650,8 @@ class Position extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -674,8 +674,8 @@ class Position extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
diff --git a/htdocs/hrm/class/skill.class.php b/htdocs/hrm/class/skill.class.php
index d9f4073e11e..2c86c5dca56 100644
--- a/htdocs/hrm/class/skill.class.php
+++ b/htdocs/hrm/class/skill.class.php
@@ -189,7 +189,7 @@ class Skill extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -564,8 +564,8 @@ class Skill extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->skill->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->skill->skill_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->skill->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->skill->skill_advance->validate))))
{
$this->error='NotEnoughPermissions';
dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR);
@@ -682,8 +682,8 @@ class Skill extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -706,8 +706,8 @@ class Skill extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -730,8 +730,8 @@ class Skill extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
diff --git a/htdocs/hrm/class/skilldet.class.php b/htdocs/hrm/class/skilldet.class.php
index 3c24ca78415..4f6d43baa59 100644
--- a/htdocs/hrm/class/skilldet.class.php
+++ b/htdocs/hrm/class/skilldet.class.php
@@ -169,7 +169,7 @@ class Skilldet extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -488,8 +488,8 @@ class Skilldet extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->skilldet->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->skilldet->skilldet_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->skilldet->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->skilldet->skilldet_advance->validate))))
{
$this->error='NotEnoughPermissions';
dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR);
@@ -606,8 +606,8 @@ class Skilldet extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -630,8 +630,8 @@ class Skilldet extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -654,8 +654,8 @@ class Skilldet extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
diff --git a/htdocs/hrm/class/skillrank.class.php b/htdocs/hrm/class/skillrank.class.php
index 6e2413c4f5f..6db80642bab 100644
--- a/htdocs/hrm/class/skillrank.class.php
+++ b/htdocs/hrm/class/skillrank.class.php
@@ -177,7 +177,7 @@ class SkillRank extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -527,8 +527,8 @@ class SkillRank extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->skillrank->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->skillrank->skillrank_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->skillrank->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->skillrank->skillrank_advance->validate))))
{
$this->error='NotEnoughPermissions';
dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR);
@@ -645,8 +645,8 @@ class SkillRank extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -669,8 +669,8 @@ class SkillRank extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -693,8 +693,8 @@ class SkillRank extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->hrm->hrm_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->hrm->hrm_advance->validate))))
{
$this->error='Permission denied';
return -1;
diff --git a/htdocs/hrm/compare.php b/htdocs/hrm/compare.php
index c8bb01d85e5..686d5820695 100644
--- a/htdocs/hrm/compare.php
+++ b/htdocs/hrm/compare.php
@@ -1,9 +1,9 @@
- * Copyright (C) 2021 Gauthier VERDOL
- * Copyright (C) 2021 Greg Rastklan
- * Copyright (C) 2021 Jean-Pascal BOUDET
- * Copyright (C) 2021 Grégory BLEMAND
+ * Copyright (C) 2021 Gauthier VERDOL
+ * Copyright (C) 2021 Greg Rastklan
+ * Copyright (C) 2021 Jean-Pascal BOUDET
+ * Copyright (C) 2021 Grégory BLEMAND
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -18,7 +18,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
- * \file class/compare.php
+ * \file htdocs/hrm/compare.php
* \ingroup hrm
* \brief This file compares skills of user groups
*
@@ -33,23 +33,29 @@
*
*/
+
+// Load Dolibarr environment
require_once '../main.inc.php';
-require_once DOL_DOCUMENT_ROOT.'/core/lib/functions.lib.php';
-require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
+require_once DOL_DOCUMENT_ROOT . '/core/lib/functions.lib.php';
+require_once DOL_DOCUMENT_ROOT . '/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT . '/hrm/class/skill.class.php';
require_once DOL_DOCUMENT_ROOT . '/hrm/class/job.class.php';
require_once DOL_DOCUMENT_ROOT . '/hrm/class/evaluation.class.php';
require_once DOL_DOCUMENT_ROOT . '/hrm/class/position.class.php';
require_once DOL_DOCUMENT_ROOT . '/hrm/lib/hrm.lib.php';
-$permissiontoread = $user->rights->hrm->evaluation->read || $user->rights->hrm->compare_advance->read;
-$permissiontoadd = 0;
-if (empty($conf->hrm->enabled)) accessforbidden();
-if (!$permissiontoread || ($action === 'create' && !$permissiontoadd)) accessforbidden();
+// Load translation files required by the page
$langs->load('hrm');
+// Permissions
+$permissiontoread = $user->rights->hrm->evaluation->read || $user->rights->hrm->compare_advance->read;
+$permissiontoadd = 0;
+
+if (empty($conf->hrm->enabled)) accessforbidden();
+if (!$permissiontoread || ($action === 'create' && !$permissiontoadd)) accessforbidden();
+
/*
* View
diff --git a/htdocs/hrm/establishment/card.php b/htdocs/hrm/establishment/card.php
index 1fe67dd0bd1..1b30eed663a 100644
--- a/htdocs/hrm/establishment/card.php
+++ b/htdocs/hrm/establishment/card.php
@@ -178,7 +178,7 @@ if ($action == 'create') {
// Entity
/*
- if (! empty($conf->multicompany->enabled)) {
+ if (isModEnabled('multicompany')) {
print '';
print ''.$form->editfieldkey('Parent', 'entity', '', $object, 0, 'string', '', 1).' ';
print '';
@@ -282,7 +282,7 @@ if (($id || $ref) && $action == 'edit') {
// Entity
/*
- if (! empty($conf->multicompany->enabled)) {
+ if (isModEnabled('multicompany')) {
print ' '.$form->editfieldkey('Parent', 'entity', '', $object, 0, 'string', '', 1).' ';
print '';
print $object->entity > 0 ? $object->entity : $conf->entity;
@@ -371,7 +371,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
// Entity
/*
- if ($conf->multicompany->enabled) {
+ if (!isModEnabled('multicompany') {
print ' ';
print ''.$langs->trans("Entity").' ';
print ''.$object->entity.' ';
diff --git a/htdocs/hrm/establishment/info.php b/htdocs/hrm/establishment/info.php
index afbd480e928..b0d9e8d5f81 100644
--- a/htdocs/hrm/establishment/info.php
+++ b/htdocs/hrm/establishment/info.php
@@ -123,7 +123,7 @@ $form = new Form($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
- //if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
+ //if (!empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
$help_url = '';
llxHeader('', $title, $help_url);
@@ -147,7 +147,7 @@ if ($object->id > 0) {
// Thirdparty
$morehtmlref.=' '.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (isModEnabled('project'))
{
$langs->load("projects");
$morehtmlref.=' '.$langs->trans('Project') . ' ';
@@ -168,7 +168,7 @@ if ($object->id > 0) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/hrm/evaluation_agenda.php b/htdocs/hrm/evaluation_agenda.php
index 8d2d234dd43..ed9e9ecc196 100644
--- a/htdocs/hrm/evaluation_agenda.php
+++ b/htdocs/hrm/evaluation_agenda.php
@@ -134,7 +134,7 @@ $form = new Form($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
- //if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
+ //if (!empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
$help_url = 'EN:Module_Agenda_En';
llxHeader('', $title, $help_url);
diff --git a/htdocs/hrm/evaluation_contact.php b/htdocs/hrm/evaluation_contact.php
index 0cc25901302..205192055c6 100644
--- a/htdocs/hrm/evaluation_contact.php
+++ b/htdocs/hrm/evaluation_contact.php
@@ -139,7 +139,7 @@ if ($object->id) {
// Thirdparty
$morehtmlref.=' '.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (isModEnabled('project'))
{
$langs->load("projects");
$morehtmlref.=' '.$langs->trans('Project') . ' ';
@@ -160,7 +160,7 @@ if ($object->id) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/hrm/index.php b/htdocs/hrm/index.php
index 1160ee0fc14..e8554c9da3d 100644
--- a/htdocs/hrm/index.php
+++ b/htdocs/hrm/index.php
@@ -26,6 +26,8 @@
* \brief Home page for HRM area.
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.form.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
@@ -34,26 +36,30 @@ require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php';
require_once DOL_DOCUMENT_ROOT.'/user/class/usergroup.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/usergroups.lib.php';
-if (!empty($conf->deplacement->enabled)) {
+
+if (isModEnabled('deplacement')) {
require_once DOL_DOCUMENT_ROOT.'/compta/deplacement/class/deplacement.class.php';
}
-if (!empty($conf->expensereport->enabled)) {
+if (isModEnabled('expensereport')) {
require_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php';
}
-if (!empty($conf->recruitment->enabled)) {
+if (isModEnabled('recruitment')) {
require_once DOL_DOCUMENT_ROOT.'/recruitment/class/recruitmentcandidature.class.php';
require_once DOL_DOCUMENT_ROOT.'/recruitment/class/recruitmentjobposition.class.php';
}
-if (!empty($conf->holiday->enabled)) {
+if (isModEnabled('holiday')) {
require_once DOL_DOCUMENT_ROOT.'/holiday/class/holiday.class.php';
}
+
+// Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context
$hookmanager = new HookManager($db);
$hookmanager->initHooks('hrmindex');
// Load translation files required by the page
$langs->loadLangs(array('users', 'holiday', 'trips', 'boxes'));
+// Get Parameters
$socid = GETPOST("socid", "int");
// Protection if external user
@@ -73,7 +79,7 @@ $max = $conf->global->MAIN_SIZE_SHORTLIST_LIMIT;
*/
// Update sold
-if (!empty($conf->holiday->enabled) && !empty($setupcompanynotcomplete)) {
+if (isModEnabled('holiday') && !empty($setupcompanynotcomplete)) {
$holidaystatic = new Holiday($db);
$result = $holidaystatic->updateBalance();
}
@@ -106,15 +112,15 @@ if (!empty($setupcompanynotcomplete)) {
print '';
if (!empty($conf->global->MAIN_SEARCH_FORM_ON_HOME_AREAS)) { // This is useless due to the global search combo
- if (!empty($conf->holiday->enabled) && $user->rights->holiday->read) {
+ if (isModEnabled('holiday') && $user->rights->holiday->read) {
$langs->load("holiday");
$listofsearchfields['search_holiday'] = array('text'=>'TitreRequestCP');
}
- if (!empty($conf->deplacement->enabled) && $user->rights->deplacement->lire) {
+ if (isModEnabled('deplacement') && $user->rights->deplacement->lire) {
$langs->load("trips");
$listofsearchfields['search_deplacement'] = array('text'=>'ExpenseReport');
}
- if (!empty($conf->expensereport->enabled) && $user->rights->expensereport->lire) {
+ if (isModEnabled('expensereport') && $user->rights->expensereport->lire) {
$langs->load("trips");
$listofsearchfields['search_expensereport'] = array('text'=>'ExpenseReport');
}
@@ -144,7 +150,7 @@ if (!empty($conf->global->MAIN_SEARCH_FORM_ON_HOME_AREAS)) { // This is usel
}
-if (!empty($conf->holiday->enabled)) {
+if (isModEnabled('holiday')) {
if (empty($conf->global->HOLIDAY_HIDE_BALANCE)) {
$holidaystatic = new Holiday($db);
$user_id = $user->id;
@@ -181,7 +187,7 @@ print '
';
// Latest leave requests
-if (!empty($conf->holiday->enabled) && $user->rights->holiday->read) {
+if (isModEnabled('holiday') && $user->rights->holiday->read) {
$sql = "SELECT u.rowid as uid, u.lastname, u.firstname, u.login, u.email, u.photo, u.statut as user_status,";
$sql .= " x.rowid, x.ref, x.fk_type, x.date_debut as date_start, x.date_fin as date_end, x.halfday, x.tms as dm, x.statut as status";
$sql .= " FROM ".MAIN_DB_PREFIX."holiday as x, ".MAIN_DB_PREFIX."user as u";
@@ -264,7 +270,7 @@ if (!empty($conf->holiday->enabled) && $user->rights->holiday->read) {
// Latest expense report
-if (!empty($conf->expensereport->enabled) && $user->rights->expensereport->lire) {
+if (isModEnabled('expensereport') && $user->hasRight('expensereport', 'read')) {
$sql = "SELECT u.rowid as uid, u.lastname, u.firstname, u.login, u.email, u.statut as user_status, u.photo,";
$sql .= " x.rowid, x.ref, x.date_debut as date, x.tms as dm, x.total_ttc, x.fk_statut as status";
$sql .= " FROM ".MAIN_DB_PREFIX."expensereport as x, ".MAIN_DB_PREFIX."user as u";
@@ -336,7 +342,7 @@ if (!empty($conf->expensereport->enabled) && $user->rights->expensereport->lire)
// Last modified job position
-if (!empty($conf->recruitment->enabled) && $user->rights->recruitment->recruitmentjobposition->read) {
+if (isModEnabled('recruitment') && $user->hasRight('recruitment', 'recruitmentjobposition', 'read')) {
$staticrecruitmentcandidature = new RecruitmentCandidature($db);
$staticrecruitmentjobposition = new RecruitmentJobPosition($db);
$sql = "SELECT rc.rowid, rc.ref, rc.email, rc.lastname, rc.firstname, rc.date_creation, rc.tms, rc.status,";
diff --git a/htdocs/hrm/job_agenda.php b/htdocs/hrm/job_agenda.php
index b8008f009ea..b6ce99c9801 100644
--- a/htdocs/hrm/job_agenda.php
+++ b/htdocs/hrm/job_agenda.php
@@ -133,7 +133,7 @@ $form = new Form($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
- //if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
+ //if (!empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
$help_url = 'EN:Module_Agenda_En';
llxHeader('', $title, $help_url);
diff --git a/htdocs/hrm/job_contact.php b/htdocs/hrm/job_contact.php
index 76f6e73d690..4a6c9995127 100644
--- a/htdocs/hrm/job_contact.php
+++ b/htdocs/hrm/job_contact.php
@@ -139,7 +139,7 @@ if ($object->id) {
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (isModEnabled('project'))
{
$langs->load("projects");
$morehtmlref.='
'.$langs->trans('Project') . ' ';
@@ -160,7 +160,7 @@ if ($object->id) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/hrm/position.php b/htdocs/hrm/position.php
index 78838136a1e..2659321e5fc 100644
--- a/htdocs/hrm/position.php
+++ b/htdocs/hrm/position.php
@@ -20,9 +20,9 @@
*/
/**
- * \file position.php
- * \ingroup hrm
- * \brief Page to create/edit/view position
+ * \file htdocs/hrm/position.php
+ * \ingroup hrm
+ * \brief Page to create/edit/view position
*/
//if (! defined('NOREQUIREDB')) define('NOREQUIREDB', '1'); // Do not create database handler $db
@@ -88,10 +88,6 @@ require_once DOL_DOCUMENT_ROOT . '/hrm/class/job.class.php';
require_once DOL_DOCUMENT_ROOT . '/hrm/lib/hrm_position.lib.php';
require_once DOL_DOCUMENT_ROOT . '/hrm/lib/hrm_job.lib.php';
-$action = GETPOST('action', 'aZ09') ? GETPOST('action', 'aZ09') : 'view'; // The action 'add', 'create', 'edit', 'update', 'view', ...
-$backtopage = GETPOST('backtopage', 'alpha');
-$backtopageforcancel = GETPOST('backtopageforcancel', 'alpha');
-$fk_job = GETPOST('fk_job', 'int');
// Get parameters
$id = GETPOST('fk_job', 'int');
@@ -105,12 +101,18 @@ $confirm = GETPOST('confirm', 'alpha');
$cancel = GETPOST('cancel', 'aZ09');
$contextpage = GETPOST('contextpage', 'aZ') ? GETPOST('contextpage', 'aZ') : 'positioncard'; // To manage different context of search
+$action = GETPOST('action', 'aZ09') ? GETPOST('action', 'aZ09') : 'view'; // The action 'add', 'create', 'edit', 'update', 'view', ...
+$backtopage = GETPOST('backtopage', 'alpha');
+$backtopageforcancel = GETPOST('backtopageforcancel', 'alpha');
+$fk_job = GETPOST('fk_job', 'int');
+
// Initialize technical objects
$object = new Job($db);
$extrafields = new ExtraFields($db);
$diroutputmassaction = $conf->hrm->dir_output . '/temp/massgeneration/' . $user->id;
+
$hookmanager->initHooks(array('positiontab', 'globalcard')); // Note that conf->hooks_modules contains array
// Fetch optionals attributes and labels
@@ -130,6 +132,7 @@ foreach ($object->fields as $key => $val) {
// Load object
include DOL_DOCUMENT_ROOT . '/core/actions_fetchobject.inc.php'; // Must be include, not include_once.
+// Permissions
$permissiontoread = $user->rights->hrm->all->read;
$permissiontoadd = $user->rights->hrm->all->write; // Used by the include of actions_addupdatedelete.inc.php and actions_lineupdown.inc.php
$permissiontodelete = $user->rights->hrm->all->delete;
diff --git a/htdocs/hrm/position_agenda.php b/htdocs/hrm/position_agenda.php
index ccbfabb985b..fc90a24dec6 100644
--- a/htdocs/hrm/position_agenda.php
+++ b/htdocs/hrm/position_agenda.php
@@ -134,7 +134,7 @@ $form = new Form($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
- //if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
+ //if (!empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
$help_url = 'EN:Module_Agenda_En';
llxHeader('', $title, $help_url);
diff --git a/htdocs/hrm/position_contact.php b/htdocs/hrm/position_contact.php
index 56029f790a7..f443099a9e4 100644
--- a/htdocs/hrm/position_contact.php
+++ b/htdocs/hrm/position_contact.php
@@ -139,7 +139,7 @@ if ($object->id) {
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (isModEnabled('project'))
{
$langs->load("projects");
$morehtmlref.='
'.$langs->trans('Project') . ' ';
@@ -160,7 +160,7 @@ if ($object->id) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/hrm/skill_agenda.php b/htdocs/hrm/skill_agenda.php
index e1947741bde..23f98d75f3f 100644
--- a/htdocs/hrm/skill_agenda.php
+++ b/htdocs/hrm/skill_agenda.php
@@ -133,7 +133,7 @@ $form = new Form($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
- //if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
+ //if (!empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
$help_url = 'EN:Module_Agenda_En';
llxHeader('', $title, $help_url);
diff --git a/htdocs/hrm/skill_contact.php b/htdocs/hrm/skill_contact.php
index 5f284c4e72c..c5fe154557c 100644
--- a/htdocs/hrm/skill_contact.php
+++ b/htdocs/hrm/skill_contact.php
@@ -139,7 +139,7 @@ if ($object->id) {
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (isModEnabled('project'))
{
$langs->load("projects");
$morehtmlref.='
'.$langs->trans('Project') . ' ';
@@ -160,7 +160,7 @@ if ($object->id) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/hrm/skill_tab.php b/htdocs/hrm/skill_tab.php
index 52c45c72848..c48a7c405c6 100644
--- a/htdocs/hrm/skill_tab.php
+++ b/htdocs/hrm/skill_tab.php
@@ -259,7 +259,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
print '
';
$addadmin = '';
if (property_exists($object, 'admin')) {
- if (!empty($conf->multicompany->enabled) && !empty($object->admin) && empty($object->entity)) {
+ if (isModEnabled('multicompany') && !empty($object->admin) && empty($object->entity)) {
$addadmin .= img_picto($langs->trans("SuperAdministratorDesc"), "redstar", 'class="paddingleft"');
} elseif (!empty($object->admin)) {
$addadmin .= img_picto($langs->trans("AdministratorDesc"), "star", 'class="paddingleft"');
diff --git a/htdocs/imports/import.php b/htdocs/imports/import.php
index 7aa566630c3..2c85007c086 100644
--- a/htdocs/imports/import.php
+++ b/htdocs/imports/import.php
@@ -2,6 +2,7 @@
/* Copyright (C) 2005-2016 Laurent Destailleur
* Copyright (C) 2005-2009 Regis Houssin
* Copyright (C) 2012 Christophe Battarel
+ * Copyright (C) 2022 Charlene Benke
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -393,7 +394,7 @@ if ($step == 1 || !$datatoimport) {
print $objimport->array_import_label[$key];
print ' ';
if ($objimport->array_import_perms[$key]) {
- print ''.img_picto($langs->trans("NewImport"), 'next', 'class="fa-15x"').' ';
+ print ''.img_picto($langs->trans("NewImport"), 'next', 'class="fa-15"').' ';
} else {
print $langs->trans("NotEnoughPermissions");
}
@@ -498,7 +499,7 @@ if ($step == 2 && $datatoimport) {
print ' ';
// Action button
print '
';
- print ''.img_picto($langs->trans("SelectFormat"), 'next', 'class="fa-15x"').' ';
+ print ''.img_picto($langs->trans("SelectFormat"), 'next', 'class="fa-15"').' ';
print ' ';
print '
';
}
@@ -625,7 +626,7 @@ if ($step == 3 && $datatoimport) {
$maxfilesizearray = getMaxFileSizeArray();
$maxmin = $maxfilesizearray['maxmin'];
if ($maxmin > 0) {
- $texte .= ' '; // MAX_FILE_SIZE must precede the field type=file
+ print ' '; // MAX_FILE_SIZE must precede the field type=file
}
print ' ';
$out = (empty($conf->global->MAIN_UPLOAD_DOC) ? ' disabled' : '');
@@ -635,29 +636,29 @@ if ($step == 3 && $datatoimport) {
$max = $conf->global->MAIN_UPLOAD_DOC; // In Kb
$maxphp = @ini_get('upload_max_filesize'); // In unknown
if (preg_match('/k$/i', $maxphp)) {
- $maxphp = $maxphp * 1;
+ $maxphp = (int) substr($maxphp, 0, -1) * 1;
}
if (preg_match('/m$/i', $maxphp)) {
- $maxphp = $maxphp * 1024;
+ $maxphp = (int) substr($maxphp, 0, -1) * 1024;
}
if (preg_match('/g$/i', $maxphp)) {
- $maxphp = $maxphp * 1024 * 1024;
+ $maxphp = (int) substr($maxphp, 0, -1) * 1024 * 1024;
}
if (preg_match('/t$/i', $maxphp)) {
- $maxphp = $maxphp * 1024 * 1024 * 1024;
+ $maxphp = (int) substr($maxphp, 0, -1) * 1024 * 1024 * 1024;
}
$maxphp2 = @ini_get('post_max_size'); // In unknown
if (preg_match('/k$/i', $maxphp2)) {
- $maxphp2 = $maxphp2 * 1;
+ $maxphp2 = (int) substr($maxphp2, 0, -1) * 1;
}
if (preg_match('/m$/i', $maxphp2)) {
- $maxphp2 = $maxphp2 * 1024;
+ $maxphp2 = (int) substr($maxphp2, 0, -1) * 1024;
}
if (preg_match('/g$/i', $maxphp2)) {
- $maxphp2 = $maxphp2 * 1024 * 1024;
+ $maxphp2 = (int) substr($maxphp2, 0, -1) * 1024 * 1024;
}
if (preg_match('/t$/i', $maxphp2)) {
- $maxphp2 = $maxphp2 * 1024 * 1024 * 1024;
+ $maxphp2 = (int) substr($maxphp2, 0, -1) * 1024 * 1024 * 1024;
}
// Now $max and $maxphp and $maxphp2 are in Kb
$maxmin = $max;
@@ -726,7 +727,7 @@ if ($step == 3 && $datatoimport) {
print '">'.img_delete().' ';
// Action button
print '';
- print ''.img_picto($langs->trans("NewImport"), 'next', 'class="fa-15x"').' ';
+ print ''.img_picto($langs->trans("NewImport"), 'next', 'class="fa-15"').' ';
print ' ';
print ' ';
}
@@ -1584,7 +1585,7 @@ if ($step == 5 && $datatoimport) {
$param .= '&updatekeys[]='.implode('&updatekeys[]=', $updatekeys);
}
- llxHeader('', $langs->trans("NewImport"), 'EN:Module_Imports_En|FR:Module_Imports|ES:Módulo_Importaciones');
+ llxHeader('', $langs->trans("NewImport"), $help_url);
$head = import_prepare_head($param, 5);
@@ -2050,7 +2051,7 @@ if ($step == 6 && $datatoimport) {
$param .= '&enclosure='.urlencode($enclosure);
}
- llxHeader('', $langs->trans("NewImport"), 'EN:Module_Imports_En|FR:Module_Imports|ES:Módulo_Importaciones');
+ llxHeader('', $langs->trans("NewImport"), $help_url);
$head = import_prepare_head($param, 6);
diff --git a/htdocs/includes/webklex/php-imap/deleted.txt b/htdocs/includes/webklex/php-imap/deleted.txt
index 9993acc6994..7eba7283d76 100644
--- a/htdocs/includes/webklex/php-imap/deleted.txt
+++ b/htdocs/includes/webklex/php-imap/deleted.txt
@@ -13,4 +13,5 @@
./vendor/phpdocumentor
./vendor/nesbot/carbon/src/Carbon/Lang
./vendor/doctrine
+./vendor/bin
./tests
diff --git a/htdocs/includes/webklex/php-imap/vendor/composer/autoload_static.php b/htdocs/includes/webklex/php-imap/vendor/composer/autoload_static.php
index db56e4812b6..0120578feb6 100644
--- a/htdocs/includes/webklex/php-imap/vendor/composer/autoload_static.php
+++ b/htdocs/includes/webklex/php-imap/vendor/composer/autoload_static.php
@@ -16,24 +16,24 @@ class ComposerStaticInit4da13270269c89a28e472e1f7324e6d1
);
public static $prefixLengthsPsr4 = array (
- 'v' =>
+ 'v' =>
array (
'voku\\' => 5,
),
- 'p' =>
+ 'p' =>
array (
'phpDocumentor\\Reflection\\' => 25,
),
- 'W' =>
+ 'W' =>
array (
'Webmozart\\Assert\\' => 17,
'Webklex\\PHPIMAP\\' => 16,
),
- 'T' =>
+ 'T' =>
array (
- 'Tests\\' => 6,
+ // 'Tests\\' => 6,
),
- 'S' =>
+ 'S' =>
array (
'Symfony\\Polyfill\\Php80\\' => 23,
'Symfony\\Polyfill\\Mbstring\\' => 26,
@@ -43,115 +43,115 @@ class ComposerStaticInit4da13270269c89a28e472e1f7324e6d1
'Symfony\\Component\\Translation\\' => 30,
'Symfony\\Component\\HttpFoundation\\' => 33,
),
- 'P' =>
+ 'P' =>
array (
'Psr\\SimpleCache\\' => 16,
'Psr\\Container\\' => 14,
'Prophecy\\' => 9,
),
- 'I' =>
+ 'I' =>
array (
'Illuminate\\Support\\' => 19,
'Illuminate\\Pagination\\' => 22,
'Illuminate\\Contracts\\' => 21,
),
- 'D' =>
+ 'D' =>
array (
'Doctrine\\Instantiator\\' => 22,
'Doctrine\\Inflector\\' => 19,
),
- 'C' =>
+ 'C' =>
array (
'Carbon\\' => 7,
),
);
public static $prefixDirsPsr4 = array (
- 'voku\\' =>
+ 'voku\\' =>
array (
0 => __DIR__ . '/..' . '/voku/portable-ascii/src/voku',
),
- 'phpDocumentor\\Reflection\\' =>
+ 'phpDocumentor\\Reflection\\' =>
array (
0 => __DIR__ . '/..' . '/phpdocumentor/reflection-common/src',
1 => __DIR__ . '/..' . '/phpdocumentor/type-resolver/src',
2 => __DIR__ . '/..' . '/phpdocumentor/reflection-docblock/src',
),
- 'Webmozart\\Assert\\' =>
+ 'Webmozart\\Assert\\' =>
array (
0 => __DIR__ . '/..' . '/webmozart/assert/src',
),
- 'Webklex\\PHPIMAP\\' =>
+ 'Webklex\\PHPIMAP\\' =>
array (
0 => __DIR__ . '/../..' . '/src',
),
- 'Tests\\' =>
+ 'Tests\\' =>
array (
0 => __DIR__ . '/../..' . '/tests',
),
- 'Symfony\\Polyfill\\Php80\\' =>
+ 'Symfony\\Polyfill\\Php80\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/polyfill-php80',
),
- 'Symfony\\Polyfill\\Mbstring\\' =>
+ 'Symfony\\Polyfill\\Mbstring\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/polyfill-mbstring',
),
- 'Symfony\\Polyfill\\Ctype\\' =>
+ 'Symfony\\Polyfill\\Ctype\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/polyfill-ctype',
),
- 'Symfony\\Contracts\\Translation\\' =>
+ 'Symfony\\Contracts\\Translation\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/translation-contracts',
),
- 'Symfony\\Component\\Yaml\\' =>
+ 'Symfony\\Component\\Yaml\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/yaml',
),
- 'Symfony\\Component\\Translation\\' =>
+ 'Symfony\\Component\\Translation\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/translation',
),
- 'Symfony\\Component\\HttpFoundation\\' =>
+ 'Symfony\\Component\\HttpFoundation\\' =>
array (
0 => __DIR__ . '/..' . '/symfony/http-foundation',
),
- 'Psr\\SimpleCache\\' =>
+ 'Psr\\SimpleCache\\' =>
array (
0 => __DIR__ . '/..' . '/psr/simple-cache/src',
),
- 'Psr\\Container\\' =>
+ 'Psr\\Container\\' =>
array (
0 => __DIR__ . '/..' . '/psr/container/src',
),
- 'Prophecy\\' =>
+ 'Prophecy\\' =>
array (
0 => __DIR__ . '/..' . '/phpspec/prophecy/src/Prophecy',
),
- 'Illuminate\\Support\\' =>
+ 'Illuminate\\Support\\' =>
array (
0 => __DIR__ . '/..' . '/illuminate/macroable',
1 => __DIR__ . '/..' . '/illuminate/collections',
2 => __DIR__ . '/..' . '/illuminate/support',
),
- 'Illuminate\\Pagination\\' =>
+ 'Illuminate\\Pagination\\' =>
array (
0 => __DIR__ . '/..' . '/illuminate/pagination',
),
- 'Illuminate\\Contracts\\' =>
+ 'Illuminate\\Contracts\\' =>
array (
0 => __DIR__ . '/..' . '/illuminate/contracts',
),
- 'Doctrine\\Instantiator\\' =>
+ 'Doctrine\\Instantiator\\' =>
array (
0 => __DIR__ . '/..' . '/doctrine/instantiator/src/Doctrine/Instantiator',
),
- 'Doctrine\\Inflector\\' =>
+ 'Doctrine\\Inflector\\' =>
array (
0 => __DIR__ . '/..' . '/doctrine/inflector/lib/Doctrine/Inflector',
),
- 'Carbon\\' =>
+ 'Carbon\\' =>
array (
0 => __DIR__ . '/..' . '/nesbot/carbon/src/Carbon',
),
diff --git a/htdocs/index.php b/htdocs/index.php
index 553fee4855f..97b82fb93ba 100644
--- a/htdocs/index.php
+++ b/htdocs/index.php
@@ -114,7 +114,7 @@ if ($user->admin && empty($conf->global->MAIN_REMOVE_INSTALL_WARNING)) {
$lockfile = DOL_DATA_ROOT.'/install.lock';
if (!empty($lockfile) && !file_exists($lockfile) && is_dir(DOL_DOCUMENT_ROOT."/install")) {
$langs->load("errors");
- //if (! empty($message)) $message.=' ';
+ //if (!empty($message)) $message.=' ';
$message .= info_admin($langs->trans("WarningLockFileDoesNotExists", DOL_DATA_ROOT).' '.$langs->trans("WarningUntilDirRemoved", DOL_DOCUMENT_ROOT."/install"), 0, 0, '1', 'clearboth');
}
@@ -122,7 +122,7 @@ if ($user->admin && empty($conf->global->MAIN_REMOVE_INSTALL_WARNING)) {
if (is_writable($conffile)) {
$langs->load("errors");
//$langs->load("other");
- //if (! empty($message)) $message.=' ';
+ //if (!empty($message)) $message.=' ';
$message .= info_admin($langs->transnoentities("WarningConfFileMustBeReadOnly").' '.$langs->trans("WarningUntilDirRemoved", DOL_DOCUMENT_ROOT."/install"), 0, 0, '1', 'clearboth');
}
@@ -176,7 +176,7 @@ if (empty($conf->global->MAIN_DISABLE_GLOBAL_WORKBOARD)) {
}
// Number of commercial customer proposals open (expired)
- if (isModEnabled('propal') && empty($conf->global->MAIN_DISABLE_BLOCK_CUSTOMER) && $user->hasRight('propale', 'lire')) {
+ if (isModEnabled('propal') && empty($conf->global->MAIN_DISABLE_BLOCK_CUSTOMER) && $user->hasRight('propal', 'read')) {
include_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
$board = new Propal($db);
$dashboardlines[$board->element.'_opened'] = $board->load_board($user, "opened");
diff --git a/htdocs/install/mysql/data/llx_accounting_account_at.sql b/htdocs/install/mysql/data/llx_accounting_account_at.sql
index 3e153dc88e7..08cf24ec51a 100644
--- a/htdocs/install/mysql/data/llx_accounting_account_at.sql
+++ b/htdocs/install/mysql/data/llx_accounting_account_at.sql
@@ -344,3 +344,211 @@ INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, acc
INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 319, 'AT-BASE','GROUP6','60000','0','kalk. Löhne u Gehälter', 1);
INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 320, 'AT-BASE','GROUP6','64160','0','Veränderung Pensionsrückstellung (Angestellte)', 1);
INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 321, 'AT-BASE','GROUP6','66300','0','Leistungserfassung', 1);
+
+-- Different Base CoA for Austria
+
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1001, 'AT-BASE-2', 'Anlagevermögen', '0010', '0', 'Aufwendungen für das Ingangsetzen und Erweitern eines Betriebes', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1002, 'AT-BASE-2', 'Anlagevermögen', '0090', '0', 'Kumulierte Abschreibungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1003, 'AT-BASE-2', 'Anlagevermögen', '0100', '0', 'Konzessionen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1004, 'AT-BASE-2', 'Anlagevermögen', '0110', '0', 'Patentrechte und Lizenzen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1005, 'AT-BASE-2', 'Anlagevermögen', '0120', '0', 'Datenverarbeitungsprogramme', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1006, 'AT-BASE-2', 'Anlagevermögen', '0121', '0', 'Geringwertige Datenverarbeitungsprogramme', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1007, 'AT-BASE-2', 'Anlagevermögen', '0130', '0', 'Marken, Warenzeichen und Musterschutzrechte, sonstige Urheberrechte', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1008, 'AT-BASE-2', 'Anlagevermögen', '0140', '0', 'Pacht- und Mietrechte', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1009, 'AT-BASE-2', 'Anlagevermögen', '0150', '0', 'Geschäfts(Firmen)wert', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1010, 'AT-BASE-2', 'Anlagevermögen', '0180', '0', 'Geleistete Anzahlungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1011, 'AT-BASE-2', 'Anlagevermögen', '0190', '0', 'Kumulierte Abschreibungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1012, 'AT-BASE-2', 'Sachanlagen', '0200', '0', 'Unbebaute Grundstücke', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1013, 'AT-BASE-2', 'Sachanlagen', '0210', '0', 'Bebaute Grundstücke (Grundwert)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1014, 'AT-BASE-2', 'Sachanlagen', '0220', '0', 'Grundstücksgleiche Rechte', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1015, 'AT-BASE-2', 'Sachanlagen', '0300', '0', 'Betriebs- und Geschäftsgebäude auf eigenem Grund', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1016, 'AT-BASE-2', 'Sachanlagen', '0310', '0', 'Wohn- und Sozialgebäude auf eigenem Grund', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1017, 'AT-BASE-2', 'Sachanlagen', '0320', '0', 'Betriebs- und Geschäftsgebäude auf fremdem Grund', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1018, 'AT-BASE-2', 'Sachanlagen', '0330', '0', 'Wohn- und Sozialgebäude auf fremdem Grund', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1019, 'AT-BASE-2', 'Sachanlagen', '0340', '0', 'Grundstückseinrichtungen auf eigenem Grund', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1020, 'AT-BASE-2', 'Sachanlagen', '0350', '0', 'Grundstückseinrichtungen auf fremdem Grund', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1021, 'AT-BASE-2', 'Sachanlagen', '0360', '0', 'Bauliche Investitionen in fremden (gepachteten) Betriebs- und Geschäftsgebäuden', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1022, 'AT-BASE-2', 'Sachanlagen', '0370', '0', 'Bauliche Investitionen in fremden (gepachteten) Wohn- und Sozialgebäuden', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1023, 'AT-BASE-2', 'Sachanlagen', '0390', '0', 'Kumulierte Abschreibungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1024, 'AT-BASE-2', 'Sachanlagen', '0400', '0', 'Fertigungsmaschinen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1025, 'AT-BASE-2', 'Sachanlagen', '0410', '0', 'Antriebsmaschinen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1026, 'AT-BASE-2', 'Sachanlagen', '0420', '0', 'Energieversorgungsanlagen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1027, 'AT-BASE-2', 'Sachanlagen', '0430', '0', 'Transportanlagen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1028, 'AT-BASE-2', 'Sachanlagen', '0500', '0', 'Maschinenwerkzeuge', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1029, 'AT-BASE-2', 'Sachanlagen', '0510', '0', 'Allgemeine Werkzeuge und Handwerkzeuge', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1030, 'AT-BASE-2', 'Sachanlagen', '0520', '0', 'Vorrichtungen, Formen und Modelle', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1031, 'AT-BASE-2', 'Sachanlagen', '0530', '0', 'Andere Erzeugungshilfsmittel', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1032, 'AT-BASE-2', 'Sachanlagen', '0540', '0', 'Hebezeuge und Montageanlagen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1033, 'AT-BASE-2', 'Sachanlagen', '0550', '0', 'Geringwertige Vermögensgegenstände, soweit im Erzeugungsprozeß verwendet', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1034, 'AT-BASE-2', 'Sachanlagen', '0600', '0', 'Beheizungs- und Beleuchtungsanlagen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1035, 'AT-BASE-2', 'Sachanlagen', '0610', '0', 'Nachrichten- und Kontrollanlagen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1036, 'AT-BASE-2', 'Sachanlagen', '0620', '0', 'Büromaschinen, EDV-Anlagen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1037, 'AT-BASE-2', 'Sachanlagen', '0630', '0', 'PKW', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1038, 'AT-BASE-2', 'Sachanlagen', '0640', '0', 'LKW', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1039, 'AT-BASE-2', 'Sachanlagen', '0650', '0', 'Andere Beförderungsmittel', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1040, 'AT-BASE-2', 'Sachanlagen', '0660', '0', 'Andere Betriebs- und Geschäftsausstattung', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1041, 'AT-BASE-2', 'Sachanlagen', '0670', '0', 'Gebinde', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1042, 'AT-BASE-2', 'Sachanlagen', '0680', '0', 'Geringwertige Büromaschinen, EDV-Anlagen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1043, 'AT-BASE-2', 'Sachanlagen', '0681', '0', 'Geringwertige Betriebs- und Geschäftsausstattung', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1044, 'AT-BASE-2', 'Sachanlagen', '0692', '0', 'Kumulierte Abschreibungen zu Büromaschinen, EDV-Anlagen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1045, 'AT-BASE-2', 'Sachanlagen', '0693', '0', 'Kumulierte Abschreibungen zu PKW und Kombis', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1046, 'AT-BASE-2', 'Sachanlagen', '0694', '0', 'Kumulierte Abschreibungen zu LKW', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1047, 'AT-BASE-2', 'Sachanlagen', '0696', '0', 'Kumulierte Abschreibungen zur Betriebs- und Geschäftsausstattung', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1048, 'AT-BASE-2', 'Vorauszahlungen', '0700', '0', 'Geleistete Anzahlungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1049, 'AT-BASE-2', 'Sachanlagen', '0710', '0', 'Anlagen in Bau', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1050, 'AT-BASE-2', 'Sachanlagen', '0790', '0', 'Kumulierte Abschreibungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1051, 'AT-BASE-2', 'Anlagevermögen', '0800', '0', 'Anteile an verbundenen Unternehmen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1052, 'AT-BASE-2', 'Anlagevermögen', '0810', '0', 'Beteiligungen an Gemeinschaftsunternehmen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1053, 'AT-BASE-2', 'Anlagevermögen', '0820', '0', 'Beteiligungen an angeschlossenen (assoziierten) Unternehmen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1054, 'AT-BASE-2', 'Anlagevermögen', '0830', '0', 'Sonstige Beteiligungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1055, 'AT-BASE-2', 'Anlagevermögen', '0840', '0', 'Ausleihungen an verbundene Unternehmen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1056, 'AT-BASE-2', 'Anlagevermögen', '0850', '0', 'Ausleihungen an Unternehmen, mit denen ein Beteiligungsverhältnis besteht', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1057, 'AT-BASE-2', 'Anlagevermögen', '0860', '0', 'Sonstige Ausleihungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1058, 'AT-BASE-2', 'Anlagevermögen', '0870', '0', 'Anteile an Kapitalgesellschaften ohne Beteiligungscharakter', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1059, 'AT-BASE-2', 'Anlagevermögen', '0880', '0', 'Anteile an Personengesellschaften ohne Beteiligungscharakter', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1060, 'AT-BASE-2', 'Anlagevermögen', '0900', '0', 'Genossenschaftsanteile ohne Beteiligungscharakter', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1061, 'AT-BASE-2', 'Anlagevermögen', '0910', '0', 'Anteile an Investmentfonds', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1062, 'AT-BASE-2', 'Vorauszahlungen', '0980', '0', 'Geleistete Anzahlungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1063, 'AT-BASE-2', 'Anlagevermögen', '0990', '0', 'Kumulierte Abschreibungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1064, 'AT-BASE-2', 'Umlaufvermögen', '1600', '0', 'Handelswaren', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1065, 'AT-BASE-2', 'Vorauszahlungen', '1800', '0', 'Geleistete Anzahlungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1066, 'AT-BASE-2', 'Debitoren', '2000', '0', 'Forderungen von Partnern im Inland ohne eigenes Debitorenkonto', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1067, 'AT-BASE-2', 'Umlaufvermögen', '2080', '0', 'Einzelwertberichtigungen zu Forderungen aus Lieferungen und Leistungen Inland', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1068, 'AT-BASE-2', 'Umlaufvermögen', '2090', '0', 'Pauschalwertberichtigungen zu Forderungen aus Lieferungen und Leistungen Inland', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1069, 'AT-BASE-2', 'Debitoren', '2099', '0', 'Forderungen von Partnern (Point Of Sale)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1070, 'AT-BASE-2', 'Debitoren', '2100', '0', 'Forderungen von Partnern im EU Raum ohne eigenes Debitorenkonto', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1071, 'AT-BASE-2', 'Umlaufvermögen', '2130', '0', 'Einzelwertberichtigungen zu Forderungen aus Lieferungen und Leistungen Währungsunion', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1072, 'AT-BASE-2', 'Umlaufvermögen', '2140', '0', 'Pauschalwertberichtigungen zu Forderungen aus Lieferungen und Leistungen Währungsunion', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1073, 'AT-BASE-2', 'Debitoren', '2150', '0', 'Forderungen von Partnern in Drittstaaten ohne eigenes Debitorenkonto', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1074, 'AT-BASE-2', 'Umlaufvermögen', '2180', '0', 'Einzelwertberichtigungen zu Forderungen aus Lieferungen und Leistungen sonstiges Ausland', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1075, 'AT-BASE-2', 'Umlaufvermögen', '2190', '0', 'Pauschalwertberichtigungen zu Forderungen aus Lieferungen und Leistungen sonstiges Ausland', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1076, 'AT-BASE-2', 'Umlaufvermögen', '2230', '0', 'Einzelwertberichtigungen zu Forderungen gegenüber verbundenen Unternehmen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1077, 'AT-BASE-2', 'Umlaufvermögen', '2240', '0', 'Pauschalwertberichtigungen zu Forderungen gegenüber verbundenen Unternehmen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1078, 'AT-BASE-2', 'Umlaufvermögen', '2280', '0', 'Einzelwertberichtigungen zu Forderungen gegenüber Unternehmen, mit denen ein Beteiligungsverhältnis besteht', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1079, 'AT-BASE-2', 'Umlaufvermögen', '2290', '0', 'Pauschalwertberichtigungen zu Forderungen gegenüber Unternehmen, mit denen ein Beteiligungsverhältnis besteht', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1080, 'AT-BASE-2', 'Umlaufvermögen', '2470', '0', 'Eingeforderte, aber noch nicht eingezahlte Einlagen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1081, 'AT-BASE-2', 'Umlaufvermögen', '2480', '0', 'Einzelwertberichtigungen zu sonstigen Forderungen und Vermögensgegenständen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1082, 'AT-BASE-2', 'Umlaufvermögen', '2490', '0', 'Pauschalwertberichtigungen zu sonstigen Forderungen und Vermögensgegenständen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1083, 'AT-BASE-2', 'Umlaufvermögen', '2500', '0', 'Vorsteuern 20%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1084, 'AT-BASE-2', 'Umlaufvermögen', '2501', '0', 'Vorsteuern 10%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1085, 'AT-BASE-2', 'Umlaufvermögen', '2502', '0', 'Vorsteuern 13%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1086, 'AT-BASE-2', 'Umlaufvermögen', '2505', '0', 'Sonstige Vorsteuern', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1087, 'AT-BASE-2', 'Umlaufvermögen', '2506', '0', 'Vorsteuern RC 20%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1088, 'AT-BASE-2', 'Umlaufvermögen', '2507', '0', 'Vorsteuern RC 10%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1089, 'AT-BASE-2', 'Umlaufvermögen', '2510', '0', 'Vorsteuern RC EU 20%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1090, 'AT-BASE-2', 'Umlaufvermögen', '2511', '0', 'Vorsteuern IGE 20%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1091, 'AT-BASE-2', 'Umlaufvermögen', '2512', '0', 'Vorsteuern IGE 10%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1092, 'AT-BASE-2', 'Umlaufvermögen', '2513', '0', 'Vorsteuern IGE 13%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1093, 'AT-BASE-2', 'Umlaufvermögen', '2515', '0', 'Vorsteuern 20% (aus EUSt.)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1094, 'AT-BASE-2', 'Umlaufvermögen', '2600', '0', 'Eigene Anteile', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1095, 'AT-BASE-2', 'Umlaufvermögen', '2610', '0', 'Anteile an verbundenen Unternehmen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1096, 'AT-BASE-2', 'Umlaufvermögen', '2620', '0', 'Sonstige Anteile', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1097, 'AT-BASE-2', 'Umlaufvermögen', '2680', '0', 'Besitzwechsel, soweit dem Unternehmen nicht die der Ausstellung zugrundeliegenden Forderungen zustehen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1098, 'AT-BASE-2', 'Umlaufvermögen', '2690', '0', 'Wertberichtigungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1099, 'AT-BASE-2', 'Liquide Mittel', '2701', '0', 'Kasse/Bank', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1100, 'AT-BASE-2', 'Umlaufvermögen', '2730', '0', 'Postwertzeichen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1101, 'AT-BASE-2', 'Umlaufvermögen', '2740', '0', 'Stempelmarken', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1102, 'AT-BASE-2', 'Umlaufvermögen', '2780', '0', 'Schecks in Inlandswährung', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1103, 'AT-BASE-2', 'Umlaufvermögen', '2801', '0', 'Bankzwischenkonto', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1104, 'AT-BASE-2', 'Umlaufvermögen', '2802', '0', 'Ausstehende Quittungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1105, 'AT-BASE-2', 'Umlaufvermögen', '2803', '0', 'Ausstehende Zahlungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1106, 'AT-BASE-2', 'Liquide Mittel', '2804', '0', 'Bank', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1107, 'AT-BASE-2', 'Umlaufvermögen', '2880', '0', 'Schwebende Geldbewegungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1108, 'AT-BASE-2', 'Umlaufvermögen', '2881', '0', 'Liquiditätstransfer', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1109, 'AT-BASE-2', 'Umlaufvermögen', '2890', '0', 'Wertberichtigungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1110, 'AT-BASE-2', 'Umlaufvermögen', '2900', '0', 'Aktive Rechnungsabgrenzungsposten', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1111, 'AT-BASE-2', 'Umlaufvermögen', '2950', '0', 'Disagio', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1112, 'AT-BASE-2', 'Umlaufvermögen', '2960', '0', 'Unterschiedsbetrag zur gebotenen Pensionsrückstellung', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1113, 'AT-BASE-2', 'Umlaufvermögen', '2970', '0', 'Unterschiedsbetrag gem. Abschnitt XII Pensionskassengesetz', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1114, 'AT-BASE-2', 'Umlaufvermögen', '2980', '0', 'Steuerabgrenzung', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1115, 'AT-BASE-2', 'Langfristige Verbindlichkeiten', '3000', '0', 'Rückstellungen für Abfertigungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1116, 'AT-BASE-2', 'Langfristige Verbindlichkeiten', '3010', '0', 'Rückstellungen für Pensionen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1117, 'AT-BASE-2', 'Umlaufvermögen', '3100', '0', 'Anleihen (einschließlich konvertibler)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1118, 'AT-BASE-2', 'Umlaufvermögen', '3200', '0', 'Erhaltene Anzahlungen auf Bestellungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1119, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3210', '0', 'Umsatzsteuer-Evidenzkonto für erhaltene Anzahlungen auf Bestellungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1120, 'AT-BASE-2', 'Kreditoren', '3300', '0', 'Verbindlichkeiten bei Partnern im Inland ohne eigenes Kreditorenkonto', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1121, 'AT-BASE-2', 'Kreditoren', '3360', '0', 'Verbindlichkeiten bei Partnern im EU Raum ohne eigenes Kreditorenkonto', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1122, 'AT-BASE-2', 'Kreditoren', '3370', '0', 'Verbindlichkeiten bei Partnern in Drittstaaten ohne eigenes Kreditorenkonto', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1123, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3480', '0', 'Verbindlichkeiten gegenüber Gesellschaftern', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1124, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3500', '0', 'Umsatzsteuer 20%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1125, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3501', '0', 'Umsatzsteuer 10%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1126, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3502', '0', 'Umsatzsteuer 13%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1127, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3505', '0', 'Sonstige Umsatzsteuer', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1128, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3510', '0', 'Umsatzsteuer RC EU 20%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1129, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3511', '0', 'Umsatzsteuer IGE 20%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1130, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3512', '0', 'Umsatzsteuer IGE 10%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1131, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3513', '0', 'Umsatzsteuer IGE 13%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1132, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3515', '0', 'Einfuhrumsatzsteuer 20%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1133, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3520', '0', 'Ust. Zahllast', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1134, 'AT-BASE-2', 'Kreditoren', '3530', '0', 'Verrechnungskonto Finanzamt', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1135, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3540', '0', 'Verrechnung Lohnsteuer', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1136, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3541', '0', 'Verrechnung Dienstgeberbeitrag', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1137, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3542', '0', 'Verrechnung Dienstgeberzuschlag', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1138, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3550', '0', 'Verrechnung Kommunalsteuer', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1139, 'AT-BASE-2', 'Kurzfristige Verbindlichkeiten', '3551', '0', 'Verrechnung Wiener Dienstgeberabgabe', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1140, 'AT-BASE-2', 'Kreditoren', '3600', '0', 'Verrechungskonto Sozialversicherung', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1141, 'AT-BASE-2', 'Kreditoren', '3610', '0', 'Verrechnungskonto Magistrat/Gemeinde (KoSt, U-Bahn, etc.)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1142, 'AT-BASE-2', 'Kreditoren', '3740', '0', 'WERE Verrechnungskonto', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1143, 'AT-BASE-2', 'Erlöse', '4000', '0', 'Brutto-Umsatzerlöse im Inland (20%)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1144, 'AT-BASE-2', 'Erlöse', '4001', '0', 'Brutto-Umsatzerlöse im Inland (10%)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1145, 'AT-BASE-2', 'Erlöse', '4100', '0', 'Brutto-Umsatzerlöse im EU Raum (RC 20%)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1146, 'AT-BASE-2', 'Erlöse', '4110', '0', 'Brutto-Umsatzerlöse im EU Raum (RC 10%)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1147, 'AT-BASE-2', 'Erlöse', '4200', '0', 'Brutto-Umsatzerlöse in Drittstaaten (0%)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1148, 'AT-BASE-2', 'Sonstige betriebliche Erträge', '4860', '0', 'Kursgewinne aus Fremdwährungstransaktionen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1149, 'AT-BASE-2', 'Aufwand', '5000', '0', 'Wareneinkauf', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1150, 'AT-BASE-2', 'Aufwand', '5050', '0', 'Wareneinkauf EU', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1151, 'AT-BASE-2', 'Aufwand', '5090', '0', 'Wareneinkauf 0%', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1152, 'AT-BASE-2', 'Aufwand', '5800', '0', 'Skontoerträge auf Materialaufwand', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1153, 'AT-BASE-2', 'Aufwand', '5810', '0', 'Skontoerträge auf sonstige bezogene Herstellungsleistungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1154, 'AT-BASE-2', 'Aufwand', '5900', '0', 'Aufwandsstellenrechnung', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1155, 'AT-BASE-2', 'Aufwand', '6200', '0', 'Gehälter (Angestellte)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1156, 'AT-BASE-2', 'Aufwand', '6205', '0', 'Geschäftsführerbezug', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1157, 'AT-BASE-2', 'Aufwand', '6242', '0', 'Urlaubsabfindung (Angestellte)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1158, 'AT-BASE-2', 'Aufwand', '6260', '0', 'Sonstige Bezüge (Angestellte)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1159, 'AT-BASE-2', 'Aufwand', '6270', '0', 'Sachbezug (Angestellte)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1160, 'AT-BASE-2', 'Aufwand', '6271', '0', 'Sachbezug (Geschäftsführer)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1161, 'AT-BASE-2', 'Aufwand', '6310', '0', 'Grundgehälter (Überstunden)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1162, 'AT-BASE-2', 'Aufwand', '6330', '0', 'Gehälter (Überstundenzuschläge)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1163, 'AT-BASE-2', 'Aufwand', '6340', '0', 'Veränderung noch nicht konsumierter Urlaub', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1164, 'AT-BASE-2', 'Aufwand', '6400', '0', 'Beiträge für betriebliche Mitarbeitervorsorgekasse', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1165, 'AT-BASE-2', 'Aufwand', '6560', '0', 'Gesetzlicher Sozialaufwand', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1166, 'AT-BASE-2', 'Aufwand', '6660', '0', 'Kommunalsteuer (KoSt)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1167, 'AT-BASE-2', 'Aufwand', '6661', '0', 'Dienstgeberbeitrag zum Familienlastenausgleichsfonds (DB)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1168, 'AT-BASE-2', 'Aufwand', '6662', '0', 'Zuschlag zum Dienstnehmerbeitrag (DZ)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1169, 'AT-BASE-2', 'Aufwand', '6663', '0', 'Dienstgeberabgabe der Gemeinde Wien (U-Bahn Steuer)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1170, 'AT-BASE-2', 'Aufwand', '6700', '0', 'Sonstiger freiwilliger Sozialaufwand', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1171, 'AT-BASE-2', 'Aufwand', '6900', '0', 'Aufwandsstellenrechnung', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1172, 'AT-BASE-2', 'Abschreibungen', '7000', '0', 'Abschreibungen auf aktivierte Aufwendungen für das Ingangsetzen und Erweitern eines Betriebes', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1173, 'AT-BASE-2', 'Abschreibungen', '7090', '0', 'Abschreibungen vom Umlaufvermögen, soweit diese die im Unternehmen üblichen Abschreibungen übersteigen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1174, 'AT-BASE-2', 'Aufwand', '7600', '0', 'Büromaterial und Drucksorten', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1175, 'AT-BASE-2', 'Aufwand', '7630', '0', 'Fachliteratur und Zeitungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1176, 'AT-BASE-2', 'Aufwand', '7690', '0', 'Spenden und Trinkgelder', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1177, 'AT-BASE-2', 'Aufwand', '7770', '0', 'Aus- und Fortbildung', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1178, 'AT-BASE-2', 'Aufwand', '7780', '0', 'Mitgliedsbeiträge', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1179, 'AT-BASE-2', 'Aufwand', '7790', '0', 'Spesen des Geldverkehrs', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1180, 'AT-BASE-2', 'Aufwand', '7820', '0', 'Buchwert abgegangener Anlagen, ausgenommen Finanzanlagen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1181, 'AT-BASE-2', 'Aufwand', '7830', '0', 'Verluste aus dem Abgang vom Anlagevermögen, ausgenommen Finanzanlagen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1182, 'AT-BASE-2', 'Aufwand', '7860', '0', 'Kursverluste aus Fremdwährungstransaktionen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1183, 'AT-BASE-2', 'Aufwand', '7890', '0', 'Skontoerträge auf sonstige betriebliche Aufwendungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1184, 'AT-BASE-2', 'Aufwand', '7900', '0', 'Aufwandsstellenrechnung', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1185, 'AT-BASE-2', 'Aufwand', '7960', '0', 'Herstellungskosten der zur Erzielung der Umsatzerlöse erbrachten Leistungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1186, 'AT-BASE-2', 'Aufwand', '7970', '0', 'Vertriebskosten', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1187, 'AT-BASE-2', 'Aufwand', '7980', '0', 'Verwaltungskosten', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1188, 'AT-BASE-2', 'Aufwand', '7990', '0', 'Sonstige betriebliche Aufwendungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1189, 'AT-BASE-2', 'Sonstige betriebliche Erträge', '8140', '0', 'Erlöse aus dem Abgang von Beteiligungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1190, 'AT-BASE-2', 'Sonstige betriebliche Erträge', '8150', '0', 'Erlöse aus dem Abgang von sonstigen Finanzanlagen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1191, 'AT-BASE-2', 'Sonstige betriebliche Erträge', '8160', '0', 'Erlöse aus dem Abgang von Wertpapieren des Umlaufvermögens', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1192, 'AT-BASE-2', 'Sonstige betriebliche Erträge', '8170', '0', 'Buchwert abgegangener Beteiligungen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1193, 'AT-BASE-2', 'Sonstige betriebliche Erträge', '8180', '0', 'Buchwert abgegangener sonstiger Finanzanlagen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1194, 'AT-BASE-2', 'Sonstige betriebliche Erträge', '8190', '0', 'Buchwert abgegangener Wertpapiere des Umlaufvermögens', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1195, 'AT-BASE-2', 'Sonstige betriebliche Erträge', '8200', '0', 'Erträge aus dem Abgang von und der Zuschreibung zu Finanzanlagen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1196, 'AT-BASE-2', 'Sonstige betriebliche Erträge', '8210', '0', 'Erträge aus dem Abgang von und der Zuschreibung zu Wertpapieren des Umlaufvermögens', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1197, 'AT-BASE-2', 'Sonstige betriebliche Erträge', '8350', '0', 'Nicht ausgenützte Lieferantenskonti', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1198, 'AT-BASE-2', 'Sonstige betriebliche Erträge', '8990', '0', 'Gewinnabfuhr bzw. Verlustüberrechnung aus Ergebnisabführungsverträgen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1199, 'AT-BASE-2', 'Eigenkapital', '9190', '0', 'Nicht eingeforderte ausstehende Einlagen', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1200, 'AT-BASE-2', 'Eigenkapital', '9390', '0', 'Bilanzgewinn (-verlust)', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1201, 'AT-BASE-2', 'Eigenkapital', '9800', '0', 'Eröffnungsbilanz', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1202, 'AT-BASE-2', 'Eigenkapital', '9850', '0', 'Schlussbilanz', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1203, 'AT-BASE-2', 'Eigenkapital', '9890', '0', 'Gewinn- und Verlustrechnung', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1204, 'AT-BASE-2', 'Aufwand', '9991', '0', 'Bargelddifferenz Verlust', 1);
+INSERT INTO llx_accounting_account (entity, rowid, fk_pcg_version, pcg_type, account_number, account_parent, label, active) VALUES (__ENTITY__, 1205, 'AT-BASE-2', 'Erlöse', '9992', '0', 'Bargelddifferenz Gewinn', 1);
diff --git a/htdocs/install/mysql/data/llx_c_effectif.sql b/htdocs/install/mysql/data/llx_c_effectif.sql
index cb67da5d73c..f3c5b0cd03f 100644
--- a/htdocs/install/mysql/data/llx_c_effectif.sql
+++ b/htdocs/install/mysql/data/llx_c_effectif.sql
@@ -36,5 +36,5 @@ insert into llx_c_effectif (id,code,libelle) values (1, 'EF1-5', '1 - 5');
insert into llx_c_effectif (id,code,libelle) values (2, 'EF6-10', '6 - 10');
insert into llx_c_effectif (id,code,libelle) values (3, 'EF11-50', '11 - 50');
insert into llx_c_effectif (id,code,libelle) values (4, 'EF51-100', '51 - 100');
-insert into llx_c_effectif (id,code,libelle) values (5, 'EF100-500', '100 - 500');
+insert into llx_c_effectif (id,code,libelle) values (5, 'EF101-500', '101 - 500');
insert into llx_c_effectif (id,code,libelle) values (6, 'EF500-', '> 500');
diff --git a/htdocs/install/mysql/migration/16.0.0-17.0.0.sql b/htdocs/install/mysql/migration/16.0.0-17.0.0.sql
index a3aee14c4de..a13d49e0fe5 100644
--- a/htdocs/install/mysql/migration/16.0.0-17.0.0.sql
+++ b/htdocs/install/mysql/migration/16.0.0-17.0.0.sql
@@ -55,12 +55,27 @@ ALTER TABLE llx_user DROP COLUMN idpers3;
-- v17
+-- VMYSQL4.3 ALTER TABLE llx_partnership MODIFY COLUMN fk_user_creat integer NULL;
+-- VPGSQL8.2 ALTER TABLE llx_partnership ALTER COLUMN fk_user_creat DROP NOT NULL;
+
+ALTER TABLE llx_partnership ADD COLUMN ip varchar(250);
+ALTER TABLE llx_adherent ADD COLUMN ip varchar(250);
+
+ALTER TABLE llx_fichinterdet_rec DROP COLUMN remise;
+ALTER TABLE llx_fichinterdet_rec DROP COLUMN fk_export_commpta;
+
+UPDATE llx_const set name = 'ADHERENT_MAILMAN_ADMIN_PASSWORD' WHERE name = 'ADHERENT_MAILMAN_ADMINPW';
+
ALTER TABLE llx_oauth_token ADD COLUMN state text after tokenstring;
ALTER TABLE llx_adherent ADD COLUMN default_lang VARCHAR(6) DEFAULT NULL AFTER datefin;
ALTER TABLE llx_adherent_type ADD COLUMN caneditamount integer DEFAULT 0 AFTER amount;
+ALTER TABLE llx_holiday CHANGE COLUMN date_approve date_approval datetime;
+
+UPDATE llx_holiday SET date_approval = date_valid WHERE statut = 3 AND date_approval IS NULL;
+UPDATE llx_holiday SET fk_user_approve = fk_user_valid WHERE statut = 3 AND fk_user_approve IS NULL;
ALTER TABLE llx_inventory ADD COLUMN categories_product VARCHAR(255) DEFAULT NULL AFTER fk_product;
@@ -110,5 +125,27 @@ INSERT INTO llx_c_hrm_public_holiday (code, entity, fk_country, dayrule, year, m
INSERT INTO llx_c_hrm_public_holiday (code, entity, fk_country, dayrule, year, month, day, active) VALUES('BE-ASCENSION', 0, 2, 'ascension', 0, 0, 0, 1);
INSERT INTO llx_c_hrm_public_holiday (code, entity, fk_country, dayrule, year, month, day, active) VALUES('BE-PENTECOST', 0, 2, 'pentecost', 0, 0, 0, 1);
+ALTER TABLE llx_societe_rib ADD COLUMN state_id integer AFTER default_rib;
+ALTER TABLE llx_societe_rib ADD COLUMN fk_country integer AFTER state_id;
+ALTER TABLE llx_societe_rib ADD COLUMN currency_code varchar(3) AFTER fk_country;
+
+ALTER TABLE llx_user_rib ADD COLUMN state_id integer AFTER owner_address;
+ALTER TABLE llx_user_rib ADD COLUMN fk_country integer AFTER state_id;
+ALTER TABLE llx_user_rib ADD COLUMN currency_code varchar(3) AFTER fk_country;
+
+CREATE TABLE llx_bank_extrafields
+(
+ rowid integer AUTO_INCREMENT PRIMARY KEY,
+ tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ fk_object integer NOT NULL,
+ import_key varchar(14)
+)ENGINE=innodb;
+
+ALTER TABLE llx_bank_extrafields ADD INDEX idx_bank_extrafields (fk_object);
+
+ALTER TABLE llx_user CHANGE COLUMN note note_private text;
+
+UPDATE llx_c_effectif SET code='EF101-500', libelle='101 - 500' WHERE code='EF100-500';
+
ALTER TABLE llx_product ADD COLUMN fk_default_workstation integer DEFAULT NULL;
ALTER TABLE llx_bom_bomline ADD COLUMN fk_unit integer DEFAULT NULL;
diff --git a/htdocs/install/mysql/tables/llx_adherent.sql b/htdocs/install/mysql/tables/llx_adherent.sql
index be29e82d013..a91de4c65df 100644
--- a/htdocs/install/mysql/tables/llx_adherent.sql
+++ b/htdocs/install/mysql/tables/llx_adherent.sql
@@ -82,5 +82,6 @@ create table llx_adherent
fk_user_mod integer,
fk_user_valid integer,
canvas varchar(32), -- type of canvas if used (null by default)
+ ip varchar(250), -- ip used to create record (for public membership submission page)
import_key varchar(14) -- Import key
)ENGINE=innodb;
diff --git a/htdocs/install/mysql/tables/llx_bank_extrafields.key.sql b/htdocs/install/mysql/tables/llx_bank_extrafields.key.sql
new file mode 100644
index 00000000000..3d308e79684
--- /dev/null
+++ b/htdocs/install/mysql/tables/llx_bank_extrafields.key.sql
@@ -0,0 +1,20 @@
+-- ===================================================================
+-- Copyright (C) 2022 Frédéric France
+--
+-- This program is free software; you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation; either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program. If not, see .
+--
+-- ===================================================================
+
+
+ALTER TABLE llx_bank_extrafields ADD INDEX idx_bank_extrafields (fk_object);
diff --git a/htdocs/install/mysql/tables/llx_bank_extrafields.sql b/htdocs/install/mysql/tables/llx_bank_extrafields.sql
new file mode 100644
index 00000000000..3ca4f7a84d4
--- /dev/null
+++ b/htdocs/install/mysql/tables/llx_bank_extrafields.sql
@@ -0,0 +1,25 @@
+-- ===================================================================
+-- Copyright (C) 2022 Frédéric France
+--
+-- This program is free software; you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation; either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program. If not, see .
+--
+-- ===================================================================
+
+CREATE TABLE llx_bank_extrafields
+(
+ rowid integer AUTO_INCREMENT PRIMARY KEY,
+ tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ fk_object integer NOT NULL,
+ import_key varchar(14)
+)ENGINE=innodb;
diff --git a/htdocs/install/mysql/tables/llx_fichinterdet_rec.sql b/htdocs/install/mysql/tables/llx_fichinterdet_rec.sql
index ef799ea379a..bdef744df49 100644
--- a/htdocs/install/mysql/tables/llx_fichinterdet_rec.sql
+++ b/htdocs/install/mysql/tables/llx_fichinterdet_rec.sql
@@ -41,7 +41,6 @@ create table llx_fichinterdet_rec
localtax2_type VARCHAR(1) NULL DEFAULT NULL,
qty double NULL DEFAULT NULL,
remise_percent double NULL DEFAULT 0,
- remise double NULL DEFAULT 0,
fk_remise_except integer NULL DEFAULT NULL,
price DOUBLE(24, 8) NULL DEFAULT NULL,
total_tva DOUBLE(24, 8) NULL DEFAULT NULL,
@@ -55,7 +54,6 @@ create table llx_fichinterdet_rec
buy_price_ht DOUBLE(24, 8) NULL DEFAULT 0,
fk_product_fournisseur_price integer NULL DEFAULT NULL,
fk_code_ventilation integer NOT NULL DEFAULT 0,
- fk_export_commpta integer NOT NULL DEFAULT 0,
special_code integer UNSIGNED NULL DEFAULT 0,
fk_unit integer NULL DEFAULT NULL,
import_key varchar(14) NULL DEFAULT NULL
diff --git a/htdocs/install/mysql/tables/llx_holiday.sql b/htdocs/install/mysql/tables/llx_holiday.sql
index be468bd32a5..c6af12d453c 100644
--- a/htdocs/install/mysql/tables/llx_holiday.sql
+++ b/htdocs/install/mysql/tables/llx_holiday.sql
@@ -34,10 +34,10 @@ halfday integer DEFAULT 0, -- 0=start morning and end afternoon, -1=st
nb_open_day double(24,8) DEFAULT NULL, -- denormalized number of open days of holiday. Not always set. More reliable when re-calculated with num_open_days(date_debut, date_fin, halfday).
statut integer NOT NULL DEFAULT 1, -- status of leave request
fk_validator integer NOT NULL, -- who should approve the leave
-date_valid DATETIME DEFAULT NULL, -- date approval (currently both date valid and date_approval)
-fk_user_valid integer DEFAULT NULL, -- user approval (currently both user valid and user that approved)
-date_approve DATETIME DEFAULT NULL, -- date approval (not used yet)
-fk_user_approve integer DEFAULT NULL, -- user approval (not used yet)
+date_valid DATETIME DEFAULT NULL, -- date validation
+fk_user_valid integer DEFAULT NULL, -- user validation
+date_approval DATETIME DEFAULT NULL, -- date approval
+fk_user_approve integer DEFAULT NULL, -- user approval
date_refuse DATETIME DEFAULT NULL,
fk_user_refuse integer DEFAULT NULL,
date_cancel DATETIME DEFAULT NULL,
diff --git a/htdocs/install/mysql/tables/llx_partnership-partnership.sql b/htdocs/install/mysql/tables/llx_partnership-partnership.sql
index 8f83e2e82e5..d023e67920e 100644
--- a/htdocs/install/mysql/tables/llx_partnership-partnership.sql
+++ b/htdocs/install/mysql/tables/llx_partnership-partnership.sql
@@ -28,7 +28,7 @@ CREATE TABLE llx_partnership(
entity integer DEFAULT 1 NOT NULL, -- multi company id, 0 = all
reason_decline_or_cancel text NULL,
date_creation datetime NOT NULL,
- fk_user_creat integer NOT NULL,
+ fk_user_creat integer NULL, -- can be null if created from public page
tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
fk_user_modif integer,
note_private text,
@@ -37,6 +37,7 @@ CREATE TABLE llx_partnership(
url_to_check varchar(255), -- url to check to find a specific keyword (defined into llx_c_partnership) to keep status of partnership valid
count_last_url_check_error integer DEFAULT '0', -- last result of check of keyword into url
last_check_backlink datetime NULL, -- date of last check of keyword into url
+ ip varchar(250),
import_key varchar(14),
model_pdf varchar(255)
) ENGINE=innodb;
\ No newline at end of file
diff --git a/htdocs/install/mysql/tables/llx_societe_rib.sql b/htdocs/install/mysql/tables/llx_societe_rib.sql
index 9ea6ccf9188..a798f6ac594 100644
--- a/htdocs/install/mysql/tables/llx_societe_rib.sql
+++ b/htdocs/install/mysql/tables/llx_societe_rib.sql
@@ -43,20 +43,23 @@ create table llx_societe_rib
proprio varchar(60),
owner_address varchar(255),
default_rib smallint NOT NULL DEFAULT 0,
-
- -- For BAN direct debit feature
+ state_id integer,
+ fk_country integer,
+ currency_code varchar(3),
+
+ -- For BAN direct debit feature
rum varchar(32), -- RUM value to use for SEPA generation
date_rum date, -- Date of mandate
frstrecur varchar(16) default 'FRST', -- 'FRST' or 'RECUR'
-
+
--For credit card
last_four varchar(4), -- last 4
card_type varchar(255), -- card type 'VISA', 'MC' , ...
- cvn varchar(255),
+ cvn varchar(255),
exp_date_month INTEGER,
exp_date_year INTEGER,
country_code varchar(10),
-
+
--For Paypal
approved INTEGER DEFAULT 0,
email varchar(255),
@@ -65,7 +68,7 @@ create table llx_societe_rib
preapproval_key varchar(255),
starting_date date,
total_amount_of_all_payments double(24,8),
-
+
--For Stripe
stripe_card_ref varchar(128), -- 'card_...'
stripe_account varchar(128), -- 'pk_live_...'
diff --git a/htdocs/install/mysql/tables/llx_user.sql b/htdocs/install/mysql/tables/llx_user.sql
index ae3715eb028..7b86b5c3396 100644
--- a/htdocs/install/mysql/tables/llx_user.sql
+++ b/htdocs/install/mysql/tables/llx_user.sql
@@ -19,95 +19,95 @@
create table llx_user
(
- rowid integer AUTO_INCREMENT PRIMARY KEY,
- entity integer DEFAULT 1 NOT NULL, -- multi company id
+ rowid integer AUTO_INCREMENT PRIMARY KEY,
+ entity integer DEFAULT 1 NOT NULL, -- multi company id
- ref_employee varchar(50),
- ref_ext varchar(50), -- reference into an external system (not used by dolibarr)
+ ref_employee varchar(50),
+ ref_ext varchar(50), -- reference into an external system (not used by dolibarr)
- admin smallint DEFAULT 0, -- user has admin profile
+ admin smallint DEFAULT 0, -- user has admin profile
- employee tinyint DEFAULT 1, -- 1 if user is an employee
- fk_establishment integer DEFAULT 0,
+ employee tinyint DEFAULT 1, -- 1 if user is an employee
+ fk_establishment integer DEFAULT 0,
- datec datetime,
- tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
- fk_user_creat integer,
- fk_user_modif integer,
- login varchar(50) NOT NULL,
- pass_encoding varchar(24),
- pass varchar(128),
- pass_crypted varchar(128),
- pass_temp varchar(128), -- temporary password when asked for forget password or 'hashtoallowreset:YYYMMDDHHMMSS' (where date is max date of validity)
- api_key varchar(128), -- key to use REST API by this user
- gender varchar(10),
- civility varchar(6),
- lastname varchar(50),
- firstname varchar(50),
- address varchar(255), -- user personal address
- zip varchar(25), -- zipcode
- town varchar(50), -- town
- fk_state integer DEFAULT 0,
- fk_country integer DEFAULT 0,
- birth date, -- birthday
- job varchar(128),
- office_phone varchar(20),
- office_fax varchar(20),
- user_mobile varchar(20),
- personal_mobile varchar(20),
- email varchar(255),
- personal_email varchar(255),
- signature text DEFAULT NULL,
+ datec datetime, -- date/time of creation
+ tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+ fk_user_creat integer, -- user who created dataset
+ fk_user_modif integer, -- user who modified dataset
+ login varchar(50) NOT NULL,
+ pass_encoding varchar(24),
+ pass varchar(128),
+ pass_crypted varchar(128),
+ pass_temp varchar(128), -- temporary password when asked for forget password or 'hashtoallowreset:YYYMMDDHHMMSS' (where date is max date of validity)
+ api_key varchar(128), -- key to use REST API by this user
+ gender varchar(10),
+ civility varchar(6),
+ lastname varchar(50),
+ firstname varchar(50),
+ address varchar(255), -- user personal address
+ zip varchar(25), -- zipcode
+ town varchar(50), -- town
+ fk_state integer DEFAULT 0,
+ fk_country integer DEFAULT 0,
+ birth date, -- birthday
+ job varchar(128),
+ office_phone varchar(20),
+ office_fax varchar(20),
+ user_mobile varchar(20),
+ personal_mobile varchar(20),
+ email varchar(255),
+ personal_email varchar(255),
+ signature text DEFAULT NULL,
- socialnetworks text DEFAULT NULL, -- json with socialnetworks
+ socialnetworks text DEFAULT NULL, -- json with socialnetworks
--module_comm smallint DEFAULT 1,
--module_compta smallint DEFAULT 1,
- fk_soc integer NULL, -- id thirdparty if user linked to a company (external user)
- fk_socpeople integer NULL, -- id contact origin if user linked to a contact
- fk_member integer NULL, -- if member if suer linked to a member
- fk_user integer NULL, -- Supervisor, hierarchic parent
- fk_user_expense_validator integer NULL,
- fk_user_holiday_validator integer NULL,
+ fk_soc integer NULL, -- id thirdparty if user linked to a company (external user)
+ fk_socpeople integer NULL, -- id contact origin if user linked to a contact
+ fk_member integer NULL, -- if member if user linked to a member
+ fk_user integer NULL, -- Supervisor, hierarchic parent
+ fk_user_expense_validator integer NULL,
+ fk_user_holiday_validator integer NULL,
- idpers1 varchar(128),
- idpers2 varchar(128),
- idpers3 varchar(128),
+ idpers1 varchar(128),
+ idpers2 varchar(128),
+ idpers3 varchar(128),
- note_public text,
- note text DEFAULT NULL,
- model_pdf varchar(255) DEFAULT NULL,
- datelastlogin datetime,
- datepreviouslogin datetime,
- datelastpassvalidation datetime, -- last date we change password or we made a disconnect all
- datestartvalidity datetime,
- dateendvalidity datetime,
- iplastlogin varchar(250),
- ippreviouslogin varchar(250),
- egroupware_id integer,
- ldap_sid varchar(255) DEFAULT NULL,
- openid varchar(255),
- statut tinyint DEFAULT 1,
- photo varchar(255), -- filename or url of photo
- lang varchar(6), -- default language for communication. Note that language selected by user as interface language is savec into llx_user_param.
- color varchar(6),
- barcode varchar(255) DEFAULT NULL,
- fk_barcode_type integer DEFAULT 0,
- accountancy_code varchar(32) NULL,
- nb_holiday integer DEFAULT 0,
- thm double(24,8),
- tjm double(24,8),
+ note_public text,
+ note_private text DEFAULT NULL,
+ model_pdf varchar(255) DEFAULT NULL,
+ datelastlogin datetime,
+ datepreviouslogin datetime,
+ datelastpassvalidation datetime, -- last date we change password or we made a disconnect all
+ datestartvalidity datetime,
+ dateendvalidity datetime,
+ iplastlogin varchar(250),
+ ippreviouslogin varchar(250),
+ egroupware_id integer,
+ ldap_sid varchar(255) DEFAULT NULL,
+ openid varchar(255),
+ statut tinyint DEFAULT 1,
+ photo varchar(255), -- filename or url of photo
+ lang varchar(6), -- default language for communication. Note that language selected by user as interface language is savec into llx_user_param.
+ color varchar(6),
+ barcode varchar(255) DEFAULT NULL,
+ fk_barcode_type integer DEFAULT 0,
+ accountancy_code varchar(32) NULL,
+ nb_holiday integer DEFAULT 0,
+ thm double(24,8),
+ tjm double(24,8),
- salary double(24,8), -- denormalized value coming from llx_user_employment
- salaryextra double(24,8), -- denormalized value coming from llx_user_employment
- dateemployment date, -- denormalized value coming from llx_user_employment
- dateemploymentend date, -- denormalized value coming from llx_user_employment
- weeklyhours double(16,8), -- denormalized value coming from llx_user_employment
+ salary double(24,8), -- denormalized value coming from llx_user_employment
+ salaryextra double(24,8), -- denormalized value coming from llx_user_employment
+ dateemployment date, -- denormalized value coming from llx_user_employment
+ dateemploymentend date, -- denormalized value coming from llx_user_employment
+ weeklyhours double(16,8), -- denormalized value coming from llx_user_employment
- import_key varchar(14), -- import key
- default_range integer,
- default_c_exp_tax_cat integer,
+ import_key varchar(14), -- import key
+ default_range integer,
+ default_c_exp_tax_cat integer,
national_registration_number varchar(50),
- fk_warehouse integer -- default warehouse os user
+ fk_warehouse integer -- default warehouse of user
)ENGINE=innodb;
diff --git a/htdocs/install/mysql/tables/llx_user_rib.sql b/htdocs/install/mysql/tables/llx_user_rib.sql
index 4463a1f6f2b..c98e447a75e 100644
--- a/htdocs/install/mysql/tables/llx_user_rib.sql
+++ b/htdocs/install/mysql/tables/llx_user_rib.sql
@@ -33,5 +33,8 @@ create table llx_user_rib
iban_prefix varchar(34), -- full iban. 34 according to ISO 13616
domiciliation varchar(255),
proprio varchar(60),
- owner_address varchar(255)
+ owner_address varchar(255),
+ state_id integer,
+ fk_country integer,
+ currency_code varchar(3)
)ENGINE=innodb;
diff --git a/htdocs/install/upgrade2.php b/htdocs/install/upgrade2.php
index 66200898e95..01e89bf51ff 100644
--- a/htdocs/install/upgrade2.php
+++ b/htdocs/install/upgrade2.php
@@ -420,7 +420,7 @@ if (!GETPOST('action', 'aZ09') || preg_match('/upgrade/i', GETPOST('action', 'aZ
$afterversionarray = explode('.', '5.0.9');
$beforeversionarray = explode('.', '6.0.9');
if (versioncompare($versiontoarray, $afterversionarray) >= 0 && versioncompare($versiontoarray, $beforeversionarray) <= 0) {
- if (!empty($conf->multicompany->enabled)) {
+ if (isModEnabled('multicompany')) {
global $multicompany_transverse_mode;
// Only if the transverse mode is not used
@@ -574,7 +574,7 @@ if (!GETPOST('action', 'aZ09') || preg_match('/upgrade/i', GETPOST('action', 'aZ
print '';
}
} else {
- //if (! empty($conf->modules))
+ //if (!empty($conf->modules))
if (!empty($conf->modules_parts['hooks'])) { // If there is at least one module with one hook, we show message to say nothing was done
print '';
print ''.$langs->trans('UpgradeExternalModule').' : '.$langs->trans("NodoUpgradeAfterDB");
@@ -646,7 +646,7 @@ if (!GETPOST('action', 'aZ09') || preg_match('/upgrade/i', GETPOST('action', 'aZ
print ' ';
}
} else {
- //if (! empty($conf->modules))
+ //if (!empty($conf->modules))
if (!empty($conf->modules_parts['hooks'])) { // If there is at least one module with one hook, we show message to say nothing was done
print '';
print ''.$langs->trans('UpgradeExternalModule').' : '.$langs->trans("NodoUpgradeAfterFiles");
@@ -2024,7 +2024,7 @@ function migrate_modeles($db, $langs, $conf)
}
}
- if (!empty($conf->commande->enabled)) {
+ if (isModEnabled('commande')) {
include_once DOL_DOCUMENT_ROOT.'/core/modules/commande/modules_commande.php';
$modellist = ModelePDFCommandes::liste_modeles($db);
if (count($modellist) == 0) {
@@ -2037,7 +2037,7 @@ function migrate_modeles($db, $langs, $conf)
}
}
- if (!empty($conf->expedition->enabled)) {
+ if (isModEnabled("expedition")) {
include_once DOL_DOCUMENT_ROOT.'/core/modules/expedition/modules_expedition.php';
$modellist = ModelePDFExpedition::liste_modeles($db);
if (count($modellist) == 0) {
diff --git a/htdocs/intracommreport/card.php b/htdocs/intracommreport/card.php
index 681320e0d75..a5acefca8d6 100644
--- a/htdocs/intracommreport/card.php
+++ b/htdocs/intracommreport/card.php
@@ -155,10 +155,11 @@ if ($action == 'add' && $permissiontoadd) {
* View
*/
+$title = $langs->trans("IntracommReportTitle");
+llxHeader("", $title);
+
// Creation mode
if ($action == 'create') {
- $title = $langs->trans("IntracommReportTitle");
- llxHeader("", $title);
print load_fiche_titre($langs->trans("IntracommReportTitle"));
print '';
@@ -294,8 +295,6 @@ if ($id > 0 && $action != 'edit') {
{
global $langs, $formother, $year, $month, $type_declaration;
- $title = $langs->trans("IntracommReportDESTitle");
- llxHeader("", $title);
print load_fiche_titre($langs->trans("IntracommReportDESTitle"));
print dol_get_fiche_head();
diff --git a/htdocs/intracommreport/list.php b/htdocs/intracommreport/list.php
index 1478dbea83f..244ebdd862f 100644
--- a/htdocs/intracommreport/list.php
+++ b/htdocs/intracommreport/list.php
@@ -121,7 +121,7 @@ $isInEEC = isInEEC($mysoc);
$arrayfields = array(
'i.ref' => array('label'=>$langs->trans("Ref"), 'checked'=>1),
'i.label' => array('label'=>$langs->trans("Label"), 'checked'=>1),
- 'i.fk_product_type'=>array('label'=>$langs->trans("Type"), 'checked'=>0, 'enabled'=>(!empty($conf->produit->enabled) && !empty($conf->service->enabled))),
+ 'i.fk_product_type'=>array('label'=>$langs->trans("Type"), 'checked'=>0, 'enabled'=>(!empty($conf->produit->enabled) && isModEnabled("service"))),
);
/*
// Extra fields
@@ -129,7 +129,7 @@ if (isset($extrafields->attributes[$object->table_element]['label']) && is_array
{
foreach($extrafields->attributes[$object->table_element]['label'] as $key => $val)
{
- if (! empty($extrafields->attributes[$object->table_element]['list'][$key]))
+ if (!empty($extrafields->attributes[$object->table_element]['list'][$key]))
$arrayfields["ef.".$key]=array('label'=>$extrafields->attributes[$object->table_element]['label'][$key], 'checked'=>(($extrafields->attributes[$object->table_element]['list'][$key]<0)?0:1), 'position'=>$extrafields->attributes[$object->table_element]['pos'][$key], 'enabled'=>(abs((int) $extrafields->attributes[$object->table_element]['list'][$key])!=3 && $extrafields->attributes[$object->table_element]['perms'][$key]));
}
}
@@ -206,7 +206,7 @@ $title = $langs->trans('IntracommReportList'.$type);
$sql = 'SELECT DISTINCT i.rowid, i.type_declaration, i.type_export, i.periods, i.mode, i.entity';
/*
// Add fields from extrafields
-if (! empty($extrafields->attributes[$object->table_element]['label'])) {
+if (!empty($extrafields->attributes[$object->table_element]['label'])) {
foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) $sql.=($extrafields->attributes[$object->table_element]['type'][$key] != 'separate' ? ", ef.".$key." as options_".$key : '');
}
*/
@@ -255,7 +255,7 @@ $sql .= " GROUP BY i.rowid, i.type_declaration, i.type_export, i.periods, i.mode
/*
// Add fields from extrafields
-if (! empty($extrafields->attributes[$object->table_element]['label'])) {
+if (!empty($extrafields->attributes[$object->table_element]['label'])) {
foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) $sql.=($extrafields->attributes[$object->table_element]['type'][$key] != 'separate' ? ", ef.".$key : '');
}
*/
diff --git a/htdocs/knowledgemanagement/class/knowledgerecord.class.php b/htdocs/knowledgemanagement/class/knowledgerecord.class.php
index d48be5e2a21..c20fa91c621 100644
--- a/htdocs/knowledgemanagement/class/knowledgerecord.class.php
+++ b/htdocs/knowledgemanagement/class/knowledgerecord.class.php
@@ -187,7 +187,7 @@ class KnowledgeRecord extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -530,8 +530,8 @@ class KnowledgeRecord extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->knowledgemanagement->knowledgerecord->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->knowledgemanagement->knowledgerecord->knowledgerecord_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->knowledgemanagement->knowledgerecord->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->knowledgemanagement->knowledgerecord->knowledgerecord_advance->validate))))
{
$this->error='NotEnoughPermissions';
dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR);
@@ -648,8 +648,8 @@ class KnowledgeRecord extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->knowledgemanagement->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->knowledgemanagement->knowledgemanagement_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->knowledgemanagement->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->knowledgemanagement->knowledgemanagement_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -672,8 +672,8 @@ class KnowledgeRecord extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->knowledgemanagement->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->knowledgemanagement->knowledgemanagement_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->knowledgemanagement->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->knowledgemanagement->knowledgemanagement_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -696,8 +696,8 @@ class KnowledgeRecord extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->knowledgemanagement->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->knowledgemanagement->knowledgemanagement_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->knowledgemanagement->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->knowledgemanagement->knowledgemanagement_advance->validate))))
{
$this->error='Permission denied';
return -1;
diff --git a/htdocs/knowledgemanagement/knowledgemanagementindex.php b/htdocs/knowledgemanagement/knowledgemanagementindex.php
index ccb3503eb2f..8f168e62598 100644
--- a/htdocs/knowledgemanagement/knowledgemanagementindex.php
+++ b/htdocs/knowledgemanagement/knowledgemanagementindex.php
@@ -72,7 +72,7 @@ print '';
/* BEGIN MODULEBUILDER DRAFT MYOBJECT
// Draft MyObject
-if (! empty($conf->knowledgemanagement->enabled) && $user->rights->knowledgemanagement->read)
+if (!empty($conf->knowledgemanagement->enabled) && $user->rights->knowledgemanagement->read)
{
$langs->load("orders");
@@ -153,7 +153,7 @@ $max = $NBMAX;
/* BEGIN MODULEBUILDER LASTMODIFIED MYOBJECT
// Last modified myobject
-if (! empty($conf->knowledgemanagement->enabled) && $user->rights->knowledgemanagement->read) {
+if (!empty($conf->knowledgemanagement->enabled) && $user->rights->knowledgemanagement->read) {
$sql = "SELECT s.rowid, s.ref, s.label, s.date_creation, s.tms";
$sql.= " FROM ".MAIN_DB_PREFIX."knowledgemanagement_myobject as s";
//if (! $user->rights->societe->client->voir && ! $socid) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc";
diff --git a/htdocs/knowledgemanagement/knowledgerecord_agenda.php b/htdocs/knowledgemanagement/knowledgerecord_agenda.php
index cbf8ccf0895..475fbdccb30 100644
--- a/htdocs/knowledgemanagement/knowledgerecord_agenda.php
+++ b/htdocs/knowledgemanagement/knowledgerecord_agenda.php
@@ -126,7 +126,7 @@ $form = new Form($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
- //if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
+ //if (!empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
$help_url = '';
llxHeader('', $title, $help_url);
@@ -150,7 +150,7 @@ if ($object->id > 0) {
// Thirdparty
$morehtmlref.=' '.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref.=' '.$langs->trans('Project') . ' ';
if ($permissiontoadd) {
@@ -170,7 +170,7 @@ if ($object->id > 0) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/knowledgemanagement/knowledgerecord_card.php b/htdocs/knowledgemanagement/knowledgerecord_card.php
index 66b7b0ca160..c68389f2b86 100644
--- a/htdocs/knowledgemanagement/knowledgerecord_card.php
+++ b/htdocs/knowledgemanagement/knowledgerecord_card.php
@@ -189,7 +189,7 @@ if ($action == 'create') {
// Common attributes
include DOL_DOCUMENT_ROOT.'/core/tpl/commonfields_add.tpl.php';
- if (!empty($conf->categorie->enabled)) {
+ if (isModEnabled('categorie')) {
$cate_arbo = $form->select_all_categories(Categorie::TYPE_KNOWLEDGEMANAGEMENT, '', 'parent', 64, 0, 1);
if (count($cate_arbo)) {
@@ -236,7 +236,7 @@ if (($id || $ref) && $action == 'edit') {
// Common attributes
include DOL_DOCUMENT_ROOT.'/core/tpl/commonfields_edit.tpl.php';
- if (!empty($conf->categorie->enabled)) {
+ if (isModEnabled('categorie')) {
$cate_arbo = $form->select_all_categories(Categorie::TYPE_KNOWLEDGEMANAGEMENT, '', 'parent', 64, 0, 1);
if (count($cate_arbo)) {
@@ -294,7 +294,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
// Confirmation of action xxxx (You can use it for xxx = 'close', xxx = 'reopen', ...)
if ($action == 'close') {
$text = $langs->trans('ConfirmCloseKM', $object->ref);
- /*if (! empty($conf->notification->enabled))
+ /*if (!empty($conf->notification->enabled))
{
require_once DOL_DOCUMENT_ROOT . '/core/class/notify.class.php';
$notify = new Notify($db);
@@ -319,7 +319,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
// Confirmation of action xxxx (You can use it for xxx = 'close', xxx = 'reopen', ...)
if ($action == 'reopen') {
$text = $langs->trans('ConfirmReopenKM', $object->ref);
- /*if (! empty($conf->notification->enabled))
+ /*if (!empty($conf->notification->enabled))
{
require_once DOL_DOCUMENT_ROOT . '/core/class/notify.class.php';
$notify = new Notify($db);
@@ -366,7 +366,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
// Thirdparty
$morehtmlref.=' '.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project') . ' ';
if ($permissiontoadd) {
@@ -384,7 +384,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/knowledgemanagement/knowledgerecord_contact.php b/htdocs/knowledgemanagement/knowledgerecord_contact.php
index 2b2facafc18..e1c77ab0d7b 100644
--- a/htdocs/knowledgemanagement/knowledgerecord_contact.php
+++ b/htdocs/knowledgemanagement/knowledgerecord_contact.php
@@ -132,7 +132,7 @@ if ($object->id) {
// Thirdparty
$morehtmlref.=' '.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (isModEnabled('project'))
{
$langs->load("projects");
$morehtmlref.=' '.$langs->trans('Project') . ' ';
@@ -153,7 +153,7 @@ if ($object->id) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/knowledgemanagement/knowledgerecord_document.php b/htdocs/knowledgemanagement/knowledgerecord_document.php
index ce185c9b8cf..fff7ad68601 100644
--- a/htdocs/knowledgemanagement/knowledgerecord_document.php
+++ b/htdocs/knowledgemanagement/knowledgerecord_document.php
@@ -130,7 +130,7 @@ if ($object->id) {
// Thirdparty
$morehtmlref.=' '.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (isModEnabled('project'))
{
$langs->load("projects");
$morehtmlref.=' '.$langs->trans('Project') . ' ';
@@ -151,7 +151,7 @@ if ($object->id) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/knowledgemanagement/knowledgerecord_list.php b/htdocs/knowledgemanagement/knowledgerecord_list.php
index 18ec0d67738..92b2b3f2adc 100644
--- a/htdocs/knowledgemanagement/knowledgerecord_list.php
+++ b/htdocs/knowledgemanagement/knowledgerecord_list.php
@@ -34,7 +34,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php';
require_once DOL_DOCUMENT_ROOT.'/knowledgemanagement/class/knowledgerecord.class.php';
// for other modules
-if (!empty($conf->categorie->enabled)) {
+if (isModEnabled('categorie')) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
}
//dol_include_once('/othermodule/class/otherobject.class.php');
@@ -330,7 +330,7 @@ foreach($object->fields as $key => $val) {
$sql .= "t.".$key.", ";
}
// Add fields from extrafields
-if (! empty($extrafields->attributes[$object->table_element]['label'])) {
+if (!empty($extrafields->attributes[$object->table_element]['label'])) {
foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) $sql.=($extrafields->attributes[$object->table_element]['type'][$key] != 'separate' ? "ef.".$key.', ' : '');
}
// Add where from hooks
@@ -475,7 +475,7 @@ $moreforfilter.= '
';*/
// Filter on categories
$moreforfilter = '';
-if (!empty($conf->categorie->enabled) && $user->rights->categorie->lire) {
+if (isModEnabled('categorie') && $user->rights->categorie->lire) {
$moreforfilter .= '
';
$moreforfilter .= img_picto($langs->trans('Categories'), 'category', 'class="pictofixedwidth"');
$categoriesKnowledgeArr = $form->select_all_categories(Categorie::TYPE_KNOWLEDGEMANAGEMENT, '', '', 64, 0, 1);
diff --git a/htdocs/knowledgemanagement/knowledgerecord_note.php b/htdocs/knowledgemanagement/knowledgerecord_note.php
index 0f56a6115a3..3abc9e71866 100644
--- a/htdocs/knowledgemanagement/knowledgerecord_note.php
+++ b/htdocs/knowledgemanagement/knowledgerecord_note.php
@@ -104,7 +104,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (isModEnabled('project'))
{
$langs->load("projects");
$morehtmlref.='
'.$langs->trans('Project') . ' ';
@@ -125,7 +125,7 @@ if ($id > 0 || !empty($ref)) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang
index c68a0ada7d6..d82631cc8fa 100644
--- a/htdocs/langs/en_US/admin.lang
+++ b/htdocs/langs/en_US/admin.lang
@@ -441,6 +441,7 @@ ExtrafieldPhone = Phone
ExtrafieldPrice = Price
ExtrafieldMail = Email
ExtrafieldUrl = Url
+ExtrafieldIP = IP
ExtrafieldSelect = Select list
ExtrafieldSelectList = Select from table
ExtrafieldSeparator=Separator (not a field)
@@ -714,6 +715,7 @@ Permission27=Delete commercial proposals
Permission28=Export commercial proposals
Permission31=Read products
Permission32=Create/modify products
+Permission33=Read prices products
Permission34=Delete products
Permission36=See/manage hidden products
Permission38=Export products
@@ -875,6 +877,7 @@ Permission525=Access loan calculator
Permission527=Export loans
Permission531=Read services
Permission532=Create/modify services
+Permission533=Read prices services
Permission534=Delete services
Permission536=See/manage hidden services
Permission538=Export services
@@ -1236,6 +1239,7 @@ BrowserName=Browser name
BrowserOS=Browser OS
ListOfSecurityEvents=List of Dolibarr security events
SecurityEventsPurged=Security events purged
+TrackableSecurityEvents=Trackable security events
LogEventDesc=Enable logging for specific security events. Administrators the log via menu
%s - %s . Warning, this feature can generate a large amount of data in the database.
AreaForAdminOnly=Setup parameters can be set by
administrator users only.
SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only.
@@ -1763,7 +1767,7 @@ DetailMenuHandler=Menu handler where to show new menu
DetailMenuModule=Module name if menu entry come from a module
DetailType=Type of menu (top or left)
DetailTitre=Menu label or label code for translation
-DetailUrl=URL where menu send you (Absolute URL link or external link with http://)
+DetailUrl=URL where menu send you (Relative URL link or external link with https://)
DetailEnabled=Condition to show or not entry
DetailRight=Condition to display unauthorized grey menus
DetailLangs=Lang file name for label code translation
@@ -2221,7 +2225,7 @@ NoExternalModuleWithUpdate=No updates found for external modules
SwaggerDescriptionFile=Swagger API description file (for use with redoc for example)
YouEnableDeprecatedWSAPIsUseRESTAPIsInstead=You enabled deprecated WS API. You should use REST API instead.
RandomlySelectedIfSeveral=Randomly selected if several pictures are available
-SalesRepresentativeInfo=For Proposals, Orders, Invoces.
+SalesRepresentativeInfo=For Proposals, Orders, Invoices.
DatabasePasswordObfuscated=Database password is obfuscated in conf file
DatabasePasswordNotObfuscated=Database password is NOT obfuscated in conf file
APIsAreNotEnabled=APIs modules are not enabled
@@ -2303,4 +2307,6 @@ MAIN_MAIL_SMTPS_AUTH_TYPE=Authentification method
UsePassword=Use a password
UseOauth=Use a OAUTH token
Images=Images
-MaxNumberOfImagesInGetPost=Max number of images allowed in GETPOST check
\ No newline at end of file
+MaxNumberOfImagesInGetPost=Max number of images allowed in a HTML field submitted in a form
+ScriptIsEmpty=The script is empty
+ShowHideTheNRequests=Show/hide the %s SQL request(s)
\ No newline at end of file
diff --git a/htdocs/langs/en_US/banks.lang b/htdocs/langs/en_US/banks.lang
index 10ba859e71f..71a80406ae4 100644
--- a/htdocs/langs/en_US/banks.lang
+++ b/htdocs/langs/en_US/banks.lang
@@ -185,3 +185,4 @@ AlreadyOneBankAccount=Already one bank account defined
SEPAXMLPlacePaymentTypeInformationInCreditTransfertransactionInformation=SEPA transfer: 'Payment Type' at 'Credit Transfer' level
SEPAXMLPlacePaymentTypeInformationInCreditTransfertransactionInformationHelp=When generatin a SEPA XML file for Credit transfers, the section "PaymentTypeInformation" can now be placed inside the "CreditTransferTransactionInformation" section (instead of "Payment" section). We strongly recommend to keep this unchecked to place PaymentTypeInformation at Payment level, as all banks will not necessarily accept it at CreditTransferTransactionInformation level. Contact your bank before placing PaymentTypeInformation at CreditTransferTransactionInformation level.
ToCreateRelatedRecordIntoBank=To create missing related bank record
+BanklineExtraFields=Bank Line Extrafields
diff --git a/htdocs/langs/en_US/bookmarks.lang b/htdocs/langs/en_US/bookmarks.lang
index be0f2f7e25d..26551eee4f0 100644
--- a/htdocs/langs/en_US/bookmarks.lang
+++ b/htdocs/langs/en_US/bookmarks.lang
@@ -20,3 +20,4 @@ ChooseIfANewWindowMustBeOpenedOnClickOnBookmark=Choose if the linked page should
BookmarksManagement=Bookmarks management
BookmarksMenuShortCut=Ctrl + shift + m
NoBookmarks=No bookmarks defined
+NoBookmarkFound=No bookmark found
\ No newline at end of file
diff --git a/htdocs/langs/en_US/companies.lang b/htdocs/langs/en_US/companies.lang
index 996c98c203a..2ef90f89600 100644
--- a/htdocs/langs/en_US/companies.lang
+++ b/htdocs/langs/en_US/companies.lang
@@ -498,3 +498,5 @@ RestOfEurope=Rest of Europe (EEC)
OutOfEurope=Out of Europe (EEC)
CurrentOutstandingBillLate=Current outstanding bill late
BecarefullChangeThirdpartyBeforeAddProductToInvoice=Be carefull, depending on your product price settings, you should change thirdparty before adding product to POS.
+EmailAlreadyExistsPleaseRewriteYourCompanyName=email already exists please rewrite your company name
+TwoRecordsOfCompanyName=more than one record exists for this company please contact us to complete your partnership request"
\ No newline at end of file
diff --git a/htdocs/langs/en_US/contracts.lang b/htdocs/langs/en_US/contracts.lang
index 8d209623c1b..ab94a63bcc3 100644
--- a/htdocs/langs/en_US/contracts.lang
+++ b/htdocs/langs/en_US/contracts.lang
@@ -80,7 +80,7 @@ ConfirmDeleteContractLine=Are you sure you want to delete this contract line?
MoveToAnotherContract=Move service into another contract.
ConfirmMoveToAnotherContract=I choosed new target contract and confirm I want to move this service into this contract.
ConfirmMoveToAnotherContractQuestion=Choose in which existing contract (of same third party), you want to move this service to?
-PaymentRenewContractId=Renew contract line (number %s)
+PaymentRenewContractId=Renew contract %s (service %s)
ExpiredSince=Expiration date
NoExpiredServices=No expired active services
ListOfServicesToExpireWithDuration=List of Services to expire in %s days
diff --git a/htdocs/langs/en_US/cron.lang b/htdocs/langs/en_US/cron.lang
index 9705f8823b0..d9bdd2691eb 100644
--- a/htdocs/langs/en_US/cron.lang
+++ b/htdocs/langs/en_US/cron.lang
@@ -84,6 +84,8 @@ MakeLocalDatabaseDumpShort=Local database backup
MakeLocalDatabaseDump=Create a local database dump. Parameters are: compression ('gz' or 'bz' or 'none'), backup type ('mysql', 'pgsql', 'auto'), 1, 'auto' or filename to build, number of backup files to keep
MakeSendLocalDatabaseDumpShort=Send local database backup
MakeSendLocalDatabaseDump=Send local database backup by email. Parameters are: to, from, subject, message, filename (Name of file sent), filter ('sql' for backup of database only)
+CleanUnfinishedCronjobShort=Clean unfinished cronjob
+CleanUnfinishedCronjob=Clean cronjob stuck in processing when the process is no longer running
WarningCronDelayed=Attention, for performance purpose, whatever is next date of execution of enabled jobs, your jobs may be delayed to a maximum of %s hours, before being run.
DATAPOLICYJob=Data cleaner and anonymizer
JobXMustBeEnabled=Job %s must be enabled
@@ -91,3 +93,4 @@ JobXMustBeEnabled=Job %s must be enabled
LastExecutedScheduledJob=Last executed scheduled job
NextScheduledJobExecute=Next scheduled job to execute
NumberScheduledJobError=Number of scheduled jobs in error
+NumberScheduledJobNeverFinished=Number of scheduled jobs never finished
diff --git a/htdocs/langs/en_US/holiday.lang b/htdocs/langs/en_US/holiday.lang
index 0ab79985ea7..95c8f54d211 100644
--- a/htdocs/langs/en_US/holiday.lang
+++ b/htdocs/langs/en_US/holiday.lang
@@ -1,6 +1,7 @@
# Dolibarr language file - Source file is en_US - holiday
HRM=HRM
-Holidays=Leave
+Holidays=Leaves
+Holiday=Leave
CPTitreMenu=Leave
MenuReportMonth=Monthly statement
MenuAddCP=New leave request
@@ -57,6 +58,7 @@ ConfirmDeleteCP=Confirm the deletion of this leave request?
ErrorCantDeleteCP=Error you don't have the right to delete this leave request.
CantCreateCP=You don't have the right to make leave requests.
InvalidValidatorCP=You must choose the approver for your leave request.
+InvalidValidator=The user chosen isn't an approver.
NoDateDebut=You must select a start date.
NoDateFin=You must select an end date.
ErrorDureeCP=Your leave request does not contain working day.
@@ -147,4 +149,4 @@ XIsAUsualNonWorkingDay=%s is usualy a NON working day
BlockHolidayIfNegative=Block if balance negative
LeaveRequestCreationBlockedBecauseBalanceIsNegative=The creation of this leave request is blocked because your balance is negative
ErrorLeaveRequestMustBeDraftCanceledOrRefusedToBeDeleted=Leave request %s must be draft, canceled or refused to be deleted
-HolidayQtyNotModified=Balance of remaining days for %s has not been changed
\ No newline at end of file
+HolidayQtyNotModified=Balance of remaining days for %s has not been changed
diff --git a/htdocs/langs/en_US/mailmanspip.lang b/htdocs/langs/en_US/mailmanspip.lang
index bab4b3576b4..6ff3ac9f770 100644
--- a/htdocs/langs/en_US/mailmanspip.lang
+++ b/htdocs/langs/en_US/mailmanspip.lang
@@ -7,7 +7,7 @@ MailmanCreationSuccess=Subscription test was executed successfully
MailmanDeletionSuccess=Unsubscription test was executed successfully
SynchroMailManEnabled=A Mailman update will be performed
SynchroSpipEnabled=A Spip update will be performed
-DescADHERENT_MAILMAN_ADMINPW=Mailman administrator password
+DescADHERENT_MAILMAN_ADMIN_PASSWORD=Mailman administrator password
DescADHERENT_MAILMAN_URL=URL for Mailman subscriptions
DescADHERENT_MAILMAN_UNSUB_URL=URL for Mailman unsubscriptions
DescADHERENT_MAILMAN_LISTS=List(s) for automatic inscription of new members (separated by a comma)
diff --git a/htdocs/langs/en_US/modulebuilder.lang b/htdocs/langs/en_US/modulebuilder.lang
index cab8fa37f16..a16dfc52ed2 100644
--- a/htdocs/langs/en_US/modulebuilder.lang
+++ b/htdocs/langs/en_US/modulebuilder.lang
@@ -50,6 +50,7 @@ PathToModulePackage=Path to zip of module/application package
PathToModuleDocumentation=Path to file of module/application documentation (%s)
SpaceOrSpecialCharAreNotAllowed=Spaces or special characters are not allowed.
FileNotYetGenerated=File not yet generated
+GenerateCode=Generate code
RegenerateClassAndSql=Force update of .class and .sql files
RegenerateMissingFiles=Generate missing files
SpecificationFile=File of documentation
@@ -88,8 +89,8 @@ ListOfMenusEntries=List of menu entries
ListOfDictionariesEntries=List of dictionaries entries
ListOfPermissionsDefined=List of defined permissions
SeeExamples=See examples here
-EnabledDesc=Condition to have this field active (Examples: 1 or $conf->global->MYMODULE_MYOPTION)
-VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).
Using a negative value means field is not shown by default on list but can be selected for viewing).
It can be an expression, for example:
preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
($user->rights->holiday->define_holiday ? 1 : 0)
+EnabledDesc=Condition to have this field active.
Examples:
1
isModEnabled('MAIN_MODULE_MYMODULE')
getDolGlobalString('MYMODULE_OPTION')==2
+VisibleDesc=Is the field visible ? (Examples: 0=Never visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create), 5=Visible on list end view form only (not create, not update).
Using a negative value means field is not shown by default on list but can be selected for viewing).
It can be an expression, for example:
preg_match('/public/', $_SERVER['PHP_SELF'])?0:1
$user->hasRights('holiday', 'define_holiday')?1:5
DisplayOnPdfDesc=Display this field on compatible PDF documents, you can manage position with "Position" field.
Currently, known compatibles PDF models are : eratosthene (order), espadon (ship), sponge (invoices), cyan (propal/quotation), cornas (supplier order)
For document : 0 = not displayed
1 = display
2 = display only if not empty
For document lines : 0 = not displayed
1 = displayed in a column
3 = display in line description column after the description
4 = display in description column after the description only if not empty
DisplayOnPdf=Display on PDF
IsAMeasureDesc=Can the value of field be cumulated to get a total into list? (Examples: 1 or 0)
diff --git a/htdocs/langs/en_US/partnership.lang b/htdocs/langs/en_US/partnership.lang
index 5c85e4d7830..6490bf23d8b 100644
--- a/htdocs/langs/en_US/partnership.lang
+++ b/htdocs/langs/en_US/partnership.lang
@@ -28,6 +28,7 @@ PartnershipCheckBacklink=Partnership: Check referring backlink
# Menu
#
NewPartnership=New Partnership
+NewPartnershipbyWeb= Your partnership was added successfully.
ListOfPartnerships=List of partnership
#
diff --git a/htdocs/langs/en_US/products.lang b/htdocs/langs/en_US/products.lang
index 46766dcafb4..bf2dabf5a0a 100644
--- a/htdocs/langs/en_US/products.lang
+++ b/htdocs/langs/en_US/products.lang
@@ -345,7 +345,7 @@ PossibleValues=Possible values
GoOnMenuToCreateVairants=Go on menu %s - %s to prepare attribute variants (like colors, size, ...)
UseProductFournDesc=Add a feature to define the product description defined by the vendors (for each vendor reference) in addition to the description for customers
ProductSupplierDescription=Vendor description for the product
-UseProductSupplierPackaging=Use packaging on supplier prices (recalculate quantities according to packaging set on supplier price when adding/updating line in supplier documents)
+UseProductSupplierPackaging=Use packaging for prices rounded to multiples for purchase prices (recalculate quantities according to multiples set on purchase prices when adding/updating line in a vendor documents)
PackagingForThisProduct=Packaging
PackagingForThisProductDesc=You will automaticaly purchase a multiple of this quantity.
QtyRecalculatedWithPackaging=The quantity of the line were recalculated according to supplier packaging
diff --git a/htdocs/langs/en_US/recruitment.lang b/htdocs/langs/en_US/recruitment.lang
index 888f6fe5225..1f80ecf1082 100644
--- a/htdocs/langs/en_US/recruitment.lang
+++ b/htdocs/langs/en_US/recruitment.lang
@@ -57,8 +57,9 @@ EmailRecruiter=Email recruiter
ToUseAGenericEmail=To use a generic email. If not defined, the email of the responsible of recruitment will be used
NewCandidature=New application
ListOfCandidatures=List of applications
-RequestedRemuneration=Requested remuneration
-ProposedRemuneration=Proposed remuneration
+Remuneration=Salary
+RequestedRemuneration=Requested salary
+ProposedRemuneration=Proposed salary
ContractProposed=Contract proposed
ContractSigned=Contract signed
ContractRefused=Contract refused
diff --git a/htdocs/langs/en_US/stocks.lang b/htdocs/langs/en_US/stocks.lang
index 47483bb8f3b..492cdd48864 100644
--- a/htdocs/langs/en_US/stocks.lang
+++ b/htdocs/langs/en_US/stocks.lang
@@ -24,6 +24,7 @@ StockAtDateInFuture=Date in the future
StocksByLotSerial=Stocks by lot/serial
LotSerial=Lots/Serials
LotSerialList=List of lot/serials
+SubjectToLotSerialOnly=Products subject to lot/serial only
Movements=Movements
ErrorWarehouseRefRequired=Warehouse reference name is required
ListOfWarehouses=List of warehouses
diff --git a/htdocs/langs/en_US/ticket.lang b/htdocs/langs/en_US/ticket.lang
index f34f338c931..3e252e407e4 100644
--- a/htdocs/langs/en_US/ticket.lang
+++ b/htdocs/langs/en_US/ticket.lang
@@ -296,7 +296,7 @@ TicketNewEmailBodyInfosTrackUrlCustomer=You can view the progress of the ticket
TicketCloseEmailBodyInfosTrackUrlCustomer=You can consult the history of this ticket by clicking the following link
TicketEmailPleaseDoNotReplyToThisEmail=Please do not reply directly to this email! Use the link to reply into the interface.
TicketPublicInfoCreateTicket=This form allows you to record a support ticket in our management system.
-TicketPublicPleaseBeAccuratelyDescribe=Please accurately describe the problem. Provide the most information possible to allow us to correctly identify your request.
+TicketPublicPleaseBeAccuratelyDescribe=Please accurately describe your question. Provide the most information possible to allow us to correctly identify your request.
TicketPublicMsgViewLogIn=Please enter ticket tracking ID
TicketTrackId=Public Tracking ID
OneOfTicketTrackId=One of your tracking ID
diff --git a/htdocs/langs/en_US/website.lang b/htdocs/langs/en_US/website.lang
index 3d5a57e91d3..379eadef08f 100644
--- a/htdocs/langs/en_US/website.lang
+++ b/htdocs/langs/en_US/website.lang
@@ -16,9 +16,9 @@ WEBSITE_HTML_HEADER=Addition at bottom of HTML Header (common to all pages)
WEBSITE_ROBOT=Robot file (robots.txt)
WEBSITE_HTACCESS=Website .htaccess file
WEBSITE_MANIFEST_JSON=Website manifest.json file
-WEBSITE_README=README.md file
WEBSITE_KEYWORDSDesc=Use a comma to separate values
-EnterHereLicenseInformation=Enter here meta data or license information to fille a README.md file. if you distribute your website as a template, the file will be included into the temptate package.
+EnterHereReadmeInformation=Enter here a description of the website. If you distribute your website as a template, the file will be included into the temptate package.
+EnterHereLicenseInformation=Enter here the LICENSE of the code of the website. If you distribute your website as a template, the file will be included into the temptate package.
HtmlHeaderPage=HTML header (specific to this page only)
PageNameAliasHelp=Name or alias of the page.
This alias is also used to forge a SEO URL when website is ran from a Virtual host of a Web server (like Apacke, Nginx, ...). Use the button "
%s " to edit this alias.
EditTheWebSiteForACommonHeader=Note: If you want to define a personalized header for all pages, edit the header on the site level instead of on the page/container.
diff --git a/htdocs/langs/en_US/withdrawals.lang b/htdocs/langs/en_US/withdrawals.lang
index 75cee952bcd..c7820a965aa 100644
--- a/htdocs/langs/en_US/withdrawals.lang
+++ b/htdocs/langs/en_US/withdrawals.lang
@@ -118,7 +118,7 @@ WithdrawRequestErrorNilAmount=Unable to create direct debit request for empty am
SepaMandate=SEPA Direct Debit Mandate
SepaMandateShort=SEPA Mandate
PleaseReturnMandate=Please return this mandate form by email to %s or by mail to
-SEPALegalText=By signing this mandate form, you authorize (A) %s to send instructions to your bank to debit your account and (B) your bank to debit your account in accordance with the instructions from %s. As part of your rights, you are entitled to a refund from your bank under the terms and conditions of your agreement with your bank. Your rights regarding the above mandate are explained in a statement that you can obtain from your bank.
+SEPALegalText=By signing this mandate form, you authorize (A) %s and its payment service provider to send instructions to your bank to debit your account and (B) your bank to debit your account in accordance with the instructions from %s. As part of your rights, you are entitled to a refund from your bank under the terms and conditions of your agreement with your bank. Your rights regarding the above mandate are explained in a statement that you can obtain from your bank.
CreditorIdentifier=Creditor Identifier
CreditorName=Creditor Name
SEPAFillForm=(B) Please complete all the fields marked *
diff --git a/htdocs/langs/fr_FR/holiday.lang b/htdocs/langs/fr_FR/holiday.lang
index c6671f9f6a3..22720779eaf 100644
--- a/htdocs/langs/fr_FR/holiday.lang
+++ b/htdocs/langs/fr_FR/holiday.lang
@@ -1,6 +1,7 @@
# Dolibarr language file - Source file is en_US - holiday
HRM=GRH
Holidays=Congés
+Holiday=Congé
CPTitreMenu=Demande de congés
MenuReportMonth=État mensuel
MenuAddCP=Créer demande de congés
diff --git a/htdocs/loan/card.php b/htdocs/loan/card.php
index f3d83a1d37d..7ec8e7894fc 100644
--- a/htdocs/loan/card.php
+++ b/htdocs/loan/card.php
@@ -274,7 +274,7 @@ if ($action == 'create') {
print '
'.$langs->trans("Label").' ';
// Bank account
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
print '
'.$langs->trans("Account").' ';
$form->select_comptes(GETPOST("accountid"), "accountid", 0, "courant=1", 1); // Show list of bank account with courant
print ' ';
@@ -309,7 +309,7 @@ if ($action == 'create') {
print '
'.$langs->trans("Insurance").' ';
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$formproject = new FormProjets($db);
// Projet associe
@@ -424,7 +424,7 @@ if ($id > 0) {
$morehtmlref .= $form->editfieldkey("Label", 'label', $object->label, $object, $user->rights->loan->write, 'string', '', 0, 1);
$morehtmlref .= $form->editfieldval("Label", 'label', $object->label, $object, $user->rights->loan->write, 'string', '', null, null, '', 1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->loadLangs(array("projects"));
$morehtmlref .= '
'.$langs->trans('Project').' ';
if ($user->rights->loan->write) {
diff --git a/htdocs/loan/class/paymentloan.class.php b/htdocs/loan/class/paymentloan.class.php
index ae31a8314aa..3ce8af01790 100644
--- a/htdocs/loan/class/paymentloan.class.php
+++ b/htdocs/loan/class/paymentloan.class.php
@@ -497,7 +497,7 @@ class PaymentLoan extends CommonObject
$error = 0;
$this->db->begin();
- if (!empty($conf->banque->enabled)) {
+ if (isModEnabled("banque")) {
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
$acc = new Account($this->db);
diff --git a/htdocs/loan/document.php b/htdocs/loan/document.php
index 3bc60980245..a9d92f472f4 100644
--- a/htdocs/loan/document.php
+++ b/htdocs/loan/document.php
@@ -28,7 +28,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/images.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/loan.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -103,7 +103,7 @@ if ($object->id) {
$morehtmlref .= $form->editfieldkey("Label", 'label', $object->label, $object, 0, 'string', '', 0, 1);
$morehtmlref .= $form->editfieldval("Label", 'label', $object->label, $object, 0, 'string', '', null, null, '', 1);
// Project
- if (!empty($conf->project->enabled)) {
+ if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project').' : ';
if ($user->rights->loan->write) {
diff --git a/htdocs/loan/info.php b/htdocs/loan/info.php
index a0db5ca35a7..a0e235a2afb 100644
--- a/htdocs/loan/info.php
+++ b/htdocs/loan/info.php
@@ -26,7 +26,7 @@ require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/loan/class/loan.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/loan.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
}
@@ -67,7 +67,7 @@ $morehtmlref = '
';
$morehtmlref .= $form->editfieldkey("Label", 'label', $object->label, $object, 0, 'string', '', 0, 1);
$morehtmlref .= $form->editfieldval("Label", 'label', $object->label, $object, 0, 'string', '', null, null, '', 1);
// Project
-if (!empty($conf->project->enabled)) {
+if (isModEnabled('project')) {
$langs->load("projects");
$morehtmlref .= ' '.$langs->trans('Project').' : ';
if ($user->rights->loan->write) {
diff --git a/htdocs/loan/payment/card.php b/htdocs/loan/payment/card.php
index 198025215b7..8f7ad7da44c 100644
--- a/htdocs/loan/payment/card.php
+++ b/htdocs/loan/payment/card.php
@@ -24,7 +24,7 @@
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/loan/class/loan.class.php';
require_once DOL_DOCUMENT_ROOT.'/loan/class/paymentloan.class.php';
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
}
@@ -129,7 +129,7 @@ print '
'.$langs->trans('NotePrivate').' '.nl2br($payment->note_p
print ' '.$langs->trans('NotePublic').' '.nl2br($payment->note_public).' ';
// Bank account
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
if ($payment->bank_account) {
$bankline = new AccountLine($db);
$bankline->fetch($payment->bank_line);
diff --git a/htdocs/loan/payment/payment.php b/htdocs/loan/payment/payment.php
index 113c1151e24..c20c3978571 100644
--- a/htdocs/loan/payment/payment.php
+++ b/htdocs/loan/payment/payment.php
@@ -105,7 +105,7 @@ if ($action == 'add_payment') {
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("Date")), null, 'errors');
$error++;
}
- if (!empty($conf->banque->enabled) && !GETPOST('accountid', 'int') > 0) {
+ if (isModEnabled("banque") && !GETPOST('accountid', 'int') > 0) {
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("AccountToCredit")), null, 'errors');
$error++;
}
diff --git a/htdocs/mailmanspip/class/mailmanspip.class.php b/htdocs/mailmanspip/class/mailmanspip.class.php
index 9635c0e2c1f..bcfb1b83d6e 100644
--- a/htdocs/mailmanspip/class/mailmanspip.class.php
+++ b/htdocs/mailmanspip/class/mailmanspip.class.php
@@ -141,7 +141,7 @@ class MailmanSpip
$list,
$object->email,
$object->pass,
- $conf->global->ADHERENT_MAILMAN_ADMINPW
+ $conf->global->ADHERENT_MAILMAN_ADMIN_PASSWORD
);
$curl_url = str_replace($patterns, $replace, $url);
diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php
index 675d7273c51..06ff00e474f 100644
--- a/htdocs/main.inc.php
+++ b/htdocs/main.inc.php
@@ -500,6 +500,8 @@ if (!defined('NOTOKENRENEWAL') && !defined('NOSESSION')) {
}
if (!isset($_SESSION['newtoken']) || getDolGlobalInt('MAIN_SECURITY_CSRF_TOKEN_RENEWAL_ON_EACH_CALL')) {
+ // Note: Using MAIN_SECURITY_CSRF_TOKEN_RENEWAL_ON_EACH_CALL is not recommended: if a user succeed in entering a data from
+ // a public page with a link that make a token regeneration, it can make use of the backoffice no more possible !
// Save in $_SESSION['newtoken'] what will be next token. Into forms, we will add param token = $_SESSION['newtoken']
$token = dol_hash(uniqid(mt_rand(), false), 'md5'); // Generates a hash of a random number. We don't need a secured hash, just a changing random value.
$_SESSION['newtoken'] = $token;
@@ -1153,6 +1155,11 @@ if (!defined('NOLOGIN')) {
$conf->theme = $user->conf->MAIN_THEME;
$conf->css = "/theme/".$conf->theme."/style.css.php";
}
+} else {
+ // We may have NOLOGIN set, but NOREQUIREUSER not
+ if (!empty($user) && method_exists($user, 'loadDefaultValues')) {
+ $user->loadDefaultValues(); // Load default values for everybody (works even if $user->id = 0
+ }
}
@@ -1600,7 +1607,7 @@ function top_htmlhead($head, $title = '', $disablejs = 0, $disablehead = 0, $arr
dolibarr_set_const($db, "MAIN_IHM_PARAMS_REV", ((int) $conf->global->MAIN_IHM_PARAMS_REV) + 1, 'chaine', 0, '', $conf->entity);
}
- $themeparam = '?lang='.$langs->defaultlang.'&theme='.$conf->theme.(GETPOST('optioncss', 'aZ09') ? '&optioncss='.GETPOST('optioncss', 'aZ09', 1) : '').'&userid='.$user->id.'&entity='.$conf->entity;
+ $themeparam = '?lang='.$langs->defaultlang.'&theme='.$conf->theme.(GETPOST('optioncss', 'aZ09') ? '&optioncss='.GETPOST('optioncss', 'aZ09', 1) : '').(empty($user->id) ? '' : ('&userid='.$user->id)).'&entity='.$conf->entity;
$themeparam .= ($ext ? '&'.$ext : '').'&revision='.getDolGlobalInt("MAIN_IHM_PARAMS_REV");
if (GETPOSTISSET('dol_hide_topmenu')) {
@@ -2432,7 +2439,7 @@ function printDropdownQuickadd()
"title" => "MenuNewMember@members",
"name" => "Adherent@members",
"picto" => "object_member",
- "activation" => !empty($conf->adherent->enabled) && $user->hasRight("adherent", "write"), // vs hooking
+ "activation" => isModEnabled('adherent') && $user->hasRight("adherent", "write"), // vs hooking
"position" => 5,
),
array(
@@ -2440,7 +2447,7 @@ function printDropdownQuickadd()
"title" => "MenuNewThirdParty@companies",
"name" => "ThirdParty@companies",
"picto" => "object_company",
- "activation" => !empty($conf->societe->enabled) && $user->hasRight("societe", "write"), // vs hooking
+ "activation" => isModEnabled("societe") && $user->hasRight("societe", "write"), // vs hooking
"position" => 10,
),
array(
@@ -2448,7 +2455,7 @@ function printDropdownQuickadd()
"title" => "NewContactAddress@companies",
"name" => "Contact@companies",
"picto" => "object_contact",
- "activation" => !empty($conf->societe->enabled) && $user->hasRight("societe", "contact", "write"), // vs hooking
+ "activation" => isModEnabled("societe") && $user->hasRight("societe", "contact", "write"), // vs hooking
"position" => 20,
),
array(
@@ -2456,7 +2463,7 @@ function printDropdownQuickadd()
"title" => "NewPropal@propal",
"name" => "Proposal@propal",
"picto" => "object_propal",
- "activation" => !empty($conf->propal->enabled) && $user->hasRight("propale", "write"), // vs hooking
+ "activation" => isModEnabled("propal") && $user->hasRight("propale", "write"), // vs hooking
"position" => 30,
),
@@ -2465,7 +2472,7 @@ function printDropdownQuickadd()
"title" => "NewOrder@orders",
"name" => "Order@orders",
"picto" => "object_order",
- "activation" => !empty($conf->commande->enabled) && $user->hasRight("commande", "write"), // vs hooking
+ "activation" => isModEnabled('commande') && $user->hasRight("commande", "write"), // vs hooking
"position" => 40,
),
array(
@@ -2481,7 +2488,7 @@ function printDropdownQuickadd()
"title" => "NewContractSubscription@contracts",
"name" => "Contract@contracts",
"picto" => "object_contract",
- "activation" => !empty($conf->contrat->enabled) && $user->hasRight("contrat", "write"), // vs hooking
+ "activation" => isModEnabled('contrat') && $user->hasRight("contrat", "write"), // vs hooking
"position" => 60,
),
array(
@@ -2489,7 +2496,7 @@ function printDropdownQuickadd()
"title" => "SupplierProposalNew@supplier_proposal",
"name" => "SupplierProposal@supplier_proposal",
"picto" => "supplier_proposal",
- "activation" => !empty($conf->supplier_proposal->enabled) && $user->hasRight("supplier_invoice", "write"), // vs hooking
+ "activation" => isModEnabled('supplier_proposal') && $user->hasRight("supplier_invoice", "write"), // vs hooking
"position" => 70,
),
array(
@@ -2497,7 +2504,7 @@ function printDropdownQuickadd()
"title" => "NewSupplierOrderShort@orders",
"name" => "SupplierOrder@orders",
"picto" => "supplier_order",
- "activation" => (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->hasRight("fournisseur", "commande", "write")) || (!empty($conf->supplier_order->enabled) && $user->hasRight("supplier_invoice", "write")), // vs hooking
+ "activation" => (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->hasRight("fournisseur", "commande", "write")) || (isModEnabled("supplier_order") && $user->hasRight("supplier_invoice", "write")), // vs hooking
"position" => 80,
),
array(
@@ -2505,7 +2512,7 @@ function printDropdownQuickadd()
"title" => "NewBill@bills",
"name" => "SupplierBill@bills",
"picto" => "supplier_invoice",
- "activation" => (!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->hasRight("fournisseur", "facture", "write")) || (!empty($conf->supplier_invoice->enabled) && $user->hasRight("supplier_invoice", "write")), // vs hooking
+ "activation" => (isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD) && $user->hasRight("fournisseur", "facture", "write")) || (isModEnabled("supplier_invoice") && $user->hasRight("supplier_invoice", "write")), // vs hooking
"position" => 90,
),
array(
@@ -2513,7 +2520,7 @@ function printDropdownQuickadd()
"title" => "NewProduct@products",
"name" => "Product@products",
"picto" => "object_product",
- "activation" => !empty($conf->product->enabled) && $user->hasRight("produit", "write"), // vs hooking
+ "activation" => isModEnabled("product") && $user->hasRight("produit", "write"), // vs hooking
"position" => 100,
),
array(
@@ -2521,7 +2528,7 @@ function printDropdownQuickadd()
"title" => "NewService@products",
"name" => "Service@products",
"picto" => "object_service",
- "activation" => !empty($conf->service->enabled) && $user->hasRight("service", "write"), // vs hooking
+ "activation" => isModEnabled("service") && $user->hasRight("service", "write"), // vs hooking
"position" => 110,
),
array(
diff --git a/htdocs/margin/tabs/thirdpartyMargins.php b/htdocs/margin/tabs/thirdpartyMargins.php
index c69c0443e28..363af100cbe 100644
--- a/htdocs/margin/tabs/thirdpartyMargins.php
+++ b/htdocs/margin/tabs/thirdpartyMargins.php
@@ -129,7 +129,7 @@ if ($socid > 0) {
print ' ';
}
- if (((!empty($conf->fournisseur->enabled) && !empty($user->rights->fournisseur->lire) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || (!empty($conf->supplier_order->enabled) && !empty($user->rights->supplier_order->lire)) || (!empty($conf->supplier_invoice->enabled) && !empty($user->rights->supplier_invoice->lire))) && $object->fournisseur) {
+ if (((isModEnabled("fournisseur") && !empty($user->rights->fournisseur->lire) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || (isModEnabled("supplier_order") && !empty($user->rights->supplier_order->lire)) || (isModEnabled("supplier_invoice") && !empty($user->rights->supplier_invoice->lire))) && $object->fournisseur) {
print '';
print $langs->trans('SupplierCode').' ';
print showValueWithClipboardCPButton(dol_escape_htmltag($object->code_fournisseur));
diff --git a/htdocs/modulebuilder/index.php b/htdocs/modulebuilder/index.php
index dd922e6cba4..7e086887a37 100644
--- a/htdocs/modulebuilder/index.php
+++ b/htdocs/modulebuilder/index.php
@@ -42,12 +42,13 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/utils.class.php';
// Load translation files required by the page
$langs->loadLangs(array("admin", "modulebuilder", "other", "cron", "errors"));
-$action = GETPOST('action', 'aZ09');
+// GET Parameters
+$action = GETPOST('action', 'aZ09');
$confirm = GETPOST('confirm', 'alpha');
-$cancel = GETPOST('cancel', 'alpha');
+$cancel = GETPOST('cancel', 'alpha');
-$sortfield=GETPOST('sortfield', 'alpha');
-$sortorder=GETPOST('sortorder', 'alpha');
+$sortfield = GETPOST('sortfield', 'alpha');
+$sortorder = GETPOST('sortorder', 'alpha');
$module = GETPOST('module', 'alpha');
$tab = GETPOST('tab', 'aZ09');
@@ -123,6 +124,7 @@ $form = new Form($db);
// Define $listofmodules
$dirsrootforscan = array($dirread);
+
// Add also the core modules into the list of modules to show/edit
if ($dirread != DOL_DOCUMENT_ROOT && ($conf->global->MAIN_FEATURES_LEVEL >= 2 || !empty($conf->global->MODULEBUILDER_ADD_DOCUMENT_ROOT))) {
$dirsrootforscan[] = DOL_DOCUMENT_ROOT;
@@ -905,7 +907,7 @@ if ($dirins && $action == 'initobject' && $module && GETPOST('createtablearray',
* Note: Filter can be a string like "(t.ref:like:'SO-%') or (t.date_creation:<:'20160101') or (t.nature:is:NULL)"
* 'label' the translation key.
* 'picto' is code of a picto to show before value in forms
- * 'enabled' is a condition when the field must be managed (Example: 1 or '$conf->global->MY_SETUP_PARAM' or '!empty($conf->multicurrency->enabled)' ...)
+ * 'enabled' is a condition when the field must be managed (Example: 1 or '$conf->global->MY_SETUP_PARAM' or 'isModEnabled("multicurrency")' ...)
* 'position' is the sort order of field.
* 'notnull' is set to 1 if not null in database. Set to -1 if we must set data to null if empty ('' or 0).
* 'visible' says if field is visible in list (Examples: 0=Not visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create). 5=Visible on list and view only (not create/not update). Using a negative value means field is not shown by default on list but can be selected for viewing)
@@ -927,23 +929,23 @@ if ($dirins && $action == 'initobject' && $module && GETPOST('createtablearray',
*/
/*public $fields=array(
- 'rowid' =>array('type'=>'integer', 'label'=>'TechnicalID', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'index'=>1, 'position'=>1, 'comment'=>'Id'),
- 'ref' =>array('type'=>'varchar(128)', 'label'=>'Ref', 'enabled'=>1, 'visible'=>1, 'notnull'=>1, 'showoncombobox'=>1, 'index'=>1, 'position'=>10, 'searchall'=>1, 'comment'=>'Reference of object'),
- 'entity' =>array('type'=>'integer', 'label'=>'Entity', 'enabled'=>1, 'visible'=>0, 'default'=>1, 'notnull'=>1, 'index'=>1, 'position'=>20),
- 'label' =>array('type'=>'varchar(255)', 'label'=>'Label', 'enabled'=>1, 'visible'=>1, 'position'=>30, 'searchall'=>1, 'css'=>'minwidth200', 'help'=>'Help text'),
- 'amount' =>array('type'=>'double(24,8)', 'label'=>'Amount', 'enabled'=>1, 'visible'=>1, 'default'=>'null', 'position'=>40, 'searchall'=>0, 'isameasure'=>1, 'help'=>'Help text'),
- 'fk_soc' =>array('type'=>'integer:Societe:societe/class/societe.class.php', 'label'=>'ThirdParty', 'visible'=>1, 'enabled'=>1, 'position'=>50, 'notnull'=>-1, 'index'=>1, 'searchall'=>1, 'help'=>'LinkToThirparty'),
- 'description' =>array('type'=>'text', 'label'=>'Descrption', 'enabled'=>1, 'visible'=>0, 'position'=>60),
- 'note_public' =>array('type'=>'html', 'label'=>'NotePublic', 'enabled'=>1, 'visible'=>0, 'position'=>61),
- 'note_private' =>array('type'=>'html', 'label'=>'NotePrivate', 'enabled'=>1, 'visible'=>0, 'position'=>62),
- 'date_creation' =>array('type'=>'datetime', 'label'=>'DateCreation', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>500),
- 'tms' =>array('type'=>'timestamp', 'label'=>'DateModification', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>501),
- //'date_valid' =>array('type'=>'datetime', 'label'=>'DateCreation', 'enabled'=>1, 'visible'=>-2, 'position'=>502),
- 'fk_user_creat' =>array('type'=>'integer', 'label'=>'UserAuthor', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>510),
- 'fk_user_modif' =>array('type'=>'integer', 'label'=>'UserModif', 'enabled'=>1, 'visible'=>-2, 'notnull'=>-1, 'position'=>511),
- //'fk_user_valid' =>array('type'=>'integer', 'label'=>'UserValidation', 'enabled'=>1, 'visible'=>-1, 'position'=>512),
- 'import_key' =>array('type'=>'varchar(14)', 'label'=>'ImportId', 'enabled'=>1, 'visible'=>-2, 'notnull'=>-1, 'index'=>0, 'position'=>1000),
- 'status' =>array('type'=>'integer', 'label'=>'Status', 'enabled'=>1, 'visible'=>1, 'notnull'=>1, 'default'=>0, 'index'=>1, 'position'=>1000, 'arrayofkeyval'=>array(0=>'Draft', 1=>'Active', -1=>'Cancel')),
+ 'rowid' =>array('type'=>'integer', 'label'=>'TechnicalID', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'index'=>1, 'position'=>1, 'comment'=>'Id'),
+ 'ref' =>array('type'=>'varchar(128)', 'label'=>'Ref', 'enabled'=>1, 'visible'=>1, 'notnull'=>1, 'showoncombobox'=>1, 'index'=>1, 'position'=>10, 'searchall'=>1, 'comment'=>'Reference of object'),
+ 'entity' =>array('type'=>'integer', 'label'=>'Entity', 'enabled'=>1, 'visible'=>0, 'default'=>1, 'notnull'=>1, 'index'=>1, 'position'=>20),
+ 'label' =>array('type'=>'varchar(255)', 'label'=>'Label', 'enabled'=>1, 'visible'=>1, 'position'=>30, 'searchall'=>1, 'css'=>'minwidth200', 'help'=>'Help text'),
+ 'amount' =>array('type'=>'double(24,8)', 'label'=>'Amount', 'enabled'=>1, 'visible'=>1, 'default'=>'null', 'position'=>40, 'searchall'=>0, 'isameasure'=>1, 'help'=>'Help text'),
+ 'fk_soc' =>array('type'=>'integer:Societe:societe/class/societe.class.php', 'label'=>'ThirdParty', 'visible'=>1, 'enabled'=>1, 'position'=>50, 'notnull'=>-1, 'index'=>1, 'searchall'=>1, 'help'=>'LinkToThirdparty'),
+ 'description' =>array('type'=>'text', 'label'=>'Descrption', 'enabled'=>1, 'visible'=>0, 'position'=>60),
+ 'note_public' =>array('type'=>'html', 'label'=>'NotePublic', 'enabled'=>1, 'visible'=>0, 'position'=>61),
+ 'note_private' =>array('type'=>'html', 'label'=>'NotePrivate', 'enabled'=>1, 'visible'=>0, 'position'=>62),
+ 'date_creation' =>array('type'=>'datetime', 'label'=>'DateCreation', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>500),
+ 'tms' =>array('type'=>'timestamp', 'label'=>'DateModification', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>501),
+ //'date_valid' =>array('type'=>'datetime', 'label'=>'DateCreation', 'enabled'=>1, 'visible'=>-2, 'position'=>502),
+ 'fk_user_creat' =>array('type'=>'integer', 'label'=>'UserAuthor', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>510),
+ 'fk_user_modif' =>array('type'=>'integer', 'label'=>'UserModif', 'enabled'=>1, 'visible'=>-2, 'notnull'=>-1, 'position'=>511),
+ //'fk_user_valid' =>array('type'=>'integer', 'label'=>'UserValidation', 'enabled'=>1, 'visible'=>-1, 'position'=>512),
+ 'import_key' =>array('type'=>'varchar(14)', 'label'=>'ImportId', 'enabled'=>1, 'visible'=>-2, 'notnull'=>-1, 'index'=>0, 'position'=>1000),
+ 'status' =>array('type'=>'integer', 'label'=>'Status', 'enabled'=>1, 'visible'=>1, 'notnull'=>1, 'default'=>0, 'index'=>1, 'position'=>1000, 'arrayofkeyval'=>array(0=>'Draft', 1=>'Active', -1=>'Cancel')),
);*/
$string = 'public $fields=array('."\n";
@@ -2088,10 +2090,12 @@ if ($module == 'initmodule') {
//print ''.$langs->trans("ModuleBuilderDesc2", 'conf/conf.php', $newdircustom).' ';
print ' ';
- print ''.$langs->trans("ModuleName").' ';
- print ' '.$form->textwithpicto('', $langs->trans("EnterNameOfModuleDesc")).' ';
+ print '';
- print '
'.$langs->trans("IdModule").' ';
+ print '
';
+ print ''.$langs->trans("IdModule").' ';
+ print '
';
+ print '
';
print '
';
print ' (';
print dolButtonToOpenUrlInDialogPopup('popup_modules_id', $langs->transnoentitiesnoconv("SeeIDsInUse"), $langs->transnoentitiesnoconv("SeeIDsInUse"), '/admin/system/modules.php?mainmenu=home&leftmenu=admintools_info', '', '');
@@ -2099,9 +2103,30 @@ if ($module == 'initmodule') {
print ''.$langs->trans("SeeReservedIDsRangeHere").' ';
print ')';
print ' ';
- print '
';
- print '
'.$langs->trans("Version").' ';
- print '
'.$langs->trans("Family").' ';
+ print '
';
+
+ print '
';
+
+ print '
';
+
+ print '
';
+
+ print '
';
- print '
'.$langs->trans("EditorName").' ';
- print '
'.$langs->trans("EditorUrl").' ';
+ print '
';
+
+ print '
';
+
+ print '
';
print '
';
print '';
@@ -2271,7 +2309,7 @@ if ($module == 'initmodule') {
print '
';
print ' ';
- print load_fiche_titre($form->textwithpicto($langs->trans("DescriptorFile"), $pathtofile), '', '');
+ print load_fiche_titre($form->textwithpicto($langs->trans("DescriptorFile"), $langs->transnoentitiesnoconv("File").' '.$pathtofile), '', '');
if (!empty($moduleobj)) {
print '
';
@@ -2285,7 +2323,7 @@ if ($module == 'initmodule') {
print ' ';
print '';
- print $langs->trans("Numero");
+ print $langs->trans("IdModule");
print ' ';
print $moduleobj->numero;
print '';
@@ -2295,11 +2333,17 @@ if ($module == 'initmodule') {
print ' ';
print '';
- print $langs->trans("Name");
+ print $langs->trans("ModuleName");
print ' ';
print $moduleobj->getName();
print ' ';
+ print '';
+ print $langs->trans("Description");
+ print ' ';
+ print $moduleobj->getDesc();
+ print ' ';
+
print '';
print $langs->trans("Version");
print ' ';
@@ -2320,12 +2364,6 @@ if ($module == 'initmodule') {
print ' '.img_picto('', $moduleobj->picto, 'class="valignmiddle pictomodule paddingrightonly"');
print ' ';
- print '';
- print $langs->trans("Description");
- print ' ';
- print $moduleobj->getDesc();
- print ' ';
-
print '';
print $langs->trans("EditorName");
print ' ';
@@ -2349,7 +2387,7 @@ if ($module == 'initmodule') {
print ' ';
// Readme file
- print load_fiche_titre($form->textwithpicto($langs->trans("ReadmeFile"), $pathtofilereadme), '', '');
+ print load_fiche_titre($form->textwithpicto($langs->trans("ReadmeFile"), $langs->transnoentitiesnoconv("File").' '.$pathtofilereadme), '', '');
print '';
if (dol_is_file($dirread.'/'.$pathtofilereadme)) {
@@ -2361,7 +2399,7 @@ if ($module == 'initmodule') {
print ' ';
// ChangeLog
- print load_fiche_titre($form->textwithpicto($langs->trans("ChangeLog"), $pathtochangelog), '', '');
+ print load_fiche_titre($form->textwithpicto($langs->trans("ChangeLog"), $langs->transnoentitiesnoconv("File").' '.$pathtochangelog), '', '');
print '';
if (dol_is_file($dirread.'/'.$pathtochangelog)) {
@@ -2553,7 +2591,7 @@ if ($module == 'initmodule') {
print ' ';
print ' '.$form->textwithpicto($langs->trans("IncludeRefGeneration"), $langs->trans("IncludeRefGenerationHelp")).' ';
print ' '.$form->textwithpicto($langs->trans("IncludeDocGeneration"), $langs->trans("IncludeDocGenerationHelp")).' ';
- print ' ';
+ print ' ';
print ' ';
print ' ';
print ' ';
@@ -2563,7 +2601,7 @@ if ($module == 'initmodule') {
//print ' ';
print $langs->trans("InitStructureFromExistingTable");
print ' ';
- print ' ';
+ print ' ';
print ' ';
print '';
@@ -3371,7 +3409,7 @@ if ($module == 'initmodule') {
print ' ';
//print ' '.$form->textwithpicto($langs->trans("IncludeRefGeneration"), $langs->trans("IncludeRefGenerationHelp")).' ';
//print ' '.$form->textwithpicto($langs->trans("IncludeDocGeneration"), $langs->trans("IncludeDocGenerationHelp")).' ';
- print ' ';
+ print ' ';
/*print ' ';
print ' ';
print ' ';
@@ -3381,7 +3419,7 @@ if ($module == 'initmodule') {
//print ' ';
print $langs->trans("InitStructureFromExistingTable");
print ' ';
- print ' ';
+ print ' ';
print ' ';
*/
print '';
@@ -3462,18 +3500,18 @@ if ($module == 'initmodule') {
print ' ';
print_liste_field_titre("#", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder, 'thsticky ');
- print_liste_field_titre("Type", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder);
+ print_liste_field_titre("Position", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("LinkToParentMenu", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("Title", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("mainmenu", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("leftmenu", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder);
- print_liste_field_titre("RelativeURL", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder);
+ print_liste_field_titre("URL", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder, '', $langs->transnoentitiesnoconv('DetailUrl'));
print_liste_field_titre("LanguageFile", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("Position", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder, 'right ');
- print_liste_field_titre("Enabled", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder, 'center ');
- print_liste_field_titre("Permission", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder);
- print_liste_field_titre("Target", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder);
- print_liste_field_titre("UserType", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder, 'right ');
+ print_liste_field_titre("Enabled", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder, 'center ', $langs->trans('DetailEnabled'));
+ print_liste_field_titre("Rights", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder, '', $langs->trans('DetailRight'));
+ print_liste_field_titre("Target", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder, '', $langs->trans('DetailTarget'));
+ print_liste_field_titre("MenuForUsers", $_SERVER["PHP_SELF"], '', "", $param, '', $sortfield, $sortorder, 'right ', $langs->trans('DetailUser'));
print " \n";
if (count($menus)) {
@@ -3532,7 +3570,15 @@ if ($module == 'initmodule') {
print '';
print '';
- print dol_escape_htmltag($menu['user']);
+ if ($menu['user'] == 2) {
+ print $langs->trans("AllMenus");
+ } elseif ($menu['user'] == 0) {
+ print $langs->trans('Internal');
+ } elseif ($menu['user'] == 1) {
+ print $langs->trans('External');
+ } else {
+ print $menu['user']; // should not happen
+ }
print ' ';
print '';
diff --git a/htdocs/modulebuilder/template/class/myobject.class.php b/htdocs/modulebuilder/template/class/myobject.class.php
index f3538d65cfa..8265bbadaf8 100644
--- a/htdocs/modulebuilder/template/class/myobject.class.php
+++ b/htdocs/modulebuilder/template/class/myobject.class.php
@@ -84,7 +84,7 @@ class MyObject extends CommonObject
* Note: Filter can be a string like "(t.ref:like:'SO-%') or (t.date_creation:<:'20160101') or (t.nature:is:NULL)"
* 'label' the translation key.
* 'picto' is code of a picto to show before value in forms
- * 'enabled' is a condition when the field must be managed (Example: 1 or '$conf->global->MY_SETUP_PARAM' or '!empty($conf->multicurrency->enabled)' ...)
+ * 'enabled' is a condition when the field must be managed (Example: 1 or '$conf->global->MY_SETUP_PARAM' or 'isModEnabled("multicurrency")' ...)
* 'position' is the sort order of field.
* 'notnull' is set to 1 if not null in database. Set to -1 if we must set data to null if empty ('' or 0).
* 'visible' says if field is visible in list (Examples: 0=Not visible, 1=Visible on list and create/update/view forms, 2=Visible on list only, 3=Visible on create/update/view form only (not list), 4=Visible on list and update/view form only (not create). 5=Visible on list and view only (not create/not update). Using a negative value means field is not shown by default on list but can be selected for viewing)
@@ -253,7 +253,7 @@ class MyObject extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid']) && !empty($this->fields['ref'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -573,8 +573,8 @@ class MyObject extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->myobject->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->myobject->myobject_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->myobject->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->myobject->myobject_advance->validate))))
{
$this->error='NotEnoughPermissions';
dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR);
@@ -691,8 +691,8 @@ class MyObject extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->mymodule_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->mymodule_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -715,8 +715,8 @@ class MyObject extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->mymodule_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->mymodule_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -739,8 +739,8 @@ class MyObject extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->mymodule_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->mymodule_advance->validate))))
{
$this->error='Permission denied';
return -1;
diff --git a/htdocs/modulebuilder/template/core/modules/mymodule/doc/pdf_standard_myobject.modules.php b/htdocs/modulebuilder/template/core/modules/mymodule/doc/pdf_standard_myobject.modules.php
index 561c09f88d6..3990d49fa6d 100644
--- a/htdocs/modulebuilder/template/core/modules/mymodule/doc/pdf_standard_myobject.modules.php
+++ b/htdocs/modulebuilder/template/core/modules/mymodule/doc/pdf_standard_myobject.modules.php
@@ -634,13 +634,13 @@ class pdf_standard_myobject extends ModelePDFMyObject
// Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva
$prev_progress = $object->lines[$i]->get_prev_progress($object->id);
if ($prev_progress > 0 && !empty($object->lines[$i]->situation_percent)) { // Compute progress from previous situation
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $sign * $object->lines[$i]->multicurrency_total_tva * ($object->lines[$i]->situation_percent - $prev_progress) / $object->lines[$i]->situation_percent;
} else {
$tvaligne = $sign * $object->lines[$i]->total_tva * ($object->lines[$i]->situation_percent - $prev_progress) / $object->lines[$i]->situation_percent;
}
} else {
- if (!empty($conf->multicurrency->enabled) && $object->multicurrency_tx != 1) {
+ if (isModEnabled("multicurrency") && $object->multicurrency_tx != 1) {
$tvaligne = $sign * $object->lines[$i]->multicurrency_total_tva;
} else {
$tvaligne = $sign * $object->lines[$i]->total_tva;
diff --git a/htdocs/modulebuilder/template/core/triggers/interface_99_modMyModule_MyModuleTriggers.class.php b/htdocs/modulebuilder/template/core/triggers/interface_99_modMyModule_MyModuleTriggers.class.php
index 37ece327185..2c76818ab84 100644
--- a/htdocs/modulebuilder/template/core/triggers/interface_99_modMyModule_MyModuleTriggers.class.php
+++ b/htdocs/modulebuilder/template/core/triggers/interface_99_modMyModule_MyModuleTriggers.class.php
@@ -177,7 +177,7 @@ class InterfaceMyModuleTriggers extends DolibarrTriggers
//case 'ORDER_SUPPLIER_REFUSE':
//case 'ORDER_SUPPLIER_CANCEL':
//case 'ORDER_SUPPLIER_SENTBYMAIL':
- //case 'ORDER_SUPPLIER_DISPATCH':
+ //case 'ORDER_SUPPLIER_RECEIVE':
//case 'LINEORDER_SUPPLIER_DISPATCH':
//case 'LINEORDER_SUPPLIER_CREATE':
//case 'LINEORDER_SUPPLIER_UPDATE':
@@ -314,7 +314,7 @@ class InterfaceMyModuleTriggers extends DolibarrTriggers
// and more...
default:
- dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id);
+ dol_syslog("Trigger '".$this->name."' for action '".$action."' launched by ".__FILE__.". id=".$object->id);
break;
}
diff --git a/htdocs/modulebuilder/template/css/mymodule.css.php b/htdocs/modulebuilder/template/css/mymodule.css.php
index 985cbe6aa18..6d38c782184 100644
--- a/htdocs/modulebuilder/template/css/mymodule.css.php
+++ b/htdocs/modulebuilder/template/css/mymodule.css.php
@@ -80,7 +80,7 @@ if (!$res) {
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
// Load user to have $user->conf loaded (not done by default here because of NOLOGIN constant defined) and load permission if we need to use them in CSS
-/*if (empty($user->id) && ! empty($_SESSION['dol_login'])) {
+/*if (empty($user->id) && !empty($_SESSION['dol_login'])) {
$user->fetch('',$_SESSION['dol_login']);
$user->getrights();
}*/
diff --git a/htdocs/modulebuilder/template/mymoduleindex.php b/htdocs/modulebuilder/template/mymoduleindex.php
index 15f3d83ac54..a5620a45966 100644
--- a/htdocs/modulebuilder/template/mymoduleindex.php
+++ b/htdocs/modulebuilder/template/mymoduleindex.php
@@ -100,7 +100,7 @@ print '';
/* BEGIN MODULEBUILDER DRAFT MYOBJECT
// Draft MyObject
-if (! empty($conf->mymodule->enabled) && $user->rights->mymodule->read)
+if (isModEnabled('mymodule') && $user->rights->mymodule->read)
{
$langs->load("orders");
@@ -181,7 +181,7 @@ $max = $conf->global->MAIN_SIZE_SHORTLIST_LIMIT;
/* BEGIN MODULEBUILDER LASTMODIFIED MYOBJECT
// Last modified myobject
-if (! empty($conf->mymodule->enabled) && $user->rights->mymodule->read)
+if (isModEnabled('mymodule') && $user->rights->mymodule->read)
{
$sql = "SELECT s.rowid, s.ref, s.label, s.date_creation, s.tms";
$sql.= " FROM ".MAIN_DB_PREFIX."mymodule_myobject as s";
diff --git a/htdocs/modulebuilder/template/myobject_agenda.php b/htdocs/modulebuilder/template/myobject_agenda.php
index b37da30f229..3e6213eaa26 100644
--- a/htdocs/modulebuilder/template/myobject_agenda.php
+++ b/htdocs/modulebuilder/template/myobject_agenda.php
@@ -186,7 +186,7 @@ $form = new Form($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
- //if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
+ //if (!empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
$help_url = 'EN:Module_Agenda_En';
llxHeader('', $title, $help_url);
@@ -210,7 +210,7 @@ if ($object->id > 0) {
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled)) {
+ if (!empty($conf->project->enabled)) {
$langs->load("projects");
$morehtmlref.='
'.$langs->trans('Project') . ' ';
if ($permissiontoadd) {
@@ -230,7 +230,7 @@ if ($object->id > 0) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/modulebuilder/template/myobject_card.php b/htdocs/modulebuilder/template/myobject_card.php
index 0e1815fade1..18328de1f9d 100644
--- a/htdocs/modulebuilder/template/myobject_card.php
+++ b/htdocs/modulebuilder/template/myobject_card.php
@@ -346,7 +346,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
// Confirmation of action xxxx (You can use it for xxx = 'close', xxx = 'reopen', ...)
if ($action == 'xxx') {
$text = $langs->trans('ConfirmActionMyObject', $object->ref);
- /*if (! empty($conf->notification->enabled))
+ /*if (!empty($conf->notification->enabled))
{
require_once DOL_DOCUMENT_ROOT . '/core/class/notify.class.php';
$notify = new Notify($db);
@@ -393,7 +393,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled)) {
+ if (!empty($conf->project->enabled)) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project') . ' ';
if ($permissiontoadd) {
@@ -411,7 +411,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/modulebuilder/template/myobject_contact.php b/htdocs/modulebuilder/template/myobject_contact.php
index 01efbec8cdc..9a365dd88f2 100644
--- a/htdocs/modulebuilder/template/myobject_contact.php
+++ b/htdocs/modulebuilder/template/myobject_contact.php
@@ -173,7 +173,7 @@ if ($object->id) {
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (!empty($conf->project->enabled))
{
$langs->load("projects");
$morehtmlref.='
'.$langs->trans('Project') . ' ';
@@ -194,7 +194,7 @@ if ($object->id) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/modulebuilder/template/myobject_document.php b/htdocs/modulebuilder/template/myobject_document.php
index 78d20a1863a..173bea760a0 100644
--- a/htdocs/modulebuilder/template/myobject_document.php
+++ b/htdocs/modulebuilder/template/myobject_document.php
@@ -190,7 +190,7 @@ if ($object->id) {
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (!empty($conf->project->enabled))
{
$langs->load("projects");
$morehtmlref.='
'.$langs->trans('Project') . ' ';
@@ -211,7 +211,7 @@ if ($object->id) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/modulebuilder/template/myobject_list.php b/htdocs/modulebuilder/template/myobject_list.php
index d9af4add8ce..ce7aa447c66 100644
--- a/htdocs/modulebuilder/template/myobject_list.php
+++ b/htdocs/modulebuilder/template/myobject_list.php
@@ -451,7 +451,7 @@ if ($limit > 0 && $limit != $conf->liste_limit) {
$param .= '&limit='.urlencode($limit);
}
foreach ($search as $key => $val) {
- if (is_array($search[$key]) && count($search[$key])) {
+ if (is_array($search[$key])) {
foreach ($search[$key] as $skey) {
if ($skey != '') {
$param .= '&search_'.$key.'[]='.urlencode($skey);
diff --git a/htdocs/modulebuilder/template/myobject_note.php b/htdocs/modulebuilder/template/myobject_note.php
index fb5a773be81..f38e703fa69 100644
--- a/htdocs/modulebuilder/template/myobject_note.php
+++ b/htdocs/modulebuilder/template/myobject_note.php
@@ -168,7 +168,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (!empty($conf->project->enabled))
{
$langs->load("projects");
$morehtmlref.='
'.$langs->trans('Project') . ' ';
@@ -189,7 +189,7 @@ if ($id > 0 || !empty($ref)) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/mrp/ajax/ajax_bom.php b/htdocs/mrp/ajax/ajax_bom.php
index 280a0c98cdd..54bfaf893ab 100644
--- a/htdocs/mrp/ajax/ajax_bom.php
+++ b/htdocs/mrp/ajax/ajax_bom.php
@@ -46,13 +46,15 @@ require '../../main.inc.php'; // Load $user and permissions
require_once DOL_DOCUMENT_ROOT.'/bom/class/bom.class.php';
$idbom = GETPOST('idbom', 'alpha');
-$action = GETPOST('action', 'aZ09');
+//$action = GETPOST('action', 'aZ09');
/*
* View
*/
+top_httphead('application/json');
+
$object = new BOM($db);
$result = $object->fetch($idbom);
if ($result > 0) {
diff --git a/htdocs/mrp/class/mo.class.php b/htdocs/mrp/class/mo.class.php
index d186c6e533b..263ca494518 100644
--- a/htdocs/mrp/class/mo.class.php
+++ b/htdocs/mrp/class/mo.class.php
@@ -224,7 +224,7 @@ class Mo extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -697,7 +697,7 @@ class Mo extends CommonObject
if ($line->qty_frozen) {
$moline->qty = $line->qty; // Qty to consume does not depends on quantity to produce
} else {
- $moline->qty = price2num(($line->qty / ( ! empty($bom->qty) ? $bom->qty : 1 ) ) * $this->qty / ( ! empty($line->efficiency) ? $line->efficiency : 1 ), 'MS'); // Calculate with Qty to produce and more presition
+ $moline->qty = price2num(($line->qty / ( !empty($bom->qty) ? $bom->qty : 1 ) ) * $this->qty / ( !empty($line->efficiency) ? $line->efficiency : 1 ), 'MS'); // Calculate with Qty to produce and more presition
}
if ($moline->qty <= 0) {
$error++;
@@ -770,13 +770,13 @@ class Mo extends CommonObject
$fk_movement = GETPOST('fk_movement', 'int');
$arrayoflines = $this->fetchLinesLinked('consumed', $idline);
- if (! empty($arrayoflines)) {
+ if (!empty($arrayoflines)) {
$this->db->begin();
$stockmove = new MouvementStock($this->db);
$stockmove->setOrigin($this->element, $this->id);
- if (! empty($fk_movement)) {
+ if (!empty($fk_movement)) {
$moline = new MoLine($this->db);
$TArrayMoLine = $moline->fetchAll('', '', 1, 0, array('customsql' => 'fk_stock_movement ='.$fk_movement));
$moline = array_shift($TArrayMoLine);
@@ -903,8 +903,8 @@ class Mo extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mrp->create))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mrp->mrp_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mrp->create))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mrp->mrp_advance->validate))))
{
$this->error='NotEnoughPermissions';
dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR);
@@ -1015,8 +1015,8 @@ class Mo extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->mymodule_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->mymodule_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -1039,8 +1039,8 @@ class Mo extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->mymodule_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->mymodule_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -1063,8 +1063,8 @@ class Mo extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->mymodule_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->mymodule_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -1637,7 +1637,7 @@ class MoLine extends CommonObjectLine
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
diff --git a/htdocs/mrp/mo_agenda.php b/htdocs/mrp/mo_agenda.php
index 60ac81e20cd..491240cff55 100644
--- a/htdocs/mrp/mo_agenda.php
+++ b/htdocs/mrp/mo_agenda.php
@@ -130,7 +130,7 @@ $formproject = new FormProjets($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
- //if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
+ //if (!empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
$help_url = 'EN:Module_Agenda_En|FR:Module_Agenda|ES:Módulo_Agenda|DE:Modul_Agenda';
llxHeader('', $title, $help_url);
diff --git a/htdocs/mrp/mo_card.php b/htdocs/mrp/mo_card.php
index 2c333ff616e..5d06f8c0f52 100644
--- a/htdocs/mrp/mo_card.php
+++ b/htdocs/mrp/mo_card.php
@@ -202,10 +202,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -424,7 +424,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
}
$text = $langs->trans('ConfirmValidateMo', $numref);
- /*if (! empty($conf->notification->enabled))
+ /*if (!empty($conf->notification->enabled))
{
require_once DOL_DOCUMENT_ROOT . '/core/class/notify.class.php';
$notify = new Notify($db);
diff --git a/htdocs/mrp/mo_list.php b/htdocs/mrp/mo_list.php
index 12d2320742d..9bcc446b7c8 100644
--- a/htdocs/mrp/mo_list.php
+++ b/htdocs/mrp/mo_list.php
@@ -292,7 +292,7 @@ foreach($object->fields as $key => $val) {
$sql .= "t.".$key.", ";
}
// Add fields from extrafields
-if (! empty($extrafields->attributes[$object->table_element]['label'])) {
+if (!empty($extrafields->attributes[$object->table_element]['label'])) {
foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) {
$sql .= ($extrafields->attributes[$object->table_element]['type'][$key] != 'separate' ? "ef.".$key.", " : "");
}
diff --git a/htdocs/mrp/mo_movements.php b/htdocs/mrp/mo_movements.php
index 1384852ace8..19533e05c06 100644
--- a/htdocs/mrp/mo_movements.php
+++ b/htdocs/mrp/mo_movements.php
@@ -119,9 +119,9 @@ $arrayfields = array(
'm.datem'=>array('label'=>"Date", 'checked'=>1, 'position'=>2),
'p.ref'=>array('label'=>"ProductRef", 'checked'=>1, 'css'=>'maxwidth100', 'position'=>3),
'p.label'=>array('label'=>"ProductLabel", 'checked'=>0, 'position'=>5),
- 'm.batch'=>array('label'=>"BatchNumberShort", 'checked'=>1, 'position'=>8, 'enabled'=>(!empty($conf->productbatch->enabled))),
- 'pl.eatby'=>array('label'=>"EatByDate", 'checked'=>0, 'position'=>9, 'enabled'=>(!empty($conf->productbatch->enabled))),
- 'pl.sellby'=>array('label'=>"SellByDate", 'checked'=>0, 'position'=>10, 'enabled'=>(!empty($conf->productbatch->enabled))),
+ 'm.batch'=>array('label'=>"BatchNumberShort", 'checked'=>1, 'position'=>8, 'enabled'=>(isModEnabled('productbatch'))),
+ 'pl.eatby'=>array('label'=>"EatByDate", 'checked'=>0, 'position'=>9, 'enabled'=>(isModEnabled('productbatch'))),
+ 'pl.sellby'=>array('label'=>"SellByDate", 'checked'=>0, 'position'=>10, 'enabled'=>(isModEnabled('productbatch'))),
'e.ref'=>array('label'=>"Warehouse", 'checked'=>1, 'position'=>100, 'enabled'=>(!($id > 0))), // If we are on specific warehouse, we hide it
'm.fk_user_author'=>array('label'=>"Author", 'checked'=>0, 'position'=>120),
'm.inventorycode'=>array('label'=>"InventoryCodeShort", 'checked'=>1, 'position'=>130),
diff --git a/htdocs/mrp/mo_production.php b/htdocs/mrp/mo_production.php
index d6fc14b33ae..3dbfe40106d 100644
--- a/htdocs/mrp/mo_production.php
+++ b/htdocs/mrp/mo_production.php
@@ -278,7 +278,7 @@ if (empty($reshook)) {
setEventMessages($langs->trans("ErrorFieldRequiredForProduct", $langs->transnoentitiesnoconv("Warehouse"), $tmpproduct->ref), null, 'errors');
$error++;
}
- if (!empty($conf->productbatch->enabled) && $tmpproduct->status_batch && (!GETPOST('batchtoproduce-'.$line->id.'-'.$i))) {
+ if (isModEnabled('productbatch') && $tmpproduct->status_batch && (!GETPOST('batchtoproduce-'.$line->id.'-'.$i))) {
$langs->load("errors");
setEventMessages($langs->trans("ErrorFieldRequiredForProduct", $langs->transnoentitiesnoconv("Batch"), $tmpproduct->ref), null, 'errors');
$error++;
@@ -396,10 +396,10 @@ if (empty($reshook)) {
if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE)) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -473,7 +473,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
}
$text = $langs->trans('ConfirmValidateMo', $numref);
- /*if (! empty($conf->notification->enabled))
+ /*if (!empty($conf->notification->enabled))
{
require_once DOL_DOCUMENT_ROOT . '/core/class/notify.class.php';
$notify = new Notify($db);
diff --git a/htdocs/mrp/tpl/originproductline.tpl.php b/htdocs/mrp/tpl/originproductline.tpl.php
index 7e0468119bd..bd4ecbc4cd4 100644
--- a/htdocs/mrp/tpl/originproductline.tpl.php
+++ b/htdocs/mrp/tpl/originproductline.tpl.php
@@ -28,7 +28,7 @@ if (!empty($form) && !is_object($form)) {
$form = new Form($db);
}
-$qtytoconsumeforline = $this->tpl['qty'] / ( ! empty($this->tpl['efficiency']) ? $this->tpl['efficiency'] : 1 );
+$qtytoconsumeforline = $this->tpl['qty'] / ( !empty($this->tpl['efficiency']) ? $this->tpl['efficiency'] : 1 );
/*if ((empty($this->tpl['qty_frozen']) && $this->tpl['qty_bom'] > 1)) {
$qtytoconsumeforline = $qtytoconsumeforline / $this->tpl['qty_bom'];
}*/
diff --git a/htdocs/multicurrency/multicurrency_rate.php b/htdocs/multicurrency/multicurrency_rate.php
index 91dc0bce0ad..3f20476f72a 100644
--- a/htdocs/multicurrency/multicurrency_rate.php
+++ b/htdocs/multicurrency/multicurrency_rate.php
@@ -102,7 +102,7 @@ $arrayfields = dol_sort_array($arrayfields, 'position');
// Access control
// TODO Open this page to a given permission so a sale representative can modify change rates. Permission should be added into module multicurrency.
// One permission to read rates (history) and one to add/edit rates.
-if (!$user->admin || empty($conf->multicurrency->enabled)) {
+if (!$user->admin || !isModEnabled("multicurrency")) {
accessforbidden();
}
@@ -506,7 +506,7 @@ if ($resql) {
}
// code
- if (! empty($arrayfields['m.code']['checked'])) {
+ if (!empty($arrayfields['m.code']['checked'])) {
print '
';
print $obj->code;
print ' - '.$obj->name.' ';
@@ -516,7 +516,7 @@ if ($resql) {
}
// rate
- if (! empty($arrayfields['cr.rate']['checked'])) {
+ if (!empty($arrayfields['cr.rate']['checked'])) {
print ' ';
print $obj->rate;
print " \n";
diff --git a/htdocs/partnership/admin/website.php b/htdocs/partnership/admin/website.php
index 49fd7ff91df..2b1a6d4d365 100644
--- a/htdocs/partnership/admin/website.php
+++ b/htdocs/partnership/admin/website.php
@@ -220,7 +220,7 @@ if (!empty($conf->global->PARTNERSHIP_ENABLE_PUBLIC)) {
print '
';
//print $langs->trans('FollowingLinksArePublic').'
';
print img_picto('', 'globe').'
'.$langs->trans('BlankSubscriptionForm').' ';
- if (!empty($conf->multicompany->enabled)) {
+ if (isModEnabled('multicompany')) {
$entity_qr = '?entity='.$conf->entity;
} else {
$entity_qr = '';
diff --git a/htdocs/partnership/class/partnership.class.php b/htdocs/partnership/class/partnership.class.php
index 38d8c333749..9e7cfdd5d03 100644
--- a/htdocs/partnership/class/partnership.class.php
+++ b/htdocs/partnership/class/partnership.class.php
@@ -204,7 +204,7 @@ class Partnership extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid']) && !empty($this->fields['ref'])) {
$this->fields['rowid']['visible'] = 0;
}
- // if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ // if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
// $this->fields['entity']['enabled'] = 0;
// }
@@ -611,8 +611,8 @@ class Partnership extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->partnership->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->partnership->partnership_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->partnership->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->partnership->partnership_advance->validate))))
{
$this->error='NotEnoughPermissions';
dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR);
@@ -735,8 +735,8 @@ class Partnership extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->partnership->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->partnership->partnership_advance->accept))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->partnership->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->partnership->partnership_advance->accept))))
{
$this->error='NotEnoughPermissions';
dol_syslog(get_class($this)."::valid ".$this->error, LOG_ERR);
@@ -853,8 +853,8 @@ class Partnership extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->partnership->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->partnership_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->partnership->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->partnership_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -905,8 +905,8 @@ class Partnership extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->partnership->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->partnership_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->partnership->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->partnership_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -929,8 +929,8 @@ class Partnership extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->partnership->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->partnership_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->partnership->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->partnership_advance->validate))))
{
$this->error='Permission denied';
return -1;
diff --git a/htdocs/partnership/class/partnership_type.class.php b/htdocs/partnership/class/partnership_type.class.php
index e0163ba4dfc..0074d2e80ee 100644
--- a/htdocs/partnership/class/partnership_type.class.php
+++ b/htdocs/partnership/class/partnership_type.class.php
@@ -90,7 +90,7 @@ class PartnershipType extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) {
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) {
$this->fields['entity']['enabled'] = 0;
}
@@ -270,8 +270,8 @@ class PartnershipType extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->mymodule_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->mymodule_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -294,8 +294,8 @@ class PartnershipType extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->mymodule_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->mymodule_advance->validate))))
{
$this->error='Permission denied';
return -1;
@@ -318,8 +318,8 @@ class PartnershipType extends CommonObject
return 0;
}
- /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->write))
- || (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->mymodule->mymodule_advance->validate))))
+ /*if (! ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->write))
+ || (!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && !empty($user->rights->mymodule->mymodule_advance->validate))))
{
$this->error='Permission denied';
return -1;
diff --git a/htdocs/partnership/class/partnershiputils.class.php b/htdocs/partnership/class/partnershiputils.class.php
index 9ad2e5b7ca2..874059431e1 100644
--- a/htdocs/partnership/class/partnershiputils.class.php
+++ b/htdocs/partnership/class/partnershiputils.class.php
@@ -157,7 +157,7 @@ class PartnershipUtils
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) $newlang = GETPOST('lang_id', 'aZ09');
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) $newlang = GETPOST('lang_id', 'aZ09');
if (!empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
@@ -323,7 +323,7 @@ class PartnershipUtils
// Define output language
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) $newlang = GETPOST('lang_id', 'aZ09');
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) $newlang = GETPOST('lang_id', 'aZ09');
if (!empty($newlang)) {
$outputlangs = new Translate("", $conf);
$outputlangs->setDefaultLang($newlang);
diff --git a/htdocs/partnership/partnership_agenda.php b/htdocs/partnership/partnership_agenda.php
index ab6d7ea083a..02580c1f73a 100644
--- a/htdocs/partnership/partnership_agenda.php
+++ b/htdocs/partnership/partnership_agenda.php
@@ -125,7 +125,7 @@ $form = new Form($db);
if ($object->id > 0) {
$title = $langs->trans("Agenda");
- //if (! empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
+ //if (!empty($conf->global->MAIN_HTML_TITLE) && preg_match('/thirdpartynameonly/',$conf->global->MAIN_HTML_TITLE) && $object->name) $title=$object->name." - ".$title;
$help_url = '';
llxHeader('', $title, $help_url);
@@ -149,7 +149,7 @@ if ($object->id > 0) {
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled)) {
+ if (!empty($conf->project->enabled)) {
$langs->load("projects");
$morehtmlref.='
'.$langs->trans('Project') . ' ';
if ($permissiontoadd) {
@@ -169,7 +169,7 @@ if ($object->id > 0) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/partnership/partnership_card.php b/htdocs/partnership/partnership_card.php
index 25f8b286fb5..279b72593da 100644
--- a/htdocs/partnership/partnership_card.php
+++ b/htdocs/partnership/partnership_card.php
@@ -129,10 +129,10 @@ if (empty($reshook)) {
if (method_exists($object, 'generateDocument')) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -161,10 +161,10 @@ if (empty($reshook)) {
if (method_exists($object, 'generateDocument')) {
$outputlangs = $langs;
$newlang = '';
- if ($conf->global->MAIN_MULTILANGS && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang) && GETPOST('lang_id', 'aZ09')) {
$newlang = GETPOST('lang_id', 'aZ09');
}
- if ($conf->global->MAIN_MULTILANGS && empty($newlang)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && empty($newlang)) {
$newlang = $object->thirdparty->default_lang;
}
if (!empty($newlang)) {
@@ -406,7 +406,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled)) {
+ if (!empty($conf->project->enabled)) {
$langs->load("projects");
$morehtmlref .= '
'.$langs->trans('Project') . ' ';
if ($permissiontoadd) {
@@ -424,7 +424,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/partnership/partnership_contact.php b/htdocs/partnership/partnership_contact.php
index 094380ab83b..75d315ae396 100644
--- a/htdocs/partnership/partnership_contact.php
+++ b/htdocs/partnership/partnership_contact.php
@@ -133,7 +133,7 @@ if ($object->id) {
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (!empty($conf->project->enabled))
{
$langs->load("projects");
$morehtmlref.='
'.$langs->trans('Project') . ' ';
@@ -154,7 +154,7 @@ if ($object->id) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/partnership/partnership_document.php b/htdocs/partnership/partnership_document.php
index f9ea6559979..0b6d0e6bd07 100644
--- a/htdocs/partnership/partnership_document.php
+++ b/htdocs/partnership/partnership_document.php
@@ -130,7 +130,7 @@ if ($object->id) {
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (!empty($conf->project->enabled))
{
$langs->load("projects");
$morehtmlref.='
'.$langs->trans('Project') . ' ';
@@ -151,7 +151,7 @@ if ($object->id) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/partnership/partnership_list.php b/htdocs/partnership/partnership_list.php
index 12c63b2f5bd..bc99655efa3 100644
--- a/htdocs/partnership/partnership_list.php
+++ b/htdocs/partnership/partnership_list.php
@@ -385,7 +385,7 @@ foreach($object->fields as $key => $val) {
$sql .= "t.".$db->escape($key).", ";
}
// Add fields from extrafields
-if (! empty($extrafields->attributes[$object->table_element]['label'])) {
+if (!empty($extrafields->attributes[$object->table_element]['label'])) {
foreach ($extrafields->attributes[$object->table_element]['label'] as $key => $val) {
$sql .= ($extrafields->attributes[$object->table_element]['type'][$key] != 'separate' ? "ef.".$key.', ' : '');
}
diff --git a/htdocs/partnership/partnership_note.php b/htdocs/partnership/partnership_note.php
index 3bd2b913163..a38fdc65ade 100644
--- a/htdocs/partnership/partnership_note.php
+++ b/htdocs/partnership/partnership_note.php
@@ -103,7 +103,7 @@ if ($id > 0 || !empty($ref)) {
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . (is_object($object->thirdparty) ? $object->thirdparty->getNomUrl(1) : '');
// Project
- if (! empty($conf->project->enabled))
+ if (!empty($conf->project->enabled))
{
$langs->load("projects");
$morehtmlref.='
'.$langs->trans('Project') . ' ';
@@ -124,7 +124,7 @@ if ($id > 0 || !empty($ref)) {
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= ': '.$proj->getNomUrl();
diff --git a/htdocs/partnership/partnershipindex.php b/htdocs/partnership/partnershipindex.php
index 0b8a6cd33c9..565a218d063 100644
--- a/htdocs/partnership/partnershipindex.php
+++ b/htdocs/partnership/partnershipindex.php
@@ -72,7 +72,7 @@ print '
';
/* BEGIN MODULEBUILDER DRAFT MYOBJECT
// Draft MyObject
-if (! empty($conf->partnership->enabled) && $user->rights->partnership->read) {
+if (!empty($conf->partnership->enabled) && $user->rights->partnership->read) {
$langs->load("orders");
$sql = "SELECT c.rowid, c.ref, c.ref_client, c.total_ht, c.tva as total_tva, c.total_ttc, s.rowid as socid, s.nom as name, s.client, s.canvas";
@@ -141,7 +141,7 @@ $max = $conf->global->MAIN_SIZE_SHORTLIST_LIMIT;
/* BEGIN MODULEBUILDER LASTMODIFIED MYOBJECT
// Last modified myobject
-if (! empty($conf->partnership->enabled) && $user->rights->partnership->read) {
+if (!empty($conf->partnership->enabled) && $user->rights->partnership->read) {
$sql = "SELECT s.rowid, s.ref, s.label, s.date_creation, s.tms";
$sql.= " FROM ".MAIN_DB_PREFIX."partnership_myobject as s";
//if (! $user->rights->societe->client->voir && ! $socid) $sql.= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc";
diff --git a/htdocs/paybox/admin/paybox.php b/htdocs/paybox/admin/paybox.php
index 710cef4f25c..f651ba43760 100644
--- a/htdocs/paybox/admin/paybox.php
+++ b/htdocs/paybox/admin/paybox.php
@@ -226,7 +226,7 @@ print '
'.$langs->trans("Example").': '.$mysoc->n
print '';
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
print '';
print $langs->trans("BankAccount").' ';
$form->select_comptes($conf->global->PAYBOX_BANK_ACCOUNT_FOR_PAYMENTS, 'PAYBOX_BANK_ACCOUNT_FOR_PAYMENTS', 0, '', 1);
diff --git a/htdocs/paypal/admin/paypal.php b/htdocs/paypal/admin/paypal.php
index 197676d74e7..d5142c851d9 100644
--- a/htdocs/paypal/admin/paypal.php
+++ b/htdocs/paypal/admin/paypal.php
@@ -244,7 +244,7 @@ print ' '.$langs->trans("Example").': '.$mysoc->name.'';
print ' ';
-if (!empty($conf->banque->enabled)) {
+if (isModEnabled("banque")) {
print '';
print $langs->trans("BankAccount").' ';
print img_picto('', 'bank_account').' ';
diff --git a/htdocs/product/admin/product.php b/htdocs/product/admin/product.php
index eeeaa094f29..8696b27e521 100644
--- a/htdocs/product/admin/product.php
+++ b/htdocs/product/admin/product.php
@@ -338,7 +338,7 @@ foreach ($dirproduct as $dirroot) {
print " \n";
} else {
$disabled = false;
- if (!empty($conf->multicompany->enabled) && (is_object($mc) && !empty($mc->sharings['referent']) && $mc->sharings['referent'] == $conf->entity) ? false : true) {
+ if (isModEnabled('multicompany') && (is_object($mc) && !empty($mc->sharings['referent']) && $mc->sharings['referent'] == $conf->entity) ? false : true) {
}
print '';
if (!$disabled) {
@@ -556,7 +556,7 @@ print ' ';
// Rule for price
print '';
-if (empty($conf->multicompany->enabled)) {
+if (!isModEnabled('multicompany')) {
print ''.$langs->trans("PricingRule").' ';
} else {
print ''.$form->textwithpicto($langs->trans("PricingRule"), $langs->trans("SamePriceAlsoForSharedCompanies"), 1).' ';
@@ -596,9 +596,10 @@ print $form->selectPriceBaseType($conf->global->PRODUCT_PRICE_BASE_TYPE, "price_
print '';
print ' ';
-if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) {
+// Use conditionnement in buying
+if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) {
print '';
- print ''.$langs->trans("UseProductSupplierPackaging").' ';
+ print ''.$form->textwithpicto($langs->trans("UseProductSupplierPackaging"), $langs->trans("PackagingForThisProductDesc")).' ';
print '';
print ajax_constantonoff("PRODUCT_USE_SUPPLIER_PACKAGING", array(), $conf->entity, 0, 0, 0, 0);
//print $form->selectyesno("activate_useProdSupplierPackaging", (!empty($conf->global->PRODUCT_USE_SUPPLIER_PACKAGING) ? $conf->global->PRODUCT_USE_SUPPLIER_PACKAGING : 0), 1);
diff --git a/htdocs/product/ajax/products.php b/htdocs/product/ajax/products.php
index 74fa53dccb8..0e606932ce2 100644
--- a/htdocs/product/ajax/products.php
+++ b/htdocs/product/ajax/products.php
@@ -79,6 +79,8 @@ if ($action == 'fetch' && !empty($id)) {
require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
require_once DOL_DOCUMENT_ROOT.'/societe/class/societe.class.php';
+ top_httphead('application/json');
+
$outjson = array();
$object = new Product($db);
diff --git a/htdocs/product/card.php b/htdocs/product/card.php
index 1f609e80319..a6ed0c625f6 100644
--- a/htdocs/product/card.php
+++ b/htdocs/product/card.php
@@ -41,6 +41,8 @@
* \brief Page to show product
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/canvas.class.php';
@@ -55,13 +57,13 @@ require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/modules/product/modules_product.class.php';
require_once DOL_DOCUMENT_ROOT.'/workstation/class/workstation.class.php';
-if (!empty($conf->propal->enabled)) {
+if (isModEnabled("propal")) {
require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
}
if (isModEnabled('facture')) {
require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php';
}
-if (!empty($conf->commande->enabled)) {
+if (isModEnabled('commande')) {
require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
}
if (!empty($conf->accounting->enabled)) {
@@ -81,7 +83,7 @@ if (!empty($conf->stock->enabled)) {
if (isModEnabled('facture')) {
$langs->load("bills");
}
-if (!empty($conf->productbatch->enabled)) {
+if (isModEnabled('productbatch')) {
$langs->load("productbatch");
}
@@ -89,6 +91,7 @@ $mesg = ''; $error = 0; $errors = array();
$refalreadyexists = 0;
+// Get parameters
$id = GETPOST('id', 'int');
$ref = (GETPOSTISSET('ref') ? GETPOST('ref', 'alpha') : null);
$type = (GETPOSTISSET('type') ? GETPOST('type', 'int') : Product::TYPE_PRODUCT);
@@ -108,6 +111,7 @@ $accountancy_code_buy_intra = GETPOST('accountancy_code_buy_intra', 'alpha');
$accountancy_code_buy_export = GETPOST('accountancy_code_buy_export', 'alpha');
$checkmandatory = GETPOST('accountancy_code_buy_export', 'alpha');
+
// by default 'alphanohtml' (better security); hidden conf MAIN_SECURITY_ALLOW_UNSECURED_LABELS_WITH_HTML allows basic html
$label_security_check = empty($conf->global->MAIN_SECURITY_ALLOW_UNSECURED_LABELS_WITH_HTML) ? 'alphanohtml' : 'restricthtml';
@@ -137,14 +141,14 @@ if ($id > 0 || !empty($ref)) {
if ($result < 0) {
dol_print_error($db, $object->error, $object->errors);
}
- if (!empty($conf->product->enabled)) {
+ if (isModEnabled("product")) {
$upload_dir = $conf->product->multidir_output[$object->entity].'/'.get_exdir(0, 0, 0, 0, $object, 'product').dol_sanitizeFileName($object->ref);
- } elseif (!empty($conf->service->enabled)) {
+ } elseif (isModEnabled("service")) {
$upload_dir = $conf->service->multidir_output[$object->entity].'/'.get_exdir(0, 0, 0, 0, $object, 'product').dol_sanitizeFileName($object->ref);
}
if (!empty($conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO)) { // For backward compatiblity, we scan also old dirs
- if (!empty($conf->product->enabled)) {
+ if (isModEnabled("product")) {
$upload_dirold = $conf->product->multidir_output[$object->entity].'/'.substr(substr("000".$object->id, -2), 1, 1).'/'.substr(substr("000".$object->id, -2), 0, 1).'/'.$object->id."/photos";
} else {
$upload_dirold = $conf->service->multidir_output[$object->entity].'/'.substr(substr("000".$object->id, -2), 1, 1).'/'.substr(substr("000".$object->id, -2), 0, 1).'/'.$object->id."/photos";
@@ -1352,7 +1356,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
print ' ';
// Batch number management
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
print ''.$langs->trans("ManageLotSerial").' ';
$statutarray = array('0' => $langs->trans("ProductStatusNotOnBatch"), '1' => $langs->trans("ProductStatusOnBatch"), '2' => $langs->trans("ProductStatusOnSerial"));
print $form->selectarray('status_batch', $statutarray, GETPOST('status_batch'));
@@ -1610,7 +1614,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
}
// Note (private, no output on invoices, propales...)
- //if (! empty($conf->global->MAIN_DISABLE_NOTES_TAB)) available in create mode
+ //if (!empty($conf->global->MAIN_DISABLE_NOTES_TAB)) available in create mode
//{
print ' '.$langs->trans("NoteNotVisibleOnBill").' ';
@@ -1621,7 +1625,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
print " ";
//}
- if (!empty($conf->categorie->enabled)) {
+ if (isModEnabled('categorie')) {
// Categories
print ''.$langs->trans("Categories").' ';
$cate_arbo = $form->select_all_categories(Categorie::TYPE_PRODUCT, '', 'parent', 64, 0, 1);
@@ -2317,7 +2321,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
print '';
// Type
- if (!empty($conf->product->enabled) && !empty($conf->service->enabled)) {
+ if (isModEnabled("product") && isModEnabled("service")) {
$typeformat = 'select;0:'.$langs->trans("Product").',1:'.$langs->trans("Service");
print '';
print (empty($conf->global->PRODUCT_DENY_CHANGE_PRODUCT_TYPE)) ? $form->editfieldkey("Type", 'fk_product_type', $object->type, $object, $usercancreate, $typeformat) : $langs->trans('Type');
@@ -2383,7 +2387,7 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
}
// Batch number management (to batch)
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
if ($object->isProduct() || !empty($conf->global->STOCK_SUPPORTS_SERVICES)) {
print ' '.$langs->trans("ManageLotSerial").' ';
print $object->getLibStatut(0, 2);
@@ -2826,7 +2830,7 @@ if (!empty($conf->global->PRODUCT_ADD_FORM_ADD_TO) && $object->id && ($action ==
//print '';
// Propals
- if (!empty($conf->propal->enabled) && $user->rights->propale->creer) {
+ if (isModEnabled("propal") && $user->rights->propale->creer) {
$propal = new Propal($db);
$langs->load("propal");
@@ -2847,7 +2851,7 @@ if (!empty($conf->global->PRODUCT_ADD_FORM_ADD_TO) && $object->id && ($action ==
}
// Commande
- if (!empty($conf->commande->enabled) && $user->rights->commande->creer) {
+ if (isModEnabled('commande') && $user->rights->commande->creer) {
$commande = new Commande($db);
$langs->load("orders");
diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php
index 83e02cdb464..97a407caa2d 100644
--- a/htdocs/product/class/product.class.php
+++ b/htdocs/product/class/product.class.php
@@ -4950,7 +4950,7 @@ class Product extends CommonObject
$label .= '
'.$langs->trans('ProductLabel').': '.$this->label;
}
if ($this->type == Product::TYPE_PRODUCT || !empty($conf->global->STOCK_SUPPORTS_SERVICES)) {
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
$langs->load("productbatch");
$label .= "
".$langs->trans("ManageLotSerial").' : '.$this->getLibStatut(0, 2);
}
@@ -5148,7 +5148,7 @@ class Product extends CommonObject
$labelStatus = $labelStatusShort = '';
$langs->load('products');
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
$langs->load("productbatch");
}
@@ -5463,14 +5463,14 @@ class Product extends CommonObject
//dol_syslog("load_virtual_stock");
- if (!empty($conf->commande->enabled)) {
+ if (isModEnabled('commande')) {
$result = $this->load_stats_commande(0, '1,2', 1);
if ($result < 0) {
dol_print_error($this->db, $this->error);
}
$stock_commande_client = $this->stats_commande['qty'];
}
- if (!empty($conf->expedition->enabled)) {
+ if (isModEnabled("expedition")) {
require_once DOL_DOCUMENT_ROOT.'/expedition/class/expedition.class.php';
$filterShipmentStatus = '';
if (!empty($conf->global->STOCK_CALCULATE_ON_SHIPMENT)) {
@@ -5484,7 +5484,7 @@ class Product extends CommonObject
}
$stock_sending_client = $this->stats_expedition['qty'];
}
- if ((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled)) {
+ if ((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order")) {
$filterStatus = empty($conf->global->SUPPLIER_ORDER_STATUS_FOR_VIRTUAL_STOCK) ? '3,4' : $conf->global->SUPPLIER_ORDER_STATUS_FOR_VIRTUAL_STOCK;
if (isset($includedraftpoforvirtual)) {
$filterStatus = '0,1,2,'.$filterStatus; // 1,2 may have already been inside $filterStatus but it is better to have twice than missing $filterStatus does not include them
@@ -5495,7 +5495,7 @@ class Product extends CommonObject
}
$stock_commande_fournisseur = $this->stats_commande_fournisseur['qty'];
}
- if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && empty($conf->reception->enabled)) {
+ if (((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) && empty($conf->reception->enabled)) {
// Case module reception is not used
$filterStatus = '4';
if (isset($includedraftpoforvirtual)) {
@@ -5507,7 +5507,7 @@ class Product extends CommonObject
}
$stock_reception_fournisseur = $this->stats_reception['qty'];
}
- if (((!empty($conf->fournisseur->enabled) && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || !empty($conf->supplier_order->enabled) || !empty($conf->supplier_invoice->enabled)) && !empty($conf->reception->enabled)) {
+ if (((isModEnabled("fournisseur") && empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)) || isModEnabled("supplier_order") || isModEnabled("supplier_invoice")) && isModEnabled("reception")) {
// Case module reception is used
$filterStatus = '4';
if (isset($includedraftpoforvirtual)) {
diff --git a/htdocs/product/class/productfournisseurprice.class.php b/htdocs/product/class/productfournisseurprice.class.php
index 8f166f702b1..4cbd998a0f6 100644
--- a/htdocs/product/class/productfournisseurprice.class.php
+++ b/htdocs/product/class/productfournisseurprice.class.php
@@ -178,7 +178,7 @@ class ProductFournisseurPrice extends CommonObject
$this->db = $db;
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID) && isset($this->fields['rowid'])) $this->fields['rowid']['visible'] = 0;
- if (empty($conf->multicompany->enabled) && isset($this->fields['entity'])) $this->fields['entity']['enabled'] = 0;
+ if (!isModEnabled('multicompany') && isset($this->fields['entity'])) $this->fields['entity']['enabled'] = 0;
// Unset fields that are disabled
foreach ($this->fields as $key => $val) {
diff --git a/htdocs/product/class/propalmergepdfproduct.class.php b/htdocs/product/class/propalmergepdfproduct.class.php
index 00c492f91de..b4b85c3852a 100644
--- a/htdocs/product/class/propalmergepdfproduct.class.php
+++ b/htdocs/product/class/propalmergepdfproduct.class.php
@@ -107,7 +107,7 @@ class Propalmergepdfproduct extends CommonObject
$sql = "INSERT INTO ".$this->db->prefix()."propal_merge_pdf_product(";
$sql .= "fk_product,";
$sql .= "file_name,";
- if ($conf->global->MAIN_MULTILANGS) {
+ if (!empty($conf->global->MAIN_MULTILANGS)) {
$sql .= "lang,";
}
$sql .= "fk_user_author,";
@@ -116,7 +116,7 @@ class Propalmergepdfproduct extends CommonObject
$sql .= ") VALUES (";
$sql .= " ".(!isset($this->fk_product) ? 'NULL' : ((int) $this->fk_product)).",";
$sql .= " ".(!isset($this->file_name) ? 'NULL' : "'".$this->db->escape($this->file_name)."'").",";
- if ($conf->global->MAIN_MULTILANGS) {
+ if (!empty($conf->global->MAIN_MULTILANGS)) {
$sql .= " ".(!isset($this->lang) ? 'NULL' : "'".$this->db->escape($this->lang)."'").",";
}
$sql .= " ".((int) $user->id).",";
@@ -186,7 +186,7 @@ class Propalmergepdfproduct extends CommonObject
$this->fk_product = $obj->fk_product;
$this->file_name = $obj->file_name;
- if ($conf->global->MAIN_MULTILANGS) {
+ if (!empty($conf->global->MAIN_MULTILANGS)) {
$this->lang = $obj->lang;
}
$this->fk_user_author = $obj->fk_user_author;
@@ -311,7 +311,7 @@ class Propalmergepdfproduct extends CommonObject
$sql .= " fk_product=".(isset($this->fk_product) ? $this->fk_product : "null").",";
$sql .= " file_name=".(isset($this->file_name) ? "'".$this->db->escape($this->file_name)."'" : "null").",";
- if ($conf->global->MAIN_MULTILANGS) {
+ if (!empty($conf->global->MAIN_MULTILANGS)) {
$sql .= " lang=".(isset($this->lang) ? "'".$this->db->escape($this->lang)."'" : "null").",";
}
$sql .= " fk_user_mod=".$user->id;
@@ -403,7 +403,7 @@ class Propalmergepdfproduct extends CommonObject
$sql = "DELETE FROM ".$this->db->prefix()."propal_merge_pdf_product";
$sql .= " WHERE fk_product = ".((int) $product_id);
- if ($conf->global->MAIN_MULTILANGS && !empty($lang_id)) {
+ if (!empty($conf->global->MAIN_MULTILANGS) && !empty($lang_id)) {
$sql .= " AND lang = '".$this->db->escape($lang_id)."'";
}
diff --git a/htdocs/product/composition/card.php b/htdocs/product/composition/card.php
index 2e4962066e9..7f7b8ca01a8 100644
--- a/htdocs/product/composition/card.php
+++ b/htdocs/product/composition/card.php
@@ -179,7 +179,7 @@ if ($action == 'search') {
}
$sql .= natural_search($params, $key);
}
- if (!empty($conf->categorie->enabled) && !empty($parent) && $parent != -1) {
+ if (isModEnabled('categorie') && !empty($parent) && $parent != -1) {
$sql .= " AND cp.fk_categorie ='".$db->escape($parent)."'";
}
$sql .= " ORDER BY p.ref ASC";
@@ -231,7 +231,7 @@ if ($id > 0 || !empty($ref)) {
print '
';
// Type
- if (!empty($conf->product->enabled) && !empty($conf->service->enabled)) {
+ if (isModEnabled("product") && isModEnabled("service")) {
$typeformat = 'select;0:'.$langs->trans("Product").',1:'.$langs->trans("Service");
print '';
print (empty($conf->global->PRODUCT_DENY_CHANGE_PRODUCT_TYPE)) ? $form->editfieldkey("Type", 'fk_product_type', $object->type, $object, $usercancreate, $typeformat) : $langs->trans('Type');
@@ -293,7 +293,7 @@ if ($id > 0 || !empty($ref)) {
$prods_arbo = $object->get_arbo_each_prod();
$tmpid = $id;
- if (! empty($conf->use_javascript_ajax)) {
+ if (!empty($conf->use_javascript_ajax)) {
$nboflines = $prods_arbo;
$table_element_line='product_association';
@@ -590,7 +590,7 @@ if ($id > 0 || !empty($ref)) {
print ' ';
$rowspan = 1;
- if (!empty($conf->categorie->enabled)) {
+ if (isModEnabled('categorie')) {
$rowspan++;
}
@@ -603,7 +603,7 @@ if ($id > 0 || !empty($ref)) {
print $langs->trans("KeywordFilter").': ';
print ' ';
print '';
- if (!empty($conf->categorie->enabled)) {
+ if (isModEnabled('categorie')) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
print ''.$langs->trans("CategoryFilter").': ';
print $form->select_all_categories(Categorie::TYPE_PRODUCT, $parent, 'parent').'
';
diff --git a/htdocs/product/document.php b/htdocs/product/document.php
index 79ff858ba6e..ee5ba79a284 100644
--- a/htdocs/product/document.php
+++ b/htdocs/product/document.php
@@ -28,6 +28,8 @@
* \brief Page des documents joints sur les produits
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/product.lib.php';
require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
@@ -38,9 +40,12 @@ if (!empty($conf->global->PRODUIT_PDF_MERGE_PROPAL)) {
require_once DOL_DOCUMENT_ROOT.'/product/class/propalmergepdfproduct.class.php';
}
+
// Load translation files required by the page
$langs->loadLangs(array('other', 'products'));
+
+// Get parameters
$id = GETPOST('id', 'int');
$ref = GETPOST('ref', 'alpha');
$action = GETPOST('action', 'aZ09');
@@ -74,25 +79,26 @@ if (!$sortfield) {
$sortfield = "position_name";
}
-
+// Initialize objects
$object = new Product($db);
if ($id > 0 || !empty($ref)) {
$result = $object->fetch($id, $ref);
- if (!empty($conf->product->enabled)) {
+ if (isModEnabled("product")) {
$upload_dir = $conf->product->multidir_output[$object->entity].'/'.get_exdir(0, 0, 0, 1, $object, 'product');
- } elseif (!empty($conf->service->enabled)) {
+ } elseif (isModEnabled("service")) {
$upload_dir = $conf->service->multidir_output[$object->entity].'/'.get_exdir(0, 0, 0, 1, $object, 'product');
}
if (!empty($conf->global->PRODUCT_USE_OLD_PATH_FOR_PHOTO)) { // For backward compatiblity, we scan also old dirs
- if (!empty($conf->product->enabled)) {
+ if (isModEnabled("product")) {
$upload_dirold = $conf->product->multidir_output[$object->entity].'/'.substr(substr("000".$object->id, -2), 1, 1).'/'.substr(substr("000".$object->id, -2), 0, 1).'/'.$object->id."/photos";
} else {
$upload_dirold = $conf->service->multidir_output[$object->entity].'/'.substr(substr("000".$object->id, -2), 1, 1).'/'.substr(substr("000".$object->id, -2), 0, 1).'/'.$object->id."/photos";
}
}
}
+
$modulepart = 'produit';
@@ -148,14 +154,14 @@ if ($action == 'filemerge' && $permissiontoadd) {
$filetomerge_file_array = GETPOST('filetoadd');
- if ($conf->global->MAIN_MULTILANGS) {
+ if (!empty($conf->global->MAIN_MULTILANGS)) {
$lang_id = GETPOST('lang_id', 'aZ09');
}
// Delete all file already associated
$filetomerge = new Propalmergepdfproduct($db);
- if ($conf->global->MAIN_MULTILANGS) {
+ if (!empty($conf->global->MAIN_MULTILANGS)) {
$result = $filetomerge->delete_by_product($user, $object->id, $lang_id);
} else {
$result = $filetomerge->delete_by_product($user, $object->id);
@@ -170,7 +176,7 @@ if ($action == 'filemerge' && $permissiontoadd) {
$filetomerge->fk_product = $object->id;
$filetomerge->file_name = $filetomerge_file;
- if ($conf->global->MAIN_MULTILANGS) {
+ if (!empty($conf->global->MAIN_MULTILANGS)) {
$filetomerge->lang = $lang_id;
}
@@ -265,7 +271,7 @@ if ($object->id) {
if (!empty($conf->global->PRODUIT_PDF_MERGE_PROPAL)) {
$filetomerge = new Propalmergepdfproduct($db);
- if ($conf->global->MAIN_MULTILANGS) {
+ if (!empty($conf->global->MAIN_MULTILANGS)) {
$lang_id = GETPOST('lang_id', 'aZ09');
$result = $filetomerge->fetch_by_product($object->id, $lang_id);
} else {
@@ -299,7 +305,7 @@ if ($object->id) {
print '';
// Get language
- if ($conf->global->MAIN_MULTILANGS) {
+ if (!empty($conf->global->MAIN_MULTILANGS)) {
$langs->load("languages");
print '';
@@ -310,7 +316,7 @@ if ($object->id) {
print Form::selectarray('lang_id', $langs_available, $default_lang, 0, 0, 0, '', 0, 0, 0, 'ASC');
- if ($conf->global->MAIN_MULTILANGS) {
+ if (!empty($conf->global->MAIN_MULTILANGS)) {
print ' ';
}
@@ -322,7 +328,7 @@ if ($object->id) {
$checked = '';
$filename = $filetoadd['name'];
- if ($conf->global->MAIN_MULTILANGS) {
+ if (!empty($conf->global->MAIN_MULTILANGS)) {
if (array_key_exists($filetoadd['name'].'_'.$default_lang, $filetomerge->lines)) {
$filename = $filetoadd['name'].' - '.$langs->trans('Language_'.$default_lang);
$checked = ' checked ';
diff --git a/htdocs/product/fournisseurs.php b/htdocs/product/fournisseurs.php
index db4fdedbc01..4e27ae3dfa3 100644
--- a/htdocs/product/fournisseurs.php
+++ b/htdocs/product/fournisseurs.php
@@ -243,7 +243,7 @@ if (empty($reshook)) {
$_POST["price"] = 0;
}
}
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
if (!GETPOST("multicurrency_code")) {
$error++;
$langs->load("errors");
@@ -299,7 +299,7 @@ if (empty($reshook)) {
}*/
$object->packaging = $packaging;
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
$multicurrency_tx = price2num(GETPOST("multicurrency_tx", 'alpha'));
$multicurrency_price = price2num(GETPOST("multicurrency_price", 'alpha'));
$multicurrency_code = GETPOST("multicurrency_code", 'alpha');
@@ -397,7 +397,7 @@ if ($id > 0 || $ref) {
print '';
// Type
- if (!empty($conf->product->enabled) && !empty($conf->service->enabled)) {
+ if (isModEnabled("product") && isModEnabled("service")) {
$typeformat = 'select;0:'.$langs->trans("Product").',1:'.$langs->trans("Service");
print '';
print (empty($conf->global->PRODUCT_DENY_CHANGE_PRODUCT_TYPE)) ? $form->editfieldkey("Type", 'fk_product_type', $object->type, $object, 0, $typeformat) : $langs->trans('Type');
@@ -506,6 +506,43 @@ if ($id > 0 || $ref) {
print '';
}
}
+ print '';
}
print ' ';
@@ -521,7 +558,7 @@ if ($id > 0 || $ref) {
print '';
// Availability
- if (!empty($conf->global->FOURN_PRODUCT_AVAILABILITY)) {
+ if (getDolGlobalInt('FOURN_PRODUCT_AVAILABILITY')) {
$langs->load("propal");
print ''.$langs->trans("Availability").' ';
$form->selectAvailabilityDelay($object->fk_availability, "oselDispo", 1);
@@ -549,7 +586,7 @@ if ($id > 0 || $ref) {
print ' ';
if (!empty($conf->global->PRODUCT_USE_SUPPLIER_PACKAGING)) {
- // Packaging
+ // Packaging/Conditionnement
print '';
print ''.$form->textwithpicto($langs->trans("PackagingForThisProduct"), $langs->trans("PackagingForThisProductDesc")).' ';
@@ -630,7 +667,7 @@ if ($id > 0 || $ref) {
';
}
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
// Currency
print ' '.$langs->trans("Currency").' ';
print '';
@@ -907,15 +944,15 @@ END;
$arrayfields = array(
'pfp.datec'=>array('label'=>$langs->trans("AppliedPricesFrom"), 'checked'=>1, 'position'=>1),
's.nom'=>array('label'=>$langs->trans("Suppliers"), 'checked'=>1, 'position'=>2),
- 'pfp.fk_availability'=>array('label'=>$langs->trans("Availability"), 'enabled' => !empty($conf->global->FOURN_PRODUCT_AVAILABILITY), 'checked'=>0, 'position'=>4),
+ 'pfp.fk_availability'=>array('label'=>$langs->trans("Availability"), 'enabled' => getDolGlobalInt('FOURN_PRODUCT_AVAILABILITY'), 'checked'=>0, 'position'=>4),
'pfp.quantity'=>array('label'=>$langs->trans("QtyMin"), 'checked'=>1, 'position'=>5),
'pfp.unitprice'=>array('label'=>$langs->trans("UnitPriceHT"), 'checked'=>1, 'position'=>9),
- 'pfp.multicurrency_unitprice'=>array('label'=>$langs->trans("UnitPriceHTCurrency"), 'enabled' => (!empty($conf->multicurrency->enabled)), 'checked'=>0, 'position'=>10),
+ 'pfp.multicurrency_unitprice'=>array('label'=>$langs->trans("UnitPriceHTCurrency"), 'enabled' => isModEnabled('multicurrency'), 'checked'=>0, 'position'=>10),
'pfp.delivery_time_days'=>array('label'=>$langs->trans("NbDaysToDelivery"), 'checked'=>1, 'position'=>13),
'pfp.supplier_reputation'=>array('label'=>$langs->trans("ReputationForThisProduct"), 'checked'=>1, 'position'=>14),
'pfp.fk_barcode_type'=>array('label'=>$langs->trans("BarcodeType"), 'enabled' => isModEnabled('barcode'), 'checked'=>0, 'position'=>15),
'pfp.barcode'=>array('label'=>$langs->trans("BarcodeValue"), 'enabled' => isModEnabled('barcode'), 'checked'=>0, 'position'=>16),
- 'pfp.packaging'=>array('label'=>$langs->trans("PackagingForThisProduct"), 'enabled' => !empty($conf->global->PRODUCT_USE_SUPPLIER_PACKAGING), 'checked'=>0, 'position'=>17),
+ 'pfp.packaging'=>array('label'=>$langs->trans("PackagingForThisProduct"), 'enabled' => getDolGlobalInt('PRODUCT_USE_SUPPLIER_PACKAGING'), 'checked'=>0, 'position'=>17),
'pfp.tms'=>array('label'=>$langs->trans("DateModification"), 'enabled' => isModEnabled('barcode'), 'checked'=>1, 'position'=>18),
);
@@ -973,7 +1010,7 @@ END;
}
print_liste_field_titre("VATRate", $_SERVER["PHP_SELF"], '', '', $param, '', $sortfield, $sortorder, 'right ');
print_liste_field_titre("PriceQtyMinHT", $_SERVER["PHP_SELF"], '', '', $param, '', $sortfield, $sortorder, 'right ');
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
print_liste_field_titre("PriceQtyMinHTCurrency", $_SERVER["PHP_SELF"], '', '', $param, '', $sortfield, $sortorder, 'right ');
}
if (!empty($arrayfields['pfp.unitprice']['checked'])) {
@@ -982,7 +1019,7 @@ END;
if (!empty($arrayfields['pfp.multicurrency_unitprice']['checked'])) {
print_liste_field_titre("UnitPriceHTCurrency", $_SERVER["PHP_SELF"], "pfp.multicurrency_unitprice", "", $param, '', $sortfield, $sortorder, 'right ');
}
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
print_liste_field_titre("Currency", $_SERVER["PHP_SELF"], "", "", $param, '', $sortfield, $sortorder, 'right ');
}
print_liste_field_titre("DiscountQtyMin", $_SERVER["PHP_SELF"], '', '', $param, '', $sortfield, $sortorder, 'right ');
@@ -1089,7 +1126,7 @@ END;
print $productfourn->fourn_price ? ''.price($productfourn->fourn_price).' ' : "";
print ' ';
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
// Price for the quantity in currency
print '';
print $productfourn->fourn_multicurrency_price ? ''.price($productfourn->fourn_multicurrency_price).' ' : "";
@@ -1112,7 +1149,7 @@ END;
}
// Currency
- if (!empty($conf->multicurrency->enabled)) {
+ if (isModEnabled("multicurrency")) {
print ' ';
print $productfourn->fourn_multicurrency_code ? currency_name($productfourn->fourn_multicurrency_code) : '';
print ' ';
diff --git a/htdocs/product/index.php b/htdocs/product/index.php
index 40141fce304..726a8b56135 100644
--- a/htdocs/product/index.php
+++ b/htdocs/product/index.php
@@ -28,6 +28,8 @@
* \brief Homepage products and services
*/
+
+// Load Dolibarr environment
require '../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
@@ -47,6 +49,7 @@ $langs->loadLangs(array('products', 'stocks'));
// Initialize technical object to manage hooks. Note that conf->hooks_modules contains array of hooks
$hookmanager->initHooks(array('productindex'));
+// Initialize objects
$product_static = new Product($db);
// Security check
@@ -90,7 +93,7 @@ print '';
if (!empty($conf->global->MAIN_SEARCH_FORM_ON_HOME_AREAS)) { // This may be useless due to the global search combo
// Search contract
- if ((!empty($conf->product->enabled) || !empty($conf->service->enabled)) && ($user->rights->produit->lire || $user->rights->service->lire)) {
+ if ((isModEnabled("product") || isModEnabled("service")) && ($user->rights->produit->lire || $user->rights->service->lire)) {
$listofsearchfields['search_product'] = array('text'=>'ProductOrService');
}
@@ -123,7 +126,7 @@ if (!empty($conf->global->MAIN_SEARCH_FORM_ON_HOME_AREAS)) { // This may be
/*
* Number of products and/or services
*/
-if ((!empty($conf->product->enabled) || !empty($conf->service->enabled)) && ($user->rights->produit->lire || $user->rights->service->lire)) {
+if ((isModEnabled("product") || isModEnabled("service")) && ($user->rights->produit->lire || $user->rights->service->lire)) {
$prodser = array();
$prodser[0][0] = $prodser[0][1] = $prodser[0][2] = $prodser[0][3] = 0;
$prodser[0]['sell'] = 0;
@@ -185,12 +188,12 @@ if ((!empty($conf->product->enabled) || !empty($conf->service->enabled)) && ($us
$total = $SommeA + $SommeB + $SommeC + $SommeD + $SommeE + $SommeF;
$dataseries = array();
- if (!empty($conf->product->enabled)) {
+ if (isModEnabled("product")) {
$dataseries[] = array($langs->transnoentitiesnoconv("ProductsOnSale"), round($SommeA));
$dataseries[] = array($langs->transnoentitiesnoconv("ProductsOnPurchase"), round($SommeB));
$dataseries[] = array($langs->transnoentitiesnoconv("ProductsNotOnSell"), round($SommeC));
}
- if (!empty($conf->service->enabled)) {
+ if (isModEnabled("service")) {
$dataseries[] = array($langs->transnoentitiesnoconv("ServicesOnSale"), round($SommeD));
$dataseries[] = array($langs->transnoentitiesnoconv("ServicesOnPurchase"), round($SommeE));
$dataseries[] = array($langs->transnoentitiesnoconv("ServicesNotOnSell"), round($SommeF));
@@ -212,7 +215,7 @@ if ((!empty($conf->product->enabled) || !empty($conf->service->enabled)) && ($us
}
-if (!empty($conf->categorie->enabled) && !empty($conf->global->CATEGORY_GRAPHSTATS_ON_PRODUCTS)) {
+if (isModEnabled('categorie') && !empty($conf->global->CATEGORY_GRAPHSTATS_ON_PRODUCTS)) {
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
print '
';
print '
';
@@ -281,7 +284,7 @@ print '
';
/*
* Latest modified products
*/
-if ((!empty($conf->product->enabled) || !empty($conf->service->enabled)) && ($user->rights->produit->lire || $user->rights->service->lire)) {
+if ((isModEnabled("product") || isModEnabled("service")) && ($user->rights->produit->lire || $user->rights->service->lire)) {
$max = 15;
$sql = "SELECT p.rowid, p.label, p.price, p.ref, p.fk_product_type, p.tosell, p.tobuy, p.tobatch, p.fk_price_expression,";
$sql .= " p.entity,";
@@ -338,6 +341,11 @@ if ((!empty($conf->product->enabled) || !empty($conf->service->enabled)) && ($us
$product_static->status_buy = $objp->tobuy;
$product_static->status_batch = $objp->tobatch;
+ $usercancreadprice = getDolGlobalString('MAIN_USE_ADVANCED_PERMS')?$user->hasRight('product', 'product_advance', 'read_prices'):$user->hasRight('product', 'lire');
+ if ($product_static->isService()) {
+ $usercancreadprice = getDolGlobalString('MAIN_USE_ADVANCED_PERMS')?$user->hasRight('service', 'service_advance', 'read_prices'):$user->hasRight('service', 'lire');
+ }
+
// Multilangs
if (!empty($conf->global->MAIN_MULTILANGS)) {
$sql = "SELECT label";
@@ -375,10 +383,12 @@ if ((!empty($conf->product->enabled) || !empty($conf->service->enabled)) && ($us
}
}
print '
';
- if (isset($objp->price_base_type) && $objp->price_base_type == 'TTC') {
- print price($objp->price_ttc).' '.$langs->trans("TTC");
- } else {
- print price($objp->price).' '.$langs->trans("HT");
+ if ($usercancreadprice) {
+ if (isset($objp->price_base_type) && $objp->price_base_type == 'TTC') {
+ print price($objp->price_ttc).' '.$langs->trans("TTC");
+ } else {
+ print price($objp->price).' '.$langs->trans("HT");
+ }
}
print ' ';
}
@@ -407,11 +417,11 @@ if ((!empty($conf->product->enabled) || !empty($conf->service->enabled)) && ($us
// TODO Move this into a page that should be available into menu "accountancy - report - turnover - per quarter"
// Also method used for counting must provide the 2 possible methods like done by all other reports into menu "accountancy - report - turnover":
// "commitment engagment" method and "cash accounting" method
-if (!empty($conf->global->MAIN_SHOW_PRODUCT_ACTIVITY_TRIM)) {
- if (!empty($conf->product->enabled)) {
+if (isModEnabled("invoice") && $user->hasRight('facture', 'lire') && getDolGlobalString('MAIN_SHOW_PRODUCT_ACTIVITY_TRIM')) {
+ if (isModEnabled("product")) {
activitytrim(0);
}
- if (!empty($conf->service->enabled)) {
+ if (isModEnabled("service")) {
activitytrim(1);
}
}
diff --git a/htdocs/product/inventory/ajax/searchfrombarcode.php b/htdocs/product/inventory/ajax/searchfrombarcode.php
index 68ffee43c23..2d29e1d9d2e 100644
--- a/htdocs/product/inventory/ajax/searchfrombarcode.php
+++ b/htdocs/product/inventory/ajax/searchfrombarcode.php
@@ -58,6 +58,13 @@ $warehousefound = 0;
$warehouseid = 0;
$objectreturn = array();
+
+/*
+ * View
+ */
+
+top_httphead('application/json');
+
if ($action == "existbarcode" && !empty($barcode)) {
if (!empty($mode) && $mode == "lotserial") {
$sql = "SELECT ps.fk_entrepot, ps.fk_product, p.barcode, ps.reel, pb.batch";
diff --git a/htdocs/product/inventory/card.php b/htdocs/product/inventory/card.php
index 47404ba4f04..796470c469c 100644
--- a/htdocs/product/inventory/card.php
+++ b/htdocs/product/inventory/card.php
@@ -313,7 +313,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . $soc->getNomUrl(1);
// Project
- if (! empty($conf->project->enabled))
+ if (!empty($conf->project->enabled))
{
$langs->load("projects");
$morehtmlref.='
'.$langs->trans('Project') . ' ';
@@ -335,7 +335,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
}
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref .= $proj->getNomUrl();
diff --git a/htdocs/product/inventory/class/inventory.class.php b/htdocs/product/inventory/class/inventory.class.php
index d7d167035a7..281d58ea99e 100644
--- a/htdocs/product/inventory/class/inventory.class.php
+++ b/htdocs/product/inventory/class/inventory.class.php
@@ -33,6 +33,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/class/commonobjectline.class.php';
/**
* Class for Inventory
*/
+
class Inventory extends CommonObject
{
/**
@@ -60,10 +61,10 @@ class Inventory extends CommonObject
*/
public $picto = 'inventory';
- const STATUS_DRAFT = 0; // Draft
+ const STATUS_DRAFT = 0; // Draft
const STATUS_VALIDATED = 1; // Inventory is in process
- const STATUS_RECORDED = 2; // Inventory is finisged. Stock movement has been recorded.
- const STATUS_CANCELED = 9; // Canceled
+ const STATUS_RECORDED = 2; // Inventory is finisged. Stock movement has been recorded.
+ const STATUS_CANCELED = 9; // Canceled
/**
* 'type' field format ('integer', 'integer:ObjectClass:PathToClass[:AddCreateButtonOrNot[:Filter]]', 'sellist:TableName:LabelFieldName[:KeyFieldName[:KeyFieldParent[:Filter]]]', 'varchar(x)', 'double(24,8)', 'real', 'price', 'text', 'text:none', 'html', 'date', 'datetime', 'timestamp', 'duration', 'mail', 'phone', 'url', 'password')
@@ -96,23 +97,22 @@ class Inventory extends CommonObject
* @var array Array with all fields and their property
*/
public $fields = array(
- 'rowid' => array('type'=>'integer', 'label'=>'TechnicalID', 'visible'=>-1, 'enabled'=>1, 'position'=>1, 'notnull'=>1, 'index'=>1, 'comment'=>'Id',),
- 'ref' => array('type'=>'varchar(64)', 'label'=>'Ref', 'visible'=>1, 'enabled'=>1, 'position'=>10, 'notnull'=>1, 'index'=>1, 'searchall'=>1, 'comment'=>'Reference of object', 'css'=>'maxwidth200'),
- 'entity' => array('type'=>'integer', 'label'=>'Entity', 'visible'=>0, 'enabled'=>1, 'position'=>20, 'notnull'=>1, 'index'=>1,),
- 'title' => array('type'=>'varchar(255)', 'label'=>'Label', 'visible'=>1, 'enabled'=>1, 'position'=>25, 'css'=>'minwidth300', 'csslist'=>'tdoverflowmax200'),
- 'fk_warehouse' => array('type'=>'integer:Entrepot:product/stock/class/entrepot.class.php', 'label'=>'Warehouse', 'visible'=>1, 'enabled'=>1, 'position'=>30, 'index'=>1, 'help'=>'InventoryForASpecificWarehouse', 'picto'=>'stock', 'css'=>'minwidth300 maxwidth500 widthcentpercentminusx', 'csslist'=>'tdoverflowmax200'),
- 'fk_product' => array('type'=>'integer:Product:product/class/product.class.php', 'label'=>'Product', 'get_name_url_params' => '0::0:-1:0::1', 'visible'=>1, 'enabled'=>1, 'position'=>32, 'index'=>1, 'help'=>'InventoryForASpecificProduct', 'picto'=>'product', 'css'=>'minwidth300 maxwidth500 widthcentpercentminusx', 'csslist'=>'tdoverflowmax200'),
+ 'rowid' => array('type'=>'integer', 'label'=>'TechnicalID', 'visible'=>-1, 'enabled'=>1, 'position'=>1, 'notnull'=>1, 'index'=>1, 'comment'=>'Id',),
+ 'ref' => array('type'=>'varchar(64)', 'label'=>'Ref', 'visible'=>1, 'enabled'=>1, 'position'=>10, 'notnull'=>1, 'index'=>1, 'searchall'=>1, 'comment'=>'Reference of object', 'css'=>'maxwidth200'),
+ 'entity' => array('type'=>'integer', 'label'=>'Entity', 'visible'=>0, 'enabled'=>1, 'position'=>20, 'notnull'=>1, 'index'=>1,),
+ 'title' => array('type'=>'varchar(255)', 'label'=>'Label', 'visible'=>1, 'enabled'=>1, 'position'=>25, 'css'=>'minwidth300', 'csslist'=>'tdoverflowmax200'),
+ 'fk_warehouse' => array('type'=>'integer:Entrepot:product/stock/class/entrepot.class.php', 'label'=>'Warehouse', 'visible'=>1, 'enabled'=>1, 'position'=>30, 'index'=>1, 'help'=>'InventoryForASpecificWarehouse', 'picto'=>'stock', 'css'=>'minwidth300 maxwidth500 widthcentpercentminusx', 'csslist'=>'tdoverflowmax200'),
+ 'fk_product' => array('type'=>'integer:Product:product/class/product.class.php', 'label'=>'Product', 'get_name_url_params' => '0::0:-1:0::1', 'visible'=>1, 'enabled'=>1, 'position'=>32, 'index'=>1, 'help'=>'InventoryForASpecificProduct', 'picto'=>'product', 'css'=>'minwidth300 maxwidth500 widthcentpercentminusx', 'csslist'=>'tdoverflowmax200'),
'categories_product' => array('type'=>'chkbxlst:categorie:label:rowid::type=0:0:', 'label'=>'OrProductsWithCategories', 'visible'=>3, 'enabled'=>1, 'position'=>33, 'help'=>'', 'picto'=>'category', 'css'=>'minwidth300 maxwidth500 widthcentpercentminusx'),
- 'date_inventory' => array('type'=>'date', 'label'=>'DateValue', 'visible'=>1, 'enabled'=>'$conf->global->STOCK_INVENTORY_ADD_A_VALUE_DATE', 'position'=>35), // This date is not used so disabled by default.
- 'date_creation' => array('type'=>'datetime', 'label'=>'DateCreation', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>500),
- 'tms' => array('type'=>'timestamp', 'label'=>'DateModification', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>501),
- 'date_validation' => array('type'=>'datetime', 'label'=>'DateValidation', 'visible'=>-2, 'enabled'=>1, 'position'=>502),
- 'fk_user_creat' => array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserAuthor', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>510, 'foreignkey'=>'user.rowid', 'csslist'=>'tdoverflowmax200'),
- 'fk_user_modif' => array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserModif', 'enabled'=>1, 'visible'=>-2, 'notnull'=>-1, 'position'=>511, 'csslist'=>'tdoverflowmax200'),
- 'fk_user_valid' => array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserValidation', 'visible'=>-2, 'enabled'=>1, 'position'=>512, 'csslist'=>'tdoverflowmax200'),
- 'import_key' => array('type'=>'varchar(14)', 'label'=>'ImportId', 'enabled'=>1, 'visible'=>-2, 'notnull'=>-1, 'index'=>0, 'position'=>1000),
-
- 'status' => array('type'=>'integer', 'label'=>'Status', 'visible'=>4, 'enabled'=>1, 'position'=>1000, 'notnull'=>1, 'default'=>0, 'index'=>1, 'arrayofkeyval'=>array(0=>'Draft', 1=>'Validated', 2=>'Closed', 9=>'Canceled'))
+ 'date_inventory' => array('type'=>'date', 'label'=>'DateValue', 'visible'=>1, 'enabled'=>'$conf->global->STOCK_INVENTORY_ADD_A_VALUE_DATE', 'position'=>35), // This date is not used so disabled by default.
+ 'date_creation' => array('type'=>'datetime', 'label'=>'DateCreation', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>500),
+ 'tms' => array('type'=>'timestamp', 'label'=>'DateModification', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>501),
+ 'date_validation' => array('type'=>'datetime', 'label'=>'DateValidation', 'visible'=>-2, 'enabled'=>1, 'position'=>502),
+ 'fk_user_creat' => array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserAuthor', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>510, 'foreignkey'=>'user.rowid', 'csslist'=>'tdoverflowmax200'),
+ 'fk_user_modif' => array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserModif', 'enabled'=>1, 'visible'=>-2, 'notnull'=>-1, 'position'=>511, 'csslist'=>'tdoverflowmax200'),
+ 'fk_user_valid' => array('type'=>'integer:User:user/class/user.class.php', 'label'=>'UserValidation', 'visible'=>-2, 'enabled'=>1, 'position'=>512, 'csslist'=>'tdoverflowmax200'),
+ 'import_key' => array('type'=>'varchar(14)', 'label'=>'ImportId', 'enabled'=>1, 'visible'=>-2, 'notnull'=>-1, 'index'=>0, 'position'=>1000),
+ 'status' => array('type'=>'integer', 'label'=>'Status', 'visible'=>4, 'enabled'=>1, 'position'=>1000, 'notnull'=>1, 'default'=>0, 'index'=>1, 'arrayofkeyval'=>array(0=>'Draft', 1=>'Validated', 2=>'Closed', 9=>'Canceled'))
);
/**
@@ -144,7 +144,6 @@ class Inventory extends CommonObject
* @var string Categories id separated by comma
*/
public $categories_product;
-
public $date_inventory;
public $title;
@@ -162,8 +161,6 @@ class Inventory extends CommonObject
* @var integer|string date_validation
*/
public $date_validation;
-
-
public $tms;
/**
@@ -236,7 +233,7 @@ class Inventory extends CommonObject
if (empty($conf->global->MAIN_SHOW_TECHNICAL_ID)) {
$this->fields['rowid']['visible'] = 0;
}
- if (empty($conf->multicompany->enabled)) {
+ if (!isModEnabled('multicompany')) {
$this->fields['entity']['enabled'] = 0;
}
}
@@ -491,7 +488,7 @@ class Inventory extends CommonObject
public function fetch($id, $ref = null)
{
$result = $this->fetchCommon($id, $ref);
- //if ($result > 0 && ! empty($this->table_element_line)) $this->fetchLines();
+ //if ($result > 0 && !empty($this->table_element_line)) $this->fetchLines();
return $result;
}
@@ -764,9 +761,9 @@ class InventoryLine extends CommonObjectLine
* @var array Array with all fields and their property
*/
public $fields = array(
- 'rowid' => array('type'=>'integer', 'label'=>'TechnicalID', 'visible'=>-1, 'enabled'=>1, 'position'=>1, 'notnull'=>1, 'index'=>1, 'comment'=>'Id',),
+ 'rowid' => array('type'=>'integer', 'label'=>'TechnicalID', 'visible'=>-1, 'enabled'=>1, 'position'=>1, 'notnull'=>1, 'index'=>1, 'comment'=>'Id',),
'fk_inventory' => array('type'=>'integer:Inventory:product/inventory/class/inventory.class.php', 'label'=>'Inventory', 'visible'=>1, 'enabled'=>1, 'position'=>30, 'index'=>1, 'help'=>'LinkToInventory'),
- 'fk_warehouse' => array('type'=>'integer:Entrepot:product/stock/class/entrepot.class.php', 'label'=>'Warehouse', 'visible'=>1, 'enabled'=>1, 'position'=>30, 'index'=>1, 'help'=>'LinkToThirparty'),
+ 'fk_warehouse' => array('type'=>'integer:Entrepot:product/stock/class/entrepot.class.php', 'label'=>'Warehouse', 'visible'=>1, 'enabled'=>1, 'position'=>30, 'index'=>1, 'help'=>'LinkToThirdparty'),
'fk_product' => array('type'=>'integer:Product:product/class/product.class.php', 'label'=>'Product', 'visible'=>1, 'enabled'=>1, 'position'=>32, 'index'=>1, 'help'=>'LinkToProduct'),
'batch' => array('type'=>'string', 'label'=>'Batch', 'visible'=>1, 'enabled'=>1, 'position'=>32, 'index'=>1, 'help'=>'LinkToProduct'),
'datec' => array('type'=>'datetime', 'label'=>'DateCreation', 'enabled'=>1, 'visible'=>-2, 'notnull'=>1, 'position'=>500),
@@ -774,8 +771,8 @@ class InventoryLine extends CommonObjectLine
'qty_stock' => array('type'=>'double', 'label'=>'QtyFound', 'visible'=>1, 'enabled'=>1, 'position'=>32, 'index'=>1, 'help'=>'Qty we found/want (to define during draft edition)'),
'qty_view' => array('type'=>'double', 'label'=>'QtyBefore', 'visible'=>1, 'enabled'=>1, 'position'=>33, 'index'=>1, 'help'=>'Qty before (filled once movements are validated)'),
'qty_regulated' => array('type'=>'double', 'label'=>'QtyDelta', 'visible'=>1, 'enabled'=>1, 'position'=>34, 'index'=>1, 'help'=>'Qty aadded or removed (filled once movements are validated)'),
- 'pmp_real' => array('type'=>'double', 'label'=>'PMPReal', 'visible'=>1, 'enabled'=>1, 'position'=>35),
- 'pmp_expected' => array('type'=>'double', 'label'=>'PMPExpected', 'visible'=>1, 'enabled'=>1, 'position'=>36),
+ 'pmp_real' => array('type'=>'double', 'label'=>'PMPReal', 'visible'=>1, 'enabled'=>1, 'position'=>35),
+ 'pmp_expected' => array('type'=>'double', 'label'=>'PMPExpected', 'visible'=>1, 'enabled'=>1, 'position'=>36),
);
/**
@@ -818,7 +815,7 @@ class InventoryLine extends CommonObjectLine
public function fetch($id, $ref = null)
{
$result = $this->fetchCommon($id, $ref);
- //if ($result > 0 && ! empty($this->table_element_line)) $this->fetchLines();
+ //if ($result > 0 && !empty($this->table_element_line)) $this->fetchLines();
return $result;
}
diff --git a/htdocs/product/inventory/inventory.php b/htdocs/product/inventory/inventory.php
index cdcfe74cb73..be7512df6fc 100644
--- a/htdocs/product/inventory/inventory.php
+++ b/htdocs/product/inventory/inventory.php
@@ -161,7 +161,7 @@ if (empty($reshook)) {
// Get the real quantity in stock now, but before the stock move for inventory.
$realqtynow = $product_static->stock_warehouse[$line->fk_warehouse]->real;
- if ($conf->productbatch->enabled && $product_static->hasbatch()) {
+ if (isModEnabled('productbatch') && $product_static->hasbatch()) {
$realqtynow = $product_static->stock_warehouse[$line->fk_warehouse]->detail_batch[$line->batch]->qty;
}
@@ -348,7 +348,7 @@ if (empty($reshook)) {
$error++;
setEventMessages($langs->trans("FieldCannotBeNegative", $langs->transnoentitiesnoconv("RealQty")), null, 'errors');
}
- if (!$error && !empty($conf->productbatch->enabled)) {
+ if (!$error && isModEnabled('productbatch')) {
$tmpproduct = new Product($db);
$result = $tmpproduct->fetch($fk_product);
@@ -494,7 +494,7 @@ if ($object->id > 0) {
// Thirdparty
$morehtmlref.='
'.$langs->trans('ThirdParty') . ' : ' . $soc->getNomUrl(1);
// Project
- if (! empty($conf->project->enabled))
+ if (!empty($conf->project->enabled))
{
$langs->load("projects");
$morehtmlref.='
'.$langs->trans('Project') . ' ';
@@ -516,7 +516,7 @@ if ($object->id > 0) {
}
}
} else {
- if (! empty($object->fk_project)) {
+ if (!empty($object->fk_project)) {
$proj = new Project($db);
$proj->fetch($object->fk_project);
$morehtmlref.=$proj->getNomUrl();
@@ -608,7 +608,7 @@ if ($object->id > 0) {
if (!empty($conf->use_javascript_ajax)) {
if ($permissiontoadd) {
// Link to launch scan tool
- if (isModEnabled('barcode') || !empty($conf->productbatch->enabled)) {
+ if (isModEnabled('barcode') || isModEnabled('productbatch')) {
print '
id.'&action=updatebyscaning" class="marginrightonly paddingright marginleftonly paddingleft">'.img_picto('', 'barcode', 'class="paddingrightonly"').$langs->trans("UpdateByScaning").' ';
}
@@ -906,7 +906,7 @@ if ($object->id > 0) {
print '
';
print ''.$langs->trans("Warehouse").' ';
print ''.$langs->trans("Product").' ';
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
print '';
print $langs->trans("Batch");
print ' ';
@@ -944,7 +944,7 @@ if ($object->id > 0) {
print '';
print $form->select_produits((GETPOSTISSET('fk_product') ? GETPOST('fk_product', 'int') : $object->fk_product), 'fk_product', '', 0, 0, -1, 2, '', 0, null, 0, '1', 0, 'maxwidth300');
print ' ';
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
print '';
print ' ';
print ' ';
@@ -1022,7 +1022,7 @@ if ($object->id > 0) {
print $product_static->getNomUrl(1).' - '.$product_static->label;
print '';
- if (!empty($conf->productbatch->enabled)) {
+ if (isModEnabled('productbatch')) {
print '';
$batch_static = new Productlot($db);
$res = $batch_static->fetch(0, $product_static->id, $obj->batch);
@@ -1039,7 +1039,7 @@ if ($object->id > 0) {
$valuetoshow = $obj->qty_stock;
// For inventory not yet close, we overwrite with the real value in stock now
if ($object->status == $object::STATUS_DRAFT || $object->status == $object::STATUS_VALIDATED) {
- if (!empty($conf->productbatch->enabled) && $product_static->hasbatch()) {
+ if (isModEnabled('productbatch') && $product_static->hasbatch()) {
$valuetoshow = $product_static->stock_warehouse[$obj->fk_warehouse]->detail_batch[$obj->batch]->qty;
} else {
$valuetoshow = $product_static->stock_warehouse[$obj->fk_warehouse]->real;
@@ -1058,9 +1058,9 @@ if ($object->id > 0) {
$hasinput = true;
}
- if (! empty($conf->global->INVENTORY_MANAGE_REAL_PMP)) {
+ if (!empty($conf->global->INVENTORY_MANAGE_REAL_PMP)) {
//PMP Expected
- if (! empty($obj->pmp_expected)) $pmp_expected = $obj->pmp_expected;
+ if (!empty($obj->pmp_expected)) $pmp_expected = $obj->pmp_expected;
else $pmp_expected = $product_static->pmp;
$pmp_valuation = $pmp_expected * $valuetoshow;
print ' ';
@@ -1082,7 +1082,7 @@ if ($object->id > 0) {
print ' ';
- if (! empty($obj->pmp_real)) $pmp_real = $obj->pmp_real;
+ if (!empty($obj->pmp_real)) $pmp_real = $obj->pmp_real;
else $pmp_real = $product_static->pmp;
$pmp_valuation_real = $pmp_real * $qty_view;
print ' ';
@@ -1111,7 +1111,7 @@ if ($object->id > 0) {
} else {
if (!empty($conf->global->INVENTORY_MANAGE_REAL_PMP)) {
//PMP Expected
- if (! empty($obj->pmp_expected)) $pmp_expected = $obj->pmp_expected;
+ if (!empty($obj->pmp_expected)) $pmp_expected = $obj->pmp_expected;
else $pmp_expected = $product_static->pmp;
$pmp_valuation = $pmp_expected * $valuetoshow;
print ' ';
@@ -1127,7 +1127,7 @@ if ($object->id > 0) {
//PMP Real
print ' ';
- if (! empty($obj->pmp_real)) $pmp_real = $obj->pmp_real;
+ if (!empty($obj->pmp_real)) $pmp_real = $obj->pmp_real;
else $pmp_real = $product_static->pmp;
$pmp_valuation_real = $pmp_real * $obj->qty_view;
print price($pmp_real);
@@ -1190,7 +1190,7 @@ if ($object->id > 0) {
print '';
- if (! empty($conf->global->INVENTORY_MANAGE_REAL_PMP)) {
+ if (!empty($conf->global->INVENTORY_MANAGE_REAL_PMP)) {
?>
';
}
+ } else {
+ dol_print_error($db);
}
} else {
print '';
}
+
+ print '';
} else {
- print ''.$langs->trans("TicketPublicMsgViewLogIn").'
';
+ print '';
+
+ print '
'.$langs->trans("TicketPublicMsgViewLogIn").'
';
print '
';
print '
\n";
-}
-print "
";
+ print "";
+}
// End of page
htmlPrintOnlinePaymentFooter($mysoc, $langs, 0, $suffix, $object);
diff --git a/htdocs/public/ticket/view.php b/htdocs/public/ticket/view.php
index 29a850128ed..de76e2f9904 100644
--- a/htdocs/public/ticket/view.php
+++ b/htdocs/public/ticket/view.php
@@ -22,10 +22,6 @@
* \brief Public file to show one ticket
*/
-if (!defined('NOCSRFCHECK')) {
- define('NOCSRFCHECK', '1');
-}
-// Do not check anti CSRF attack test
if (!defined('NOREQUIREMENU')) {
define('NOREQUIREMENU', '1');
}
@@ -61,9 +57,10 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/payments.lib.php';
$langs->loadLangs(array("companies", "other", "ticket"));
// Get parameters
-$track_id = GETPOST('track_id', 'alpha');
-$cancel = GETPOST('cancel', 'alpha');
$action = GETPOST('action', 'aZ09');
+$cancel = GETPOST('cancel', 'aZ09');
+
+$track_id = GETPOST('track_id', 'alpha');
$email = GETPOST('email', 'email');
if (GETPOST('btn_view_ticket')) {
@@ -85,6 +82,8 @@ if (empty($conf->ticket->enabled)) {
*/
if ($cancel) {
+ $backtopage = DOL_URL_ROOT.'/public/ticket/index.php';
+
if (!empty($backtopage)) {
header("Location: ".$backtopage);
exit;
@@ -170,7 +169,7 @@ if ($action == "view_ticket" || $action == "presend" || $action == "close" || $a
if ($object->dao->close($user)) {
setEventMessages($langs->trans('TicketMarkedAsClosed'), null, 'mesgs');
- $url = 'view.php?action=view_ticket&track_id='.GETPOST('track_id', 'alpha').(!empty($entity) && !empty($conf->multicompany->enabled)?'&entity='.$entity:'');
+ $url = 'view.php?action=view_ticket&track_id='.GETPOST('track_id', 'alpha').(!empty($entity) && isModEnabled('multicompany')?'&entity='.$entity:'');
header("Location: ".$url);
exit;
} else {
@@ -234,7 +233,7 @@ if ($action == "view_ticket" || $action == "presend" || $action == "close" || $a
if ($display_ticket) {
// Confirmation close
if ($action == 'close') {
- print $form->formconfirm($_SERVER["PHP_SELF"]."?track_id=".$track_id.(!empty($entity) && !empty($conf->multicompany->enabled)?'&entity='.$entity:''), $langs->trans("CloseATicket"), $langs->trans("ConfirmCloseAticket"), "confirm_public_close", '', '', 1);
+ print $form->formconfirm($_SERVER["PHP_SELF"]."?track_id=".$track_id.(!empty($entity) && isModEnabled('multicompany')?'&entity='.$entity:''), $langs->trans("CloseATicket"), $langs->trans("ConfirmCloseAticket"), "confirm_public_close", '', '', 1);
}
print '