diff --git a/workflow/engine/classes/class.derivation.php b/workflow/engine/classes/class.derivation.php index 34cf240a7..5acc06749 100644 --- a/workflow/engine/classes/class.derivation.php +++ b/workflow/engine/classes/class.derivation.php @@ -269,7 +269,7 @@ class Derivation $arrayNextTaskData = $value; $this->node[$value['TAS_UID']]['out'][$value['ROU_NEXT_TASK']] = $value['ROU_TYPE']; if ($arrayNextTaskData["NEXT_TASK"]["TAS_UID"] != "-1" && - preg_match("/^(?:" . $this->regexpTaskTypeToInclude . ")$/", $arrayNextTaskData["NEXT_TASK"]["TAS_TYPE"]) + preg_match("/^(?:GATEWAYTOGATEWAY)$/", $arrayNextTaskData["NEXT_TASK"]["TAS_TYPE"]) ) { $arrayAux = $this->prepareInformation($arrayData, $arrayNextTaskData["NEXT_TASK"]["TAS_UID"]); $this->node[$value['ROU_NEXT_TASK']]['in'][$value['TAS_UID']] = $value['ROU_TYPE']; diff --git a/workflow/engine/methods/cases/cases_Step.php b/workflow/engine/methods/cases/cases_Step.php index 24f085044..461f014e3 100644 --- a/workflow/engine/methods/cases/cases_Step.php +++ b/workflow/engine/methods/cases/cases_Step.php @@ -1112,6 +1112,20 @@ try { $aFields["TASK"][$sKey]["NEXT_TASK"]["TAS_TITLE"] = G::LoadTranslation("ID_ROUTE_TO_TASK_INTERMEDIATE_CATCH_MESSAGE_EVENT"); } + + //in the case of an end event (message or mail) we need to show the end of process data in the + //routing screen. + if ( array_key_exists("TASK", $aFields) + && array_key_exists("1", $aFields["TASK"]) + && array_key_exists("NEXT_TASK", $aFields["TASK"]["1"]) + && array_key_exists("TAS_TYPE", $aFields["TASK"]["1"]["NEXT_TASK"]) + && preg_match("/^(?:END-MESSAGE-EVENT|END-EMAIL-EVENT)$/", $aFields["TASK"]["1"]["NEXT_TASK"]["TAS_TYPE"]) + ) { + $aFields["TASK"]["1"]["NEXT_TASK"]["TAS_TITLE"] = G::LoadTranslation( 'ID_END_OF_PROCESS' ); + $aFields["TASK"]["1"]["NEXT_TASK"]["USR_UID"] = " "; + $aFields["TASK"]["1"]["NEXT_TASK"]["USR_HIDDEN_FIELD"] = $_SESSION["USR_FULLNAME"]; + } + $G_PUBLISH->AddContent( 'smarty', $tplFile, '', '', $aFields ); /* if (isset( $aFields['TASK'][1]['NEXT_TASK']['USER_ASSIGNED'])){