public function publishAction() { $params = $this->getRequest()->getParams(); if ($params['last_transaction'] == 'Execute_response') { $update = array('last_transaction' => 'Publish'); Application_Model_General::updateRequest($params['request_id'], $params['last_transaction'], $update); } $success = Application_Model_General::forkProcess('/cron/checkpublish', $params, true); if ($success) { $params['success'] = 1; $params['message'] = 'Execute sent'; } else { $params['success'] = 0; $params['message'] = 'Execute failed'; } $this->_redirect(Application_Model_General::getBaseUrl() . '/monitor/?' . http_build_query($params)); }
/** * Sends Internal's Response to Provider * * @param BOOL $status * @return BOOL */ public function createResponse($status) { if ($status) { $ack = $this->sendArray(); if ($ack && isset($ack->NP_ACK) && isset($ack->NP_ACK->ACK_CODE)) { $ret = $ack->NP_ACK->ACK_CODE; $this->request->setAck($ret); //we need to see what validation needs to //be here - ack from provider //update db - status OK if ($ack->NP_ACK->ACK_CODE == "Ack00") { Application_Model_General::updateTransactionsAck($this->request->getHeaderField('TRX_NO'), $ack->NP_ACK->ACK_CODE); } else { $this->SendErrorToInternal($ack->NP_ACK->ACK_CODE); } } else { if (strtoupper($this->request->getHeaderField('MSG_TYPE')) == 'CHECK') { Application_Model_General::updateRequest($this->request->getHeaderField('REQUEST_ID'), $this->request->getHeaderField('MSG_TYPE'), array('status' => 0)); } Application_Model_General::updateTransactionsAck($this->request->getHeaderField('TRX_NO'), 'Err'); return false; } } else { // @TODO: check this on all scenarios // $this->SendErrorToInternal(false); } return true; }