Fixed bug with the function PMFNewCase
- The session variables are overwrited - The session variables are restored to end of the function
This commit is contained in:
@@ -1455,31 +1455,43 @@ class wsBase
|
|||||||
public function newCase($processId, $userId, $taskId, $variables)
|
public function newCase($processId, $userId, $taskId, $variables)
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
//GET, POST & $_SESSION Vars
|
$originalValues = array();
|
||||||
|
|
||||||
//Unset any variable, because we are starting a new case
|
//Unset any variable, because we are starting a new case
|
||||||
if (isset($_SESSION['APPLICATION'])) {
|
if (isset($_SESSION['APPLICATION'])) {
|
||||||
|
$originalValues['APPLICATION'] = $_SESSION['APPLICATION'];
|
||||||
unset($_SESSION['APPLICATION']);
|
unset($_SESSION['APPLICATION']);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isset($_SESSION['PROCESS'])) {
|
if (isset($_SESSION['PROCESS'])) {
|
||||||
|
$originalValues['PROCESS'] = $_SESSION['PROCESS'];
|
||||||
unset($_SESSION['PROCESS']);
|
unset($_SESSION['PROCESS']);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isset($_SESSION['TASK'])) {
|
if (isset($_SESSION['TASK'])) {
|
||||||
|
$originalValues['TASK'] = $_SESSION['TASK'];
|
||||||
unset($_SESSION['TASK']);
|
unset($_SESSION['TASK']);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isset($_SESSION['INDEX'])) {
|
if (isset($_SESSION['INDEX'])) {
|
||||||
|
$originalValues['INDEX'] = $_SESSION['INDEX'];
|
||||||
unset($_SESSION['INDEX']);
|
unset($_SESSION['INDEX']);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isset($_SESSION['USER_LOGGED'])) {
|
if (isset($_SESSION['USER_LOGGED'])) {
|
||||||
|
$originalValues['USER_LOGGED'] = $_SESSION['USER_LOGGED'];
|
||||||
unset($_SESSION['USER_LOGGED']);
|
unset($_SESSION['USER_LOGGED']);
|
||||||
}
|
}
|
||||||
|
|
||||||
//if (isset($_SESSION['USR_USERNAME'])) unset($_SESSION['USR_USERNAME']);
|
if (isset($_SESSION['USR_USERNAME'])) {
|
||||||
|
$originalValues['USR_USERNAME'] = $_SESSION['USR_USERNAME'];
|
||||||
|
unset($_SESSION['USR_USERNAME']);
|
||||||
|
}
|
||||||
|
|
||||||
//if (isset($_SESSION['STEP_POSITION'])) unset($_SESSION['STEP_POSITION']);
|
if (isset($_SESSION['STEP_POSITION'])) {
|
||||||
|
$originalValues['STEP_POSITION'] = $_SESSION['STEP_POSITION'];
|
||||||
|
unset($_SESSION['STEP_POSITION']);
|
||||||
|
}
|
||||||
|
|
||||||
$Fields = array();
|
$Fields = array();
|
||||||
|
|
||||||
@@ -1541,8 +1553,8 @@ class wsBase
|
|||||||
$_SESSION['TASK'] = $taskId;
|
$_SESSION['TASK'] = $taskId;
|
||||||
$_SESSION['INDEX'] = $case['INDEX'];
|
$_SESSION['INDEX'] = $case['INDEX'];
|
||||||
$_SESSION['USER_LOGGED'] = $userId;
|
$_SESSION['USER_LOGGED'] = $userId;
|
||||||
//$_SESSION['USR_USERNAME'] = $case['USR_USERNAME'];
|
$_SESSION['USR_USERNAME'] = $case['USR_USERNAME'];
|
||||||
//$_SESSION['STEP_POSITION'] = 0;
|
$_SESSION['STEP_POSITION'] = 0;
|
||||||
|
|
||||||
$caseId = $case['APPLICATION'];
|
$caseId = $case['APPLICATION'];
|
||||||
$caseNr = $case['CASE_NUMBER'];
|
$caseNr = $case['CASE_NUMBER'];
|
||||||
@@ -1553,6 +1565,31 @@ class wsBase
|
|||||||
|
|
||||||
$up_case = $oCase->updateCase($caseId, $oldFields);
|
$up_case = $oCase->updateCase($caseId, $oldFields);
|
||||||
|
|
||||||
|
//Restore original values
|
||||||
|
if (isset($originalValues['APPLICATION'])) {
|
||||||
|
$_SESSION['APPLICATION'] = $originalValues['APPLICATION'];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (isset($originalValues['PROCESS'])) {
|
||||||
|
$_SESSION['PROCESS'] = $originalValues['PROCESS'];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (isset($originalValues['TASK'])) {
|
||||||
|
$_SESSION['TASK'] = $originalValues['TASK'];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (isset($originalValues['INDEX'])) {
|
||||||
|
$_SESSION['INDEX'] = $originalValues['INDEX'];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (isset($originalValues['USR_USERNAME'])) {
|
||||||
|
$_SESSION['USR_USERNAME'] = $originalValues['USR_USERNAME'];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (isset($originalValues['STEP_POSITION'])) {
|
||||||
|
$_SESSION['STEP_POSITION'] = $originalValues['STEP_POSITION'];
|
||||||
|
}
|
||||||
|
|
||||||
$result = new wsResponse(0, G::loadTranslation('ID_STARTED_SUCCESSFULLY'));
|
$result = new wsResponse(0, G::loadTranslation('ID_STARTED_SUCCESSFULLY'));
|
||||||
$result->caseId = $caseId;
|
$result->caseId = $caseId;
|
||||||
$result->caseNumber = $caseNr;
|
$result->caseNumber = $caseNr;
|
||||||
|
|||||||
Reference in New Issue
Block a user