diff --git a/workflow/engine/methods/cases/cases_Step.php b/workflow/engine/methods/cases/cases_Step.php index 92749eb65..a2d42a56e 100755 --- a/workflow/engine/methods/cases/cases_Step.php +++ b/workflow/engine/methods/cases/cases_Step.php @@ -178,14 +178,10 @@ try { //Obtain previous and next step - End $aRequiredFields = array( - 'APPLICATION' => $Fields['APP_DATA']['APPLICATION'], - 'PROCESS' => $Fields['APP_DATA']['PROCESS'], - 'TASK' => $Fields['APP_DATA']['TASK'], - 'INDEX' => $Fields['APP_DATA']['INDEX'], - 'APP_DATA' => $Fields['APP_DATA'] + 'APP_DATA' => $Fields['APP_DATA'] ); -$oHeadPublisher->addScriptCode('var __dynaformSVal__ = \'' . serialize($aRequiredFields) . '\';'); +$oHeadPublisher->addScriptCode('var __dynaformSVal__ = \'' . base64_encode(serialize($aRequiredFields)) . '\'; '); try { //Add content content step - Start $oApp = ApplicationPeer::retrieveByPK( $_SESSION['APPLICATION'] ); diff --git a/workflow/engine/methods/services/sessionPersists.php b/workflow/engine/methods/services/sessionPersists.php index 10c5f3911..d13aa2764 100755 --- a/workflow/engine/methods/services/sessionPersists.php +++ b/workflow/engine/methods/services/sessionPersists.php @@ -32,24 +32,27 @@ if (isset($_REQUEST['dynaformEditorParams'])) { } } if (isset($_REQUEST['dynaformRestoreValues'])) { - $aRetValues = unserialize(stripslashes($_REQUEST['dynaformRestoreValues'])); - if (isset($aRetValues['APPLICATION'])) { - $_SESSION['APPLICATION'] = $aRetValues['APPLICATION']; - } - if (isset($aRetValues['PROCESS'])) { - $_SESSION['PROCESS'] = $aRetValues['PROCESS']; - } - if (isset($aRetValues['TASK'])) { - $_SESSION['TASK'] = $aRetValues['TASK']; - } - if (isset($aRetValues['INDEX'])) { - $_SESSION['INDEX'] = $aRetValues['INDEX']; - } - if (isset($aRetValues['TRIGGER_DEBUG'])) { - $_SESSION['TRIGGER_DEBUG'] = $aRetValues['TRIGGER_DEBUG']; - } + + $aRetValues = unserialize(stripslashes(base64_decode($_REQUEST['dynaformRestoreValues']))); + if (isset($aRetValues['APP_DATA'])) { $_SESSION['APP_DATA'] = $aRetValues['APP_DATA']; + + if (isset($aRetValues['APP_DATA']['APPLICATION'])) { + $_SESSION['APPLICATION'] = $aRetValues['APP_DATA']['APPLICATION']; + } + if (isset($aRetValues['APP_DATA']['PROCESS'])) { + $_SESSION['PROCESS'] = $aRetValues['APP_DATA']['PROCESS']; + } + if (isset($aRetValues['APP_DATA']['TASK'])) { + $_SESSION['TASK'] = $aRetValues['APP_DATA']['TASK']; + } + if (isset($aRetValues['APP_DATA']['INDEX'])) { + $_SESSION['INDEX'] = $aRetValues['APP_DATA']['INDEX']; + } + if (isset($aRetValues['APP_DATA']['TRIGGER_DEBUG'])) { + $_SESSION['TRIGGER_DEBUG'] = $aRetValues['APP_DATA']['TRIGGER_DEBUG']; + } } } die(G::json_encode($response)); \ No newline at end of file