/** * Function to perform post save processing (extends parent function) * * @access public */ function postProcess() { $session = CRM_Core_Session::singleton(); $userId = $session->get('userID'); if ($this->_action == CRM_Core_Action::DELETE) { CRM_Civirules_BAO_Rule::deleteWithId($this->ruleId); $session->setStatus('CiviRule deleted', 'Delete', 'success'); CRM_Utils_System::redirect($session->readUserContext()); } $this->saveRule($this->_submitValues, $userId); $this->saveRuleTrigger($this->_submitValues); $session->setStatus('Rule with linked Trigger saved succesfully', 'CiviRule saved', 'success'); /* * if add mode, set user context to form in edit mode to add conditions and actions */ if ($this->_action == CRM_Core_Action::ADD || $this->_action == CRM_Core_Action::UPDATE) { $editUrl = CRM_Utils_System::url('civicrm/civirule/form/rule', 'action=update&id=' . $this->ruleId, TRUE); $session->pushUserContext($editUrl); } if (isset($this->_submitValues['rule_trigger_select'])) { $redirectUrl = $this->getTriggerRedirect($this->_submitValues['rule_trigger_select']); if ($redirectUrl) { CRM_Utils_System::redirect($redirectUrl); } } parent::postProcess(); }