diff --git a/workflow/engine/classes/class.processes.php b/workflow/engine/classes/class.processes.php index d61f53df6..9f85e84be 100755 --- a/workflow/engine/classes/class.processes.php +++ b/workflow/engine/classes/class.processes.php @@ -2913,10 +2913,18 @@ class Processes /** * @param $aTrigger + * @throws Exception */ - public function updateTriggerRows ($aTrigger) + public function updateTriggerRows($aTrigger) { - + foreach ($aTrigger as $key => $row) { + $oTrigger = new Triggers(); + if ($oTrigger->TriggerExists($row['TRI_UID'])) { + $oTrigger->update($row); + } else { + $oTrigger->create($row); + } + } } /** @@ -3914,13 +3922,20 @@ class Processes } /** - * @param $processUid * @param array $arrayData - * for Templates and Public Files + * @throws Exception */ - public function updateFilesManager($processUid, array $arrayData) + public function updateFilesManager(array $arrayData) { + try { + $filesManager = new \ProcessMaker\BusinessModel\FilesManager(); + foreach ($arrayData as $value) { + $filesManager->updateProcessFilesManagerInDb($value); + } + } catch (Exception $e) { + throw $e; + } } /** diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/FilesManager.php b/workflow/engine/src/ProcessMaker/BusinessModel/FilesManager.php index 87b20d3d9..cc2a55273 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/FilesManager.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/FilesManager.php @@ -267,6 +267,30 @@ class FilesManager } } + /** + * @param $aData + * @throws Exception + */ + public function updateProcessFilesManagerInDb($aData) + { + try { + //update database + if ($this->existsProcessFile($aData['prf_uid'])) { + $aData = array_change_key_case($aData, CASE_UPPER); + $oProcessFiles = \ProcessFilesPeer::retrieveByPK($aData['PRF_UID']); + $sDate = date('Y-m-d H:i:s'); + $oProcessFiles->setPrfUpdateDate($sDate); + $oProcessFiles->setProUid($aData['PRO_UID']); + $oProcessFiles->setPrfPath($aData['PRF_PATH']); + $oProcessFiles->save(); + } else { + $this->addProcessFilesManagerInDb($aData); + } + } catch (Exception $e) { + throw $e; + } + } + public function existsProcessFile($prfUid) { try {