Clean code

This commit is contained in:
Laurent Destailleur
2021-05-06 18:06:19 +02:00
parent 18d21244c3
commit 6b825cbc3b
2 changed files with 49 additions and 16 deletions

View File

@@ -517,7 +517,7 @@ $tabcond[39] = (!empty($conf->societe->enabled) && empty($conf->global->SOCIETE_
$tabcond[40] = (!empty($conf->societe->enabled) && !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[41] = !empty($conf->intracommreport->enabled);
$tabcond[42] = !empty($conf->product->enabled); $tabcond[42] = !empty($conf->product->enabled);
$tabcond[43] = !empty($conf->product->enabled && !empty($conf->productbatch->enabled)); $tabcond[43] = !empty($conf->product->enabled) && !empty($conf->productbatch->enabled) && $conf->global->MAIN_FEATURES_LEVEL >= 2;
// List of help for fields // List of help for fields
$tabhelp = array(); $tabhelp = array();
@@ -611,9 +611,11 @@ $tabfieldcheck[41] = array();
$tabfieldcheck[42] = array(); $tabfieldcheck[42] = array();
$tabfieldcheck[43] = array(); $tabfieldcheck[43] = array();
// Complete all arrays with entries found into modules // Table to store complete informations (will replace all other table). Key is table name.
complete_dictionary_with_modules($taborder, $tabname, $tablib, $tabsql, $tabsqlsort, $tabfield, $tabfieldvalue, $tabfieldinsert, $tabrowid, $tabcond, $tabhelp, $tabfieldcheck); $tabcomplete = array();
// Complete all arrays with entries found into modules
complete_dictionary_with_modules($taborder, $tabname, $tablib, $tabsql, $tabsqlsort, $tabfield, $tabfieldvalue, $tabfieldinsert, $tabrowid, $tabcond, $tabhelp, $tabfieldcheck, $tabcomplete);
// Defaut sortorder // Defaut sortorder
if (empty($sortfield)) { if (empty($sortfield)) {
@@ -2156,7 +2158,13 @@ if ($id) {
$value = $tabname[$i]; $value = $tabname[$i];
print '<tr class="oddeven"><td width="50%">'; print '<tr class="oddeven"><td width="50%">';
if (!empty($tabcond[$i])) { if (!empty($tabcond[$i])) {
print '<a href="'.$_SERVER["PHP_SELF"].'?id='.$i.'">'.$langs->trans($tablib[$i]).'</a>'; $tabnamenoprefix = preg_replace('/'.MAIN_DB_PREFIX.'/', '', $tabname[$i]);
print '<a href="'.$_SERVER["PHP_SELF"].'?id='.$i.'">';
if (!empty($tabcomplete[$tabnamenoprefix]['picto'])) {
print img_picto('', $tabcomplete[$tabnamenoprefix]['picto'], 'class="pictofixedwidth paddingrightonly"');
}
print $langs->trans($tablib[$i]);
print '</a>';
} else { } else {
print $langs->trans($tablib[$i]); print $langs->trans($tablib[$i]);
} }

View File

@@ -1190,9 +1190,10 @@ function unActivateModule($value, $requiredby = 1)
* @param array $tabcond Tabcond * @param array $tabcond Tabcond
* @param array $tabhelp Tabhelp * @param array $tabhelp Tabhelp
* @param array $tabfieldcheck Tabfieldcheck * @param array $tabfieldcheck Tabfieldcheck
* @param array $tabcomplete Tab complete (will replace all other in future). Key is table name.
* @return int 1 * @return int 1
*/ */
function complete_dictionary_with_modules(&$taborder, &$tabname, &$tablib, &$tabsql, &$tabsqlsort, &$tabfield, &$tabfieldvalue, &$tabfieldinsert, &$tabrowid, &$tabcond, &$tabhelp, &$tabfieldcheck) function complete_dictionary_with_modules(&$taborder, &$tabname, &$tablib, &$tabsql, &$tabsqlsort, &$tabfield, &$tabfieldvalue, &$tabfieldinsert, &$tabrowid, &$tabcond, &$tabhelp, &$tabfieldcheck, &$tabcomplete)
{ {
global $db, $modules, $conf, $langs; global $db, $modules, $conf, $langs;
@@ -1255,53 +1256,77 @@ function complete_dictionary_with_modules(&$taborder, &$tabname, &$tablib, &$tab
if (!empty($objMod->dictionaries)) { if (!empty($objMod->dictionaries)) {
//var_dump($objMod->dictionaries['tabname']); //var_dump($objMod->dictionaries['tabname']);
$nbtabname = $nbtablib = $nbtabsql = $nbtabsqlsort = $nbtabfield = $nbtabfieldvalue = $nbtabfieldinsert = $nbtabrowid = $nbtabcond = $nbtabfieldcheck = $nbtabhelp = 0; $nbtabname = $nbtablib = $nbtabsql = $nbtabsqlsort = $nbtabfield = $nbtabfieldvalue = $nbtabfieldinsert = $nbtabrowid = $nbtabcond = $nbtabfieldcheck = $nbtabhelp = 0;
foreach ($objMod->dictionaries['tabname'] as $val) { $tabnamerelwithkey = array();
foreach ($objMod->dictionaries['tabname'] as $key => $val) {
$tmptablename = preg_replace('/'.MAIN_DB_PREFIX.'/', '', $val);
$nbtabname++; $nbtabname++;
$taborder[] = max($taborder) + 1; $taborder[] = max($taborder) + 1;
$tabname[] = $val; $tabname[] = $val;
$tabnamerelwithkey[$key] = $val;
$tabcomplete[$tmptablename]['picto'] = $objMod->picto;
} // Position } // Position
foreach ($objMod->dictionaries['tablib'] as $val) { foreach ($objMod->dictionaries['tablib'] as $key => $val) {
$tmptablename = preg_replace('/'.MAIN_DB_PREFIX.'/', '', $tabnamerelwithkey[$key]);
$nbtablib++; $nbtablib++;
$tablib[] = $val; $tablib[] = $val;
$tabcomplete[$tmptablename]['lib'] = $val;
} }
foreach ($objMod->dictionaries['tabsql'] as $val) { foreach ($objMod->dictionaries['tabsql'] as $key => $val) {
$tmptablename = preg_replace('/'.MAIN_DB_PREFIX.'/', '', $tabnamerelwithkey[$key]);
$nbtabsql++; $nbtabsql++;
$tabsql[] = $val; $tabsql[] = $val;
$tabcomplete[$tmptablename]['sql'] = $val;
} }
foreach ($objMod->dictionaries['tabsqlsort'] as $val) { foreach ($objMod->dictionaries['tabsqlsort'] as $key => $val) {
$tmptablename = preg_replace('/'.MAIN_DB_PREFIX.'/', '', $tabnamerelwithkey[$key]);
$nbtabsqlsort++; $nbtabsqlsort++;
$tabsqlsort[] = $val; $tabsqlsort[] = $val;
$tabcomplete[$tmptablename]['sqlsort'] = $val;
} }
foreach ($objMod->dictionaries['tabfield'] as $val) { foreach ($objMod->dictionaries['tabfield'] as $key => $val) {
$tmptablename = preg_replace('/'.MAIN_DB_PREFIX.'/', '', $tabnamerelwithkey[$key]);
$nbtabfield++; $nbtabfield++;
$tabfield[] = $val; $tabfield[] = $val;
$tabcomplete[$tmptablename]['field'] = $val;
} }
foreach ($objMod->dictionaries['tabfieldvalue'] as $val) { foreach ($objMod->dictionaries['tabfieldvalue'] as $key => $val) {
$tmptablename = preg_replace('/'.MAIN_DB_PREFIX.'/', '', $tabnamerelwithkey[$key]);
$nbtabfieldvalue++; $nbtabfieldvalue++;
$tabfieldvalue[] = $val; $tabfieldvalue[] = $val;
$tabcomplete[$tmptablename]['value'] = $val;
} }
foreach ($objMod->dictionaries['tabfieldinsert'] as $val) { foreach ($objMod->dictionaries['tabfieldinsert'] as $key => $val) {
$tmptablename = preg_replace('/'.MAIN_DB_PREFIX.'/', '', $tabnamerelwithkey[$key]);
$nbtabfieldinsert++; $nbtabfieldinsert++;
$tabfieldinsert[] = $val; $tabfieldinsert[] = $val;
$tabcomplete[$tmptablename]['fieldinsert'] = $val;
} }
foreach ($objMod->dictionaries['tabrowid'] as $val) { foreach ($objMod->dictionaries['tabrowid'] as $key => $val) {
$tmptablename = preg_replace('/'.MAIN_DB_PREFIX.'/', '', $tabnamerelwithkey[$key]);
$nbtabrowid++; $nbtabrowid++;
$tabrowid[] = $val; $tabrowid[] = $val;
$tabcomplete[$tmptablename]['rowid'] = $val;
} }
foreach ($objMod->dictionaries['tabcond'] as $val) { foreach ($objMod->dictionaries['tabcond'] as $key => $val) {
$tmptablename = preg_replace('/'.MAIN_DB_PREFIX.'/', '', $tabnamerelwithkey[$key]);
$nbtabcond++; $nbtabcond++;
$tabcond[] = $val; $tabcond[] = $val;
$tabcomplete[$tmptablename]['rowid'] = $val;
} }
if (!empty($objMod->dictionaries['tabhelp'])) { if (!empty($objMod->dictionaries['tabhelp'])) {
foreach ($objMod->dictionaries['tabhelp'] as $val) { foreach ($objMod->dictionaries['tabhelp'] as $key => $val) {
$tmptablename = preg_replace('/'.MAIN_DB_PREFIX.'/', '', $tabnamerelwithkey[$key]);
$nbtabhelp++; $nbtabhelp++;
$tabhelp[] = $val; $tabhelp[] = $val;
$tabcomplete[$tmptablename]['help'] = $val;
} }
} }
if (!empty($objMod->dictionaries['tabfieldcheck'])) { if (!empty($objMod->dictionaries['tabfieldcheck'])) {
foreach ($objMod->dictionaries['tabfieldcheck'] as $val) { foreach ($objMod->dictionaries['tabfieldcheck'] as $key => $val) {
$tmptablename = preg_replace('/'.MAIN_DB_PREFIX.'/', '', $tabnamerelwithkey[$key]);
$nbtabfieldcheck++; $nbtabfieldcheck++;
$tabfieldcheck[] = $val; $tabfieldcheck[] = $val;
$tabcomplete[$tmptablename]['fieldcheck'] = $val;
} }
} }