public function loadCase($sAppUid, $iDelIndex = 0, $jump = '') { try { $oApp = new Application; $aFields = $oApp->Load($sAppUid); $appData = self::unserializeData($aFields['APP_DATA']); $aFields['APP_DATA'] = G::array_merges(G::getSystemConstants(), $appData); switch ($oApp->getAppStatus()) { case 'COMPLETED': $aFields['STATUS'] = G::LoadTranslation('ID_COMPLETED'); break; case 'CANCELLED': $aFields['STATUS'] = G::LoadTranslation('ID_CANCELLED'); break; case 'PAUSED': $aFields['STATUS'] = G::LoadTranslation('ID_PAUSED'); break; case 'DRAFT': $aFields['STATUS'] = G::LoadTranslation('ID_DRAFT'); break; case 'TO_DO': $aFields['STATUS'] = G::LoadTranslation('ID_TO_DO'); break; } $oUser = new Users(); try { $oUser->load($oApp->getAppInitUser()); $uFields = $oUser->toArray(BasePeer::TYPE_FIELDNAME); //$aFields['TITLE'] = $oApp->getAppTitle(); $aFields['TITLE'] = $aFields['APP_TITLE']; $aFields['DESCRIPTION'] = $aFields['APP_DESCRIPTION']; $aFields['CREATOR'] = $oUser->getUsrFirstname() . ' ' . $oUser->getUsrLastname(); $aFields['CREATE_DATE'] = $oApp->getAppCreateDate(); $aFields['UPDATE_DATE'] = $oApp->getAppUpdateDate(); } catch (Exception $oError) { $aFields['TITLE'] = $oApp->getAppTitle(); $aFields['DESCRIPTION'] = ''; $aFields['CREATOR'] = '(USER_DELETED)'; $aFields['CREATE_DATE'] = $oApp->getAppCreateDate(); $aFields['UPDATE_DATE'] = $oApp->getAppUpdateDate(); } if ($iDelIndex > 0) { //get the Delegation fields, $oAppDel = new AppDelegation(); $oAppDel->Load($sAppUid, $iDelIndex); $aAppDel = $oAppDel->toArray(BasePeer::TYPE_FIELDNAME); $aFields['TAS_UID'] = $aAppDel['TAS_UID']; $aFields['DEL_INDEX'] = $aAppDel['DEL_INDEX']; $aFields['DEL_PREVIOUS'] = $aAppDel['DEL_PREVIOUS']; $aFields['DEL_TYPE'] = $aAppDel['DEL_TYPE']; $aFields['DEL_PRIORITY'] = $aAppDel['DEL_PRIORITY']; $aFields['DEL_THREAD_STATUS'] = $aAppDel['DEL_THREAD_STATUS']; $aFields['DEL_THREAD'] = $aAppDel['DEL_THREAD']; $aFields['DEL_DELEGATE_DATE'] = $aAppDel['DEL_DELEGATE_DATE']; $aFields['DEL_INIT_DATE'] = $aAppDel['DEL_INIT_DATE']; $aFields['DEL_TASK_DUE_DATE'] = $aAppDel['DEL_TASK_DUE_DATE']; $aFields['DEL_FINISH_DATE'] = $aAppDel['DEL_FINISH_DATE']; $aFields['CURRENT_USER_UID'] = $aAppDel['USR_UID']; try { //$oCurUser = new Users(); //$oCurUser->load($aAppDel['USR_UID']); //$aFields['CURRENT_USER'] = $oCurUser->getUsrFirstname() . ' ' . $oCurUser->getUsrLastname(); $oCurUser = new Users(); if ($jump != '') { $aCases = $oAppDel->LoadParallel($sAppUid); $aFields['TAS_UID'] = ''; $aFields['CURRENT_USER'] = array(); foreach ($aCases as $key => $value) { $oCurUser->load($value['USR_UID']); $aFields['CURRENT_USER'][]= $oCurUser->getUsrFirstname() . ' ' . $oCurUser->getUsrLastname(); $aFields['TAS_UID'].= $value['TAS_UID'].'-'; } $aFields['CURRENT_USER'] = implode(" - ", array_values($aFields['CURRENT_USER'])); $tasksArray = array_filter(explode("-",$aFields['TAS_UID'])); if(count($tasksArray) == 1) { $aFields['TAS_UID'] = $tasksArray[0]; } } else { $oCurUser->load($aAppDel['USR_UID']); $aFields['CURRENT_USER'] = $oCurUser->getUsrFirstname() . ' ' . $oCurUser->getUsrLastname(); } } catch (Exception $oError) { $aFields['CURRENT_USER'] = ''; } } return $aFields; } catch (exception $e) { throw ($e); } }
$licensedFeatures =& PMLicensedFeatures::getSingleton(); if (!$licensedFeatures->verifyfeature('7qhYmF1eDJWcEdwcUZpT0k4S0xTRStvdz09')) { G::SendTemporalMessage('ID_USER_HAVENT_RIGHTS_PAGE', 'error', 'labels'); G::header('location: ../login/login'); die; } $caseId = $_SESSION['APPLICATION']; $usrUid = $_SESSION['USER_LOGGED']; $usrName = $_SESSION['USR_FULLNAME']; $actualIndex = $_SESSION['INDEX']; $cont = 0; use ProcessMaker\Services\Api; $appDel = new AppDelegation(); $actualThread = $appDel->Load($caseId, $actualIndex); $actualLastIndex = $actualThread['DEL_PREVIOUS']; $appDelPrev = $appDel->LoadParallel($caseId); if ($appDelPrev == array()) { $appDelPrev['0'] = $actualThread; } $Pmgmail = new \ProcessMaker\BusinessModel\Pmgmail(); foreach ($appDelPrev as $app) { if ($app['DEL_INDEX'] != $actualIndex && $app['DEL_PREVIOUS'] != $actualLastIndex) { //Sending the email to all threads of the case except the actual thread $response = $Pmgmail->sendEmail($caseId, "", $app['DEL_INDEX']); } } require_once PATH_HOME . "engine" . PATH_SEP . "classes" . PATH_SEP . "class.labelsGmail.php"; $oLabels = new labelsGmail(); $oResponse = $oLabels->setLabels($caseId, $actualIndex, $actualLastIndex, false); $enablePMGmail = false; G::LoadClass("pmDrive");
$oHeadPublisher = & headPublisher::getSingleton(); $oHeadPublisher->addScriptFile( '/jscore/cases/core/cases_Step.js' ); $G_PUBLISH = new Publisher(); $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'cases/cases_Resume.xml', '', $Fields, '' ); if($Fields['APP_STATUS'] != 'COMPLETED'){ $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'cases/cases_Resume_Current_Task_Title.xml', '', $Fields, '' ); $objDel = new AppDelegation(); $parallel = $objDel->LoadParallel ($Fields['APP_UID'],$_GET['DEL_INDEX']); $FieldsPar = $Fields; if(empty($parallel)){ $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'cases/cases_Resume_Current_Task.xml', '', $Fields, '' ); }else{ foreach($parallel as $row){ $FieldsPar['TAS_UID'] = $row['TAS_UID']; $aTask = $objTask->load( $row['TAS_UID'] );
$oHeadPublisher = & headPublisher::getSingleton(); $oHeadPublisher->addScriptFile( '/jscore/cases/core/cases_Step.js' ); $G_PUBLISH = new Publisher(); $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'cases/cases_Resume.xml', '', $Fields, '' ); if($Fields['APP_STATUS'] != 'COMPLETED'){ $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'cases/cases_Resume_Current_Task_Title.xml', '', $Fields, '' ); $objDel = new AppDelegation(); $parallel = $objDel->LoadParallel ($Fields['APP_UID']); $FieldsPar = $Fields; if(empty($parallel)){ $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'cases/cases_Resume_Current_Task.xml', '', $Fields, '' ); }else{ foreach($parallel as $row){ $FieldsPar['TAS_UID'] = $row['TAS_UID']; $aTask = $objTask->load( $row['TAS_UID'] );