Merge pull request #11568 from joseplluis/patch-7

FIX: move doActions hook before standard actions
This commit is contained in:
Laurent Destailleur 2019-07-30 21:08:12 +02:00 committed by GitHub
commit 4bda18fd4d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -81,8 +81,14 @@ if ($socid > 0) // Special for thirdparty
* Actions * Actions
*/ */
if ($action == 'add_element_resource' && ! $cancel) $parameters = array('resource_id' => $resource_id);
$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 (empty($reshook))
{ {
if ($action == 'add_element_resource' && ! $cancel)
{
$res = 0; $res = 0;
if (! ($resource_id > 0)) if (! ($resource_id > 0))
{ {
@ -106,11 +112,11 @@ if ($action == 'add_element_resource' && ! $cancel)
{ {
setEventMessages($objstat->error, $objstat->errors, 'errors'); setEventMessages($objstat->error, $objstat->errors, 'errors');
} }
} }
// Update ressource // Update ressource
if ($action == 'update_linked_resource' && $user->rights->resource->write && !GETPOST('cancel', 'alpha') ) if ($action == 'update_linked_resource' && $user->rights->resource->write && !GETPOST('cancel', 'alpha') )
{ {
$res = $object->fetch_element_resource($lineid); $res = $object->fetch_element_resource($lineid);
if($res) if($res)
{ {
@ -130,11 +136,11 @@ if ($action == 'update_linked_resource' && $user->rights->resource->write && !GE
setEventMessages($object->error, $object->errors, 'errors'); setEventMessages($object->error, $object->errors, 'errors');
} }
} }
} }
// Delete a resource linked to an element // Delete a resource linked to an element
if ($action == 'confirm_delete_linked_resource' && $user->rights->resource->delete && $confirm === 'yes') if ($action == 'confirm_delete_linked_resource' && $user->rights->resource->delete && $confirm === 'yes')
{ {
$result = $object->delete_resource($lineid, $element); $result = $object->delete_resource($lineid, $element);
if ($result >= 0) if ($result >= 0)
@ -147,13 +153,9 @@ if ($action == 'confirm_delete_linked_resource' && $user->rights->resource->dele
{ {
setEventMessages($object->error, $object->errors, 'errors'); setEventMessages($object->error, $object->errors, 'errors');
} }
}
} }
$parameters=array('resource_id'=>$resource_id);
$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');
$parameters=array('resource_id'=>$resource_id); $parameters=array('resource_id'=>$resource_id);
$reshook=$hookmanager->executeHooks('getElementResources', $parameters, $object, $action); // Note that $action and $object may have been modified by some hooks $reshook=$hookmanager->executeHooks('getElementResources', $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 ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');