} //if the current users is in the AppDelegation row, then open the case if ($aDelegation['USR_UID'] == $_SESSION['USER_LOGGED'] && $_action != 'sent') { $_SESSION['APPLICATION'] = $sAppUid; $_SESSION['INDEX'] = $iDelIndex; if (is_null($aFields['DEL_INIT_DATE'])) { $oCase->setDelInitDate($sAppUid, $iDelIndex); $aFields = $oCase->loadCase($sAppUid, $iDelIndex); } $_SESSION['PROCESS'] = $aFields['PRO_UID']; $_SESSION['TASK'] = $aFields['TAS_UID']; $_SESSION['STEP_POSITION'] = 0; /* Redirect to next step */ unset($_SESSION['bNoShowSteps']); /* Execute Before Triggers for first Task*/ $oCase->getExecuteTriggerProcess($sAppUid, 'OPEN'); /*end Execute Before Triggers for first Task*/ $aNextStep = $oCase->getNextStep($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['STEP_POSITION']); $sPage = $aNextStep['PAGE']; G::header('location: ' . $sPage); } else { //when the case have another user or current user doesn't have rights to this self-service, //just view the case Resume // Get DEL_INDEX $criteria = new Criteria('workflow'); $criteria->addSelectColumn(AppDelegationPeer::DEL_INDEX); $criteria->add(AppDelegationPeer::APP_UID, $sAppUid); $criteria->add(AppDelegationPeer::DEL_LAST_INDEX, 1); $rs = AppDelegationPeer::doSelectRS($criteria); $rs->setFetchmode(ResultSet::FETCHMODE_ASSOC); $rs->next();