From d21f0c079f4973d16c240e90f84266be99b93f1c Mon Sep 17 00:00:00 2001 From: girish Date: Fri, 7 Jan 2011 13:21:16 +0000 Subject: [PATCH] Worked on saving Gateway in old processmap --- workflow/engine/classes/class.processMap.php | 3 ++- workflow/engine/methods/bpmn/saveProcess.php | 3 ++- workflow/engine/methods/processes/processes_Ajax.php | 1 + 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/workflow/engine/classes/class.processMap.php b/workflow/engine/classes/class.processMap.php index ef8010c8a..4d56a83fc 100644 --- a/workflow/engine/classes/class.processMap.php +++ b/workflow/engine/classes/class.processMap.php @@ -2422,7 +2422,7 @@ class processMap { $oGateway->remove($sGatewayUID); } //Getting Gateway UID after saving gateway - if($sType != 'SEQUENTIAL' && $sGatewayUID == '') + if($sType != 'SEQUENTIAL' && $sGatewayUID == '' && $sDelete == '1') { $oProcessMap = new processMap(); $sGatewayUID = $oProcessMap->saveNewGateway($sProcessUID, $sTaskUID); @@ -2448,6 +2448,7 @@ class processMap { $oTask = new Task(); $aTaskDetails = $oTask->load($sTaskUID); $aFields ['PRO_UID'] = $sProcessUID; + $aFields ['TAS_UID'] = $sTaskUID; $aFields ['GAT_X'] = $aTaskDetails['TAS_POSX'] + $aTaskDetails['TAS_WIDTH']/2; $aFields ['GAT_Y'] = $aTaskDetails['TAS_POSY'] + $aTaskDetails['TAS_HEIGHT'] + 10; diff --git a/workflow/engine/methods/bpmn/saveProcess.php b/workflow/engine/methods/bpmn/saveProcess.php index a640bd868..a85441e34 100755 --- a/workflow/engine/methods/bpmn/saveProcess.php +++ b/workflow/engine/methods/bpmn/saveProcess.php @@ -59,7 +59,7 @@ try{ $aAnnotations = json_decode ( $_POST['annotations'] ); $aSubprocess = json_decode ( $_POST['subprocess'] ); $fields = $oProcess->serializeProcess($idProcess); -//$oData = unserialize($fields); + $oData = unserialize($fields); $aRoutes = $oProcess->super_unique($aRoutes); $sOutput = ''; $subProcesses = array(); @@ -122,6 +122,7 @@ try{ $routesArray = $oProcess->createGateways($routeTransitions,$endArray,$oData->routes,$numberRoutes,$idProcess,$taskHidden); $oData->routes = $routesArray; } + $oProcess->updateProcessFromDataXpdl($oData,$oData->tasks); } catch (Exception $oException) { diff --git a/workflow/engine/methods/processes/processes_Ajax.php b/workflow/engine/methods/processes/processes_Ajax.php index 50fa368e5..fab59132f 100644 --- a/workflow/engine/methods/processes/processes_Ajax.php +++ b/workflow/engine/methods/processes/processes_Ajax.php @@ -275,6 +275,7 @@ try { G::LoadClass('tasks'); $oTasks = new Tasks(); $oTasks->deleteAllRoutesOfTask($oData->pro_uid, $oData->tas_uid); + $oTasks->deleteAllGatewayOfTask($oData->pro_uid, $oData->tas_uid); } $oProcessMap->saveNewPattern($oData->pro_uid, $oData->tas_uid, $oData->next_task, $sType, $oData->delete); break;