diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/CaseScheduler.php b/workflow/engine/src/ProcessMaker/BusinessModel/CaseScheduler.php index 8c0abd98f..a6bfff44d 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/CaseScheduler.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/CaseScheduler.php @@ -310,7 +310,6 @@ class CaseScheduler $sDaysPerformTask = ''; $sWeeks = ''; $sMonths = ''; - $sMonths = ''; $sStartDay = ''; $nSW = 0; $aData['SCH_DAYS_PERFORM_TASK'] = ''; @@ -609,7 +608,6 @@ class CaseScheduler $sDaysPerformTask = ''; $sWeeks = ''; $sMonths = ''; - $sMonths = ''; $sStartDay = ''; $nSW = 0; $aData['SCH_DAYS_PERFORM_TASK'] = ''; diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Cases.php b/workflow/engine/src/ProcessMaker/BusinessModel/Cases.php index d4d3adb5c..2a04fbb03 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Cases.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Cases.php @@ -276,7 +276,7 @@ class Cases //Complete empty values $applicationUid = $data["APP_UID"]; //APP_UID //Get all the indexes returned by Solr as columns - for($i = count($columsToInclude); $i <= count($data) - 1; $i++) { + for ($i = count($columsToInclude); $i <= count($data) - 1; $i++) { if (is_array($data[$columsToIncludeFinal[$i]])) { foreach ($data[$columsToIncludeFinal[$i]] as $delIndex) { $delIndexes[] = $delIndex; @@ -305,8 +305,7 @@ class Cases foreach ($indexes as $index) { $row = $aaappsDBData[$index]; } - if(!isset($row)) - { + if (!isset($row)) { continue; } \G::LoadClass('wsBase'); @@ -501,7 +500,7 @@ class Cases $oDataset->next(); } //Return - if(empty($result)) { + if (empty($result)) { throw (new \Exception('Incorrect or unavailable information about this case: ' .$applicationUid)); } else { return $result; diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Cases/InputDocument.php b/workflow/engine/src/ProcessMaker/BusinessModel/Cases/InputDocument.php index 7cb818936..f2c55a450 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Cases/InputDocument.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Cases/InputDocument.php @@ -183,37 +183,35 @@ class InputDocument //Triggers $arrayTrigger = $case->loadTriggers($taskUid, "INPUT_DOCUMENT", $inputDocumentUid, "AFTER"); //Add Input Document - if (!$_FILES["form"]["error"]) { + $_FILES["form"]["name"] = ''; + $_FILES["form"]["error"] = ''; + $_FILES["form"]["tmp_name"] = ''; + if ($_FILES["form"]["error"] == '') { $_FILES["form"]["error"] = 0; } if (isset($_FILES) && isset($_FILES["form"]) && count($_FILES["form"]) > 0) { - $appDocUid = $case->addInputDocument( - $inputDocumentUid, - $appDocUid, - $docVersion, - $appDocType, - $appDocComment, - '', - $applicationUid, - $delIndex, - $taskUid, - $userUid, - "xmlform", - $_FILES["form"]["name"], - $_FILES["form"]["error"], - $_FILES["form"]["tmp_name"] - ); - } - //Trigger - Execute after - Start - $arrayField["APP_DATA"] = $case->executeTriggers( - $taskUid, - "INPUT_DOCUMENT", - $inputDocumentUid, - "AFTER", - $arrayField["APP_DATA"] - ); - //Trigger - Execute after - End - + $appDocUid = $case->addInputDocument($inputDocumentUid, + $appDocUid, + $docVersion, + $appDocType, + $appDocComment, + '', + $applicationUid, + $delIndex, + $taskUid, + $userUid, + "xmlform", + $_FILES["form"]["name"], + $_FILES["form"]["error"], + $_FILES["form"]["tmp_name"]); + } + //Trigger - Execute after - Start + $arrayField["APP_DATA"] = $case->executeTriggers ($taskUid, + "INPUT_DOCUMENT", + $inputDocumentUid, + "AFTER", + $arrayField["APP_DATA"]); + //Trigger - Execute after - End //Save data $arrayData = array(); $arrayData["APP_NUMBER"] = $arrayField["APP_NUMBER"]; diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Cases/OutputDocument.php b/workflow/engine/src/ProcessMaker/BusinessModel/Cases/OutputDocument.php index 94d472c7d..8237f74dd 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Cases/OutputDocument.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Cases/OutputDocument.php @@ -56,10 +56,6 @@ class OutputDocument public function getCasesOutputDocument($applicationUid, $userUid, $applicationDocumentUid) { try { - $oAppDocument = \AppDocumentPeer::retrieveByPK( $applicationDocumentUid, 1 ); - if (is_null( $oAppDocument ) || $oAppDocument->getAppDocStatus() == 'DELETED') { - throw (new \Exception('This output document with id: '.$applicationDocumentUid.' doesn\'t exist!')); - } $sApplicationUID = $applicationUid; $sUserUID = $userUid; \G::LoadClass('case'); @@ -84,6 +80,10 @@ class OutputDocument $docrow['app_doc_index'] = $row['APP_DOC_INDEX']; $docrow['app_doc_link'] = 'cases/' . $row['DOWNLOAD_LINK']; if ($docrow['app_doc_uid'] == $applicationDocumentUid) { + $oAppDocument = \AppDocumentPeer::retrieveByPK( $applicationDocumentUid, $row['DOC_VERSION'] ); + if (is_null( $oAppDocument )) { + throw (new \Exception('This output document with id: '.$applicationDocumentUid.' doesn\'t exist!')); + } $result = $docrow; } } @@ -269,6 +269,11 @@ class OutputDocument } } $g->sessionVarRestore(); + $oAppDocument = \AppDocumentPeer::retrieveByPK( $aFields['APP_DOC_UID'], $lastDocVersion); + if ($oAppDocument->getAppDocStatus() == 'DELETED') { + $oAppDocument->setAppDocStatus('ACTIVE'); + $oAppDocument->save(); + } $response = $this->getCasesOutputDocument($applicationUid, $userUid, $aFields['APP_DOC_UID']); return $response; } catch (\Exception $e) { @@ -628,3 +633,4 @@ class OutputDocument } } } + diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/OutputDocument.php b/workflow/engine/src/ProcessMaker/BusinessModel/OutputDocument.php index 6c66ecf53..5c08340a9 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/OutputDocument.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/OutputDocument.php @@ -267,7 +267,7 @@ class OutputDocument $aData['out_doc_pdf_security_open_password'] = \G::encrypt( $aData['out_doc_pdf_security_open_password'], $outDocUid ); $aData['out_doc_pdf_security_owner_password'] = \G::encrypt( $aData['out_doc_pdf_security_owner_password'], $outDocUid ); } - $this->updateOutputDocument($sProcessUID, $aData, $outDocUid, 1); + $this->updateOutputDocument($sProcessUID, $aData, 1, $outDocUid); //Return unset($aData["PRO_UID"]); $aData = array_change_key_case($aData, CASE_LOWER); @@ -287,7 +287,7 @@ class OutputDocument * * @access public */ - public function updateOutputDocument($sProcessUID, $aData, $sOutputDocumentUID = '', $sFlag) + public function updateOutputDocument($sProcessUID, $aData, $sFlag, $sOutputDocumentUID = '') { $oConnection = \Propel::getConnection(\OutputDocumentPeer::DATABASE_NAME); $pemission = $aData['out_doc_pdf_security_permissions']; @@ -309,7 +309,7 @@ class OutputDocument if (isset($aData['OUT_DOC_TITLE'])) { $uid = $this->titleExists($sProcessUID, $aData["OUT_DOC_TITLE"]); if ($uid != '') { - if ($uid != $sOutputDocumentUID && $sFlag == 0) { + if ($uid != $sOutputDocumentUID && $sFlag == 0) { throw (new \Exception(\G::LoadTranslation("ID_OUTPUT_NOT_SAVE"))); } } diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/ProcessSupervisor.php b/workflow/engine/src/ProcessMaker/BusinessModel/ProcessSupervisor.php index 55ec244f9..a7d0bd9ed 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/ProcessSupervisor.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/ProcessSupervisor.php @@ -1031,3 +1031,4 @@ class ProcessSupervisor $oCriteria->save(); } } + diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/ProjectUser.php b/workflow/engine/src/ProcessMaker/BusinessModel/ProjectUser.php index 964c5cb34..0c1880ca0 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/ProjectUser.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/ProjectUser.php @@ -209,7 +209,7 @@ class ProjectUser * * @access public */ - public function postProjectWsUserCanStartTask($sProcessUID, $sActivityUID, $oData) + public function projectWsUserCanStartTask($sProcessUID, $sActivityUID, $oData) { try { $oProcess = \ProcessPeer::retrieveByPK( $sProcessUID ); diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/User.php b/workflow/engine/src/ProcessMaker/BusinessModel/User.php index dc5090d87..266fde82d 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/User.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/User.php @@ -207,7 +207,6 @@ class User public function create($arrayData) { try { - global $RBAC; require_once (PATH_TRUNK . "workflow" . PATH_SEP . "engine" . PATH_SEP . "classes" . PATH_SEP . "model" . PATH_SEP . "Users.php"); $arrayData = array_change_key_case($arrayData, CASE_UPPER); $form = $arrayData; diff --git a/workflow/engine/src/ProcessMaker/Services/Api/Cases/InputDocument.php b/workflow/engine/src/ProcessMaker/Services/Api/Cases/InputDocument.php index 642cf5a4d..dd54979c2 100644 --- a/workflow/engine/src/ProcessMaker/Services/Api/Cases/InputDocument.php +++ b/workflow/engine/src/ProcessMaker/Services/Api/Cases/InputDocument.php @@ -81,3 +81,4 @@ class InputDocument extends Api } } } + diff --git a/workflow/engine/src/ProcessMaker/Services/Api/Cases/OutputDocument.php b/workflow/engine/src/ProcessMaker/Services/Api/Cases/OutputDocument.php index 20d2d4fb3..8ad620f2a 100644 --- a/workflow/engine/src/ProcessMaker/Services/Api/Cases/OutputDocument.php +++ b/workflow/engine/src/ProcessMaker/Services/Api/Cases/OutputDocument.php @@ -78,4 +78,4 @@ class OutputDocument extends Api throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage())); } } -} \ No newline at end of file +} diff --git a/workflow/engine/src/ProcessMaker/Services/Api/Project/OutputDocuments.php b/workflow/engine/src/ProcessMaker/Services/Api/Project/OutputDocuments.php index 524130d9a..708fb8718 100644 --- a/workflow/engine/src/ProcessMaker/Services/Api/Project/OutputDocuments.php +++ b/workflow/engine/src/ProcessMaker/Services/Api/Project/OutputDocuments.php @@ -86,7 +86,7 @@ class OutputDocuments extends Api try { $request_data = (array)($request_data); $outputDocument = new \ProcessMaker\BusinessModel\OutputDocument(); - $arrayData = $outputDocument->updateOutputDocument($prjUid, $request_data, $outputDocumentUid, 0); + $outputDocument->updateOutputDocument($prjUid, $request_data, 0, $outputDocumentUid); } catch (\Exception $e) { //Response throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()); diff --git a/workflow/engine/src/ProcessMaker/Services/Api/Project/ProjectUsers.php b/workflow/engine/src/ProcessMaker/Services/Api/Project/ProjectUsers.php index 8cbccf45c..6d048cdcd 100644 --- a/workflow/engine/src/ProcessMaker/Services/Api/Project/ProjectUsers.php +++ b/workflow/engine/src/ProcessMaker/Services/Api/Project/ProjectUsers.php @@ -81,7 +81,7 @@ class ProjectUsers extends Api try { $request_data = (array)($request_data); $user = new \ProcessMaker\BusinessModel\ProjectUser(); - $objectData = $user->postProjectWsUserCanStartTask($prj_uid, $act_uid, $request_data); + $objectData = $user->projectWsUserCanStartTask($prj_uid, $act_uid, $request_data); //Response $response = $objectData; } catch (\Exception $e) {