function startCase() { G::LoadClass('case'); G::LoadSystem('inputfilter'); $filter = new InputFilter(); $_POST = $filter->xssFilterHard($_POST); $_REQUEST = $filter->xssFilterHard($_REQUEST); $_SESSION = $filter->xssFilterHard($_SESSION); /* GET , POST & $_SESSION Vars */ /* unset any variable, because we are starting a new case */ if (isset($_SESSION['APPLICATION'])) { unset($_SESSION['APPLICATION']); } if (isset($_SESSION['PROCESS'])) { unset($_SESSION['PROCESS']); } if (isset($_SESSION['TASK'])) { unset($_SESSION['TASK']); } if (isset($_SESSION['INDEX'])) { unset($_SESSION['INDEX']); } if (isset($_SESSION['STEP_POSITION'])) { unset($_SESSION['STEP_POSITION']); } /* Process */ try { $oCase = new Cases(); lookinginforContentProcess($_POST['processId']); $aData = $oCase->startCase($_REQUEST['taskId'], $_SESSION['USER_LOGGED']); $aData = $filter->xssFilterHard($aData); $_SESSION['APPLICATION'] = $aData['APPLICATION']; $_SESSION['INDEX'] = $aData['INDEX']; $_SESSION['PROCESS'] = $aData['PROCESS']; $_SESSION['TASK'] = $_REQUEST['taskId']; $_SESSION['STEP_POSITION'] = 0; $_SESSION['CASES_REFRESH'] = true; /*----------------------------------********---------------------------------*/ $oCase = new Cases(); $aNextStep = $oCase->getNextStep($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['STEP_POSITION']); $aNextStep['PAGE'] = 'open?APP_UID=' . $aData['APPLICATION'] . '&DEL_INDEX=' . $aData['INDEX'] . '&action=draft'; $_SESSION['BREAKSTEP']['NEXT_STEP'] = $aNextStep; $aData['openCase'] = $aNextStep; $aData['status'] = 'success'; print G::json_encode($aData); } catch (Exception $e) { $aData['status'] = 'failure'; $aData['message'] = $e->getMessage(); print_r(G::json_encode($aData)); } }
if (isset($_SESSION['PROCESS'])) { unset($_SESSION['PROCESS']); } if (isset($_SESSION['TASK'])) { unset($_SESSION['TASK']); } if (isset($_SESSION['INDEX'])) { unset($_SESSION['INDEX']); } if (isset($_SESSION['STEP_POSITION'])) { unset($_SESSION['STEP_POSITION']); } /* Process */ try { $oCase = new Cases(); $aData = $oCase->startCase($_POST['form']['TAS_UID'], $_SESSION['USER_LOGGED']); $_SESSION['APPLICATION'] = $aData['APPLICATION']; $_SESSION['INDEX'] = $aData['INDEX']; $_SESSION['PROCESS'] = $aData['PROCESS']; $_SESSION['TASK'] = $_POST['form']['TAS_UID']; $_SESSION['STEP_POSITION'] = 0; $_SESSION['CASES_REFRESH'] = true; $oCase = new Cases(); $aNextStep = $oCase->getNextStep($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['STEP_POSITION']); $_SESSION['BREAKSTEP']['NEXT_STEP'] = $aNextStep; G::header('location: ' . $aNextStep['PAGE']); } catch (Exception $e) { $_SESSION['G_MESSAGE'] = $e->getMessage(); $_SESSION['G_MESSAGE_TYPE'] = 'error'; G::header('location: cases_New'); }
public function startCase($httpData) { G::LoadClass('case'); $case = new Cases(); $aData = $case->startCase($httpData->id, $_SESSION['USER_LOGGED']); $_SESSION['APPLICATION'] = $aData['APPLICATION']; $_SESSION['INDEX'] = $aData['INDEX']; $_SESSION['PROCESS'] = $aData['PROCESS']; $_SESSION['TASK'] = $httpData->id; $_SESSION['STEP_POSITION'] = 0; $_SESSION['CASES_REFRESH'] = true; // Execute Events require_once 'classes/model/Event.php'; $event = new Event(); $event->createAppEvents($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['TASK']); $oCase = new Cases(); $aNextStep = $oCase->getNextStep($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['STEP_POSITION']); //../cases/cases_Open?APP_UID={$APP.APP_UID}&DEL_INDEX={$APP.DEL_INDEX}&action=todo $aNextStep['PAGE'] = '../cases/cases_Open?APP_UID=' . $aData['APPLICATION'] . '&DEL_INDEX=' . $aData['INDEX'] . '&action=draft'; $_SESSION['BREAKSTEP']['NEXT_STEP'] = $aNextStep; $this->redirect($aNextStep['PAGE']); }
/** * creates a new case impersonating a user who has the proper privileges to create new cases * * @param string $processId * @param string $userId * @param string $variables * @param string $taskId, must be in the starting group. * @return $result will return an object */ public function newCaseImpersonate ($processId, $userId, $variables, $taskId = '') { try { if (is_array( $variables )) { if (count( $variables ) > 0) { $c = count( $variables ); $Fields = $variables; } else { if ($c == 0) { $result = new wsResponse( 10, G::loadTranslation( 'ID_ARRAY_VARIABLES_EMPTY' ) ); return $result; } } } else { $result = new wsResponse( 10, G::loadTranslation( 'ID_VARIABLES_PARAM_NOT_ARRAY' ) ); return $result; } $processes = new Processes(); if (! $processes->processExists( $processId )) { $result = new wsResponse( 11, G::loadTranslation( 'ID_INVALID_PROCESS' ) . " " . $processId . "!!" ); return $result; } $user = new Users(); if (! $user->userExists( $userId )) { $result = new wsResponse( 11, G::loadTranslation( 'ID_USER_NOT_REGISTERED' ) . " " . $userId . "!!" ); return $result; } $oCase = new Cases(); $numTasks = 0; if ($taskId != '') { $aTasks = $processes->getStartingTaskForUser( $processId, null ); foreach ($aTasks as $task) { if ($task['TAS_UID'] == $taskId) { $arrayTask[0]['TAS_UID'] = $taskId; $numTasks = 1; } } } else { $arrayTask = $processes->getStartingTaskForUser( $processId, null ); $numTasks = count( $arrayTask ); } if ($numTasks == 1) { $case = $oCase->startCase( $arrayTask[0]['TAS_UID'], $userId ); $caseId = $case['APPLICATION']; $caseNumber = $case['CASE_NUMBER']; $oldFields = $oCase->loadCase( $caseId ); $oldFields['APP_DATA'] = array_merge( $oldFields['APP_DATA'], $Fields ); $up_case = $oCase->updateCase( $caseId, $oldFields ); $result = new wsResponse( 0, G::loadTranslation( 'ID_COMMAND_EXECUTED_SUCCESSFULLY' ) ); $result->caseId = $caseId; $result->caseNumber = $caseNumber; return $result; } else { if ($numTasks == 0) { $result = new wsResponse( 12, G::loadTranslation( 'ID_NO_STARTING_TASK' ) ); return $result; } if ($numTasks > 1) { $result = new wsResponse( 13, G::loadTranslation( 'ID_MULTIPLE_STARTING_TASKS' ) ); return $result; } } } catch (Exception $e) { $result = new wsResponse( 100, $e->getMessage() ); return $result; } }
function startCase() { G::LoadClass('case'); /* GET , POST & $_SESSION Vars */ /* unset any variable, because we are starting a new case */ if (isset($_SESSION['APPLICATION'])) { unset($_SESSION['APPLICATION']); } if (isset($_SESSION['PROCESS'])) { unset($_SESSION['PROCESS']); } if (isset($_SESSION['TASK'])) { unset($_SESSION['TASK']); } if (isset($_SESSION['INDEX'])) { unset($_SESSION['INDEX']); } if (isset($_SESSION['STEP_POSITION'])) { unset($_SESSION['STEP_POSITION']); } /* Process */ try { $oCase = new Cases(); lookinginforContentProcess($_POST['processId']); $aData = $oCase->startCase($_REQUEST['taskId'], $_SESSION['USER_LOGGED']); $_SESSION['APPLICATION'] = $aData['APPLICATION']; $_SESSION['INDEX'] = $aData['INDEX']; $_SESSION['PROCESS'] = $aData['PROCESS']; $_SESSION['TASK'] = $_REQUEST['taskId']; $_SESSION['STEP_POSITION'] = 0; $_SESSION['CASES_REFRESH'] = true; // Execute Events require_once 'classes/model/Event.php'; $event = new Event(); $event->createAppEvents($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['TASK']); $oCase = new Cases(); $aNextStep = $oCase->getNextStep($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['STEP_POSITION']); $aNextStep['PAGE'] = 'open?APP_UID=' . $aData['APPLICATION'] . '&DEL_INDEX=' . $aData['INDEX'] . '&action=draft'; $_SESSION['BREAKSTEP']['NEXT_STEP'] = $aNextStep; $aData['openCase'] = $aNextStep; $aData['status'] = 'success'; print G::json_encode($aData); } catch (Exception $e) { $aData['status'] = 'failure'; $aData['message'] = $e->getMessage(); print_r(G::json_encode($aData)); } }
$_SESSION['INDEX'] = 1; $_SESSION['PROCESS'] = $resultprocessTask[1]['PRO_UID']; $_SESSION['TASK'] = $resultprocessTask[1]['TAS_UID']; $_SESSION['STEP_POSITION'] = 0; FupdateAPPDATATYPO3($_SESSION['APPLICATION']); // typo3 // Execute events require_once 'classes/model/Event.php'; $eventInstance = new Event(); $eventInstance->createAppEvents($resultprocessTask[1]['PRO_UID'], $resultDraft[1]['APP_UID'], '1', $resultprocessTask[1]['TAS_UID']); // Redirect to cases steps $nextStep = $caseInstance->getNextStep($resultprocessTask[1]['PRO_UID'], $resultDraft[1]['APP_UID'], '1', 0); G::header('Location: ../cases/' . $nextStep['PAGE']); } } else { $data = $caseInstance->startCase($_REQUEST['task'], $_SESSION['USER_LOGGED']); $_SESSION['APPLICATION'] = $data['APPLICATION']; $_SESSION['INDEX'] = $data['INDEX']; $_SESSION['PROCESS'] = $data['PROCESS']; $_SESSION['TASK'] = $_REQUEST['task']; $_SESSION['STEP_POSITION'] = 0; // Execute events require_once 'classes/model/Event.php'; $eventInstance = new Event(); $eventInstance->createAppEvents($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['TASK']); FupdateAPPDATATYPO3($_SESSION['APPLICATION'], 1); // typo3 // Redirect to cases steps $nextStep = $caseInstance->getNextStep($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['STEP_POSITION']); G::header('Location: ../cases/' . $nextStep['PAGE']); }
<?php try { require_once "classes/model/Task.php"; require_once "classes/model/Users.php"; G::LoadClass('case'); G::LoadClass('derivation'); $oTask = new Task(); $TaskFields = $oTask->load($_POST['TASKS']); $aDerivation['NEXT_TASK'] = $TaskFields; $oDerivation = new Derivation(); $deriva = $oDerivation->getNextAssignedUser($aDerivation); $oCase = new Cases(); $aData = $oCase->startCase($_POST['TASKS'], $deriva['USR_UID']); $case = $oCase->loadCase($aData['APPLICATION'], 1); $Fields = array(); $Fields['APP_NUMBER'] = $case['APP_NUMBER']; $Fields['APP_PROC_STATUS'] = 'draft'; $Fields['APP_DATA'] = $_POST['form']; $Fields['DEL_INDEX'] = 1; $Fields['TAS_UID'] = $_POST['TASKS']; //$Fields = $oCase->loadCase($aData['APPLICATION'], 1); $oCase->updateCase($aData['APPLICATION'], $Fields); $s = 0; if (isset($_SERVER['HTTP_REFERER'])) { $dir = explode('?', $_SERVER['HTTP_REFERER']); if ($dir[1] == '__flag__=1') { $s = 1; } else { $dire = explode('&', $dir[1]); for ($i = 0; $i <= count($dire); $i++) {