SugarCRM Adding Additional Details Info icon in Detail View
sugarcrm
Solution
1) Create a file in your metadata folder `{MODULENAME}/metadata/additionalDetails.php`. You have to find correct place of your module.
- custom/modules/MODULENAME/metadata/
- custom/modulebuilder/packages/PACKAGENAME/modules/MODULENAME/metadata/
- etc...
2) and create a function something like this. replace `{MODULENAME}` and `{MODULE_BEAN_NAME}` with actual module name in all places.
function additionalDetails{MODULE_BEAN_NAME}($fields) {
static $mod_strings;
if(empty($mod_strings)) {
global $current_language;
$mod_strings = return_module_language($current_language, '{MODULENAME}');
}
$overlib_string = '';
if(!empty($fields['NAME']))
$overlib_string .= '<b>'. $mod_strings['LBL_NAME'] . '</b> ' . $fields['NAME'] . ' <br>';
//Add whatever info you want to show up to $overlib_string
$editLink = "index.php?action=EditView&module={MODULENAME}&record={$fields['ID']}";
$viewLink = "index.php?action=DetailView&module={MODULENAME}&record={$fields['ID']}";
return array(
'fieldToAddTo' => 'NAME',
'string' => $overlib_string,
'editLink' => $editLink,
'viewLink' => $viewLink
);
}
you have to create `$overlib_string` with your data (in html). If you need edit and view links on your modal box you have to return them as well. `$fields` is an associative array that contains db record.
3) The `i` icon should appear on the module list view.
Problem
in SugarCRM some modules like "Calls" has an "i" (Additional Details) icon in List view which shows some additional details about that record. I want to display same kind for other modules like customer visits with some custom details of the records. Any hints or guidance will be helpful.