set splash messages, inform users only once

This commit is contained in:
Uwe Steinmann 2018-11-16 11:35:56 +01:00
parent 2d8e8a606c
commit e6cc38cb22

View File

@ -116,10 +116,14 @@ if($version->triggerWorkflowTransition($user, $transition, $_POST["comment"])) {
$params['http_root'] = $settings->_httpRoot; $params['http_root'] = $settings->_httpRoot;
$params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID(); $params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
$usersinformed = array();
foreach($workflow->getNextTransitions($transition->getNextState()) as $ntransition) { foreach($workflow->getNextTransitions($transition->getNextState()) as $ntransition) {
foreach($ntransition->getUsers() as $tuser) { foreach($ntransition->getUsers() as $tuser) {
if(!in_array($tuser->getUser()->getID(), $usersinformed)) {
$usersinformed[] = $tuser->getUser()->getID();
$notifier->toIndividual($user, $tuser->getUser(), $subject, $message, $params); $notifier->toIndividual($user, $tuser->getUser(), $subject, $message, $params);
} }
}
foreach($ntransition->getGroups() as $tuser) { foreach($ntransition->getGroups() as $tuser) {
$notifier->toGroup($user, $tuser->getGroup(), $subject, $message, $params); $notifier->toGroup($user, $tuser->getGroup(), $subject, $message, $params);
} }
@ -127,6 +131,8 @@ if($version->triggerWorkflowTransition($user, $transition, $_POST["comment"])) {
} }
} }
$session->setSplashMsg(array('type'=>'success', 'msg'=>getMLText('splash_trigger_workflow')));
if(isset($GLOBALS['SEEDDMS_HOOKS']['triggerWorkflowTransition'])) { if(isset($GLOBALS['SEEDDMS_HOOKS']['triggerWorkflowTransition'])) {
foreach($GLOBALS['SEEDDMS_HOOKS']['triggerWorkflowTransition'] as $hookObj) { foreach($GLOBALS['SEEDDMS_HOOKS']['triggerWorkflowTransition'] as $hookObj) {
if (method_exists($hookObj, 'postTriggerWorkflowTransition')) { if (method_exists($hookObj, 'postTriggerWorkflowTransition')) {
@ -134,6 +140,8 @@ if($version->triggerWorkflowTransition($user, $transition, $_POST["comment"])) {
} }
} }
} }
} else {
$session->setSplashMsg(array('type'=>'error', 'msg'=>getMLText('error_trigger_workflow')));
} }
add_log_line("?documentid=".$documentid."&version".$version_num); add_log_line("?documentid=".$documentid."&version".$version_num);