Merge pull request #20449 from atm-greg/FIX_develop_missing_hooks_for_dictionaryadmin

add more specific context and doAction hook
This commit is contained in:
Laurent Destailleur 2022-03-24 12:08:37 +01:00 committed by GitHub
commit 35822370ec
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -94,7 +94,7 @@ if (!GETPOSTISSET('search_country_id') && $search_country_id == '' && ($id == 2
$search_code = GETPOST('search_code', 'alpha'); $search_code = GETPOST('search_code', 'alpha');
// Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context // Initialize technical object to manage hooks of page. Note that conf->hooks_modules contains array of hook context
$hookmanager->initHooks(array('admin')); $hookmanager->initHooks(array('admin', 'dictionaryadmin'));
// This page is a generic page to edit dictionaries // This page is a generic page to edit dictionaries
// Put here declaration of dictionaries properties // Put here declaration of dictionaries properties
@ -694,11 +694,36 @@ if ($id == 10) {
* Actions * Actions
*/ */
$parameters = array(
'id' =>$id,
'rowid' =>$rowid,
'code' =>$code,
'confirm' =>$confirm,
'entity' =>$entity,
'taborder' =>$taborder,
'tabname' =>$tabname,
'tablib' =>$tablib,
'tabsql' =>$tabsql,
'tabsqlsort' =>$tabsqlsort,
'tabfield' =>$tabfield,
'tabfieldvalue' =>$tabfieldvalue,
'tabfieldinsert'=>$tabfieldinsert,
'tabrowid' =>$tabrowid,
'tabcond' =>$tabcond,
'tabhelp' =>$tabhelp,
'tabcomplete' =>$tabcomplete
);
$reshook = $hookmanager->executeHooks('doActions', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks
if ($reshook < 0) {
setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
}
if (GETPOST('button_removefilter', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter_x', 'alpha')) { if (GETPOST('button_removefilter', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter_x', 'alpha')) {
$search_country_id = ''; $search_country_id = '';
$search_code = ''; $search_code = '';
} }
if (empty($reshook)) {
// Actions add or modify an entry into a dictionary // Actions add or modify an entry into a dictionary
if (GETPOST('actionadd') || GETPOST('actionmodify')) { if (GETPOST('actionadd') || GETPOST('actionmodify')) {
$listfield = explode(',', str_replace(' ', '', $tabfield[$id])); $listfield = explode(',', str_replace(' ', '', $tabfield[$id]));
@ -1132,7 +1157,7 @@ if ($action == 'disable_eec') {
dol_print_error($db); dol_print_error($db);
} }
} }
}
/* /*
* View * View
*/ */