Merge pull request #20307 from bb2a/complete_label_tab_custom_module

NEW - Record count badge in custom modules tab
This commit is contained in:
Laurent Destailleur 2022-03-23 16:40:19 +01:00 committed by GitHub
commit 1f7e1c3c91
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -8754,7 +8754,7 @@ function getLanguageCodeFromCountryCode($countrycode)
*/
function complete_head_from_modules($conf, $langs, $object, &$head, &$h, $type, $mode = 'add')
{
global $hookmanager;
global $hookmanager, $db;
if (isset($conf->modules_parts['tabs'][$type]) && is_array($conf->modules_parts['tabs'][$type])) {
foreach ($conf->modules_parts['tabs'][$type] as $value) {
@ -8775,7 +8775,20 @@ function complete_head_from_modules($conf, $langs, $object, &$head, &$h, $type,
complete_substitutions_array($substitutionarray, $langs, $object, array('needforkey'=>$values[2]));
$label = make_substitutions($reg[1], $substitutionarray);
} else {
$label = $langs->trans($values[2]);
$labeltemp = explode(':', $values[2]);
$label = $langs->trans($labeltemp[0]);
if (!empty($labeltemp[1]) && is_object($object) && !empty($object->id)) {
dol_include_once($labeltemp[2]);
$classtoload = $labeltemp[1];
if (class_exists($classtoload)) {
$obj = new $classtoload($db);
$function = $labeltemp[3];
if ($obj && $function && method_exists($obj, $function)) {
$nbrec = $obj->$function($object->id, $obj);
$label .= '<span class="badge marginleftonlyshort">'.$nbrec.'</span>';
}
}
}
}
$head[$h][0] = dol_buildpath(preg_replace('/__ID__/i', ((is_object($object) && !empty($object->id)) ? $object->id : ''), $values[5]), 1);