call sendRequestWorkflowActionMail() only if next state was reached

This commit is contained in:
Uwe Steinmann 2021-12-02 22:08:50 +01:00
parent 7588fb8317
commit 9d0b961364

View File

@ -77,16 +77,19 @@ if(isset($GLOBALS['SEEDDMS_HOOKS']['triggerWorkflowTransition'])) {
} }
$overallStatus = $version->getStatus(); $overallStatus = $version->getStatus();
if($version->triggerWorkflowTransition($user, $transition, $_POST["comment"])) { if($ret = $version->triggerWorkflowTransition($user, $transition, $_POST["comment"])) {
/* $ret is the next state if it was entered otherwise it is just true */
if ($notifier) { if ($notifier) {
$wkflog = $version->getWorkflowLog($transition); $wkflog = $version->getWorkflowLog($transition);
$notifier->sendTriggerWorkflowTransitionMail($version, $user, $wkflog ? $wkflog[0] : false); $notifier->sendTriggerWorkflowTransitionMail($version, $user, $wkflog ? $wkflog[0] : false);
if(is_object($ret)) {
$notifier->sendRequestWorkflowActionMail($version, $user, $transition); $notifier->sendRequestWorkflowActionMail($version, $user, $transition);
if($overallStatus['status'] != $version->getStatus()['status']) { if($overallStatus['status'] != $version->getStatus()['status']) {
$notifier->sendChangedDocumentStatusMail($version, $user, $overallStatus["status"]); $notifier->sendChangedDocumentStatusMail($version, $user, $overallStatus["status"]);
} }
} }
}
$session->setSplashMsg(array('type'=>'success', 'msg'=>getMLText('splash_trigger_workflow'))); $session->setSplashMsg(array('type'=>'success', 'msg'=>getMLText('splash_trigger_workflow')));