public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { list($action, $status, $id) = explode("-", $request->getActionName()); if ($action != 'status') { if ($action != 'ipn' && $action != 'thanks' || $request->get('transaction_status') == 'SETTLED') { parent::directAction($request, $response, $invokeArgs); } return; } if (!in_array($status, array('return', 'ok', 'fail'))) { throw new Am_Exception_InternalError("Bad status-request {$status}"); } if (!$id) { throw new Am_Exception_InternalError("Invoice ID is absent"); } if (!($this->invoice = $this->getDi()->invoiceTable->findFirstByPublicId($id))) { throw new Am_Exception_InternalError("Invoice not found by id [{$id}]"); } switch ($status) { case 'return': $url = $request->get('transactionStatus') == 'REJECTED' ? $this->getCancelUrl() : $this->getReturnUrl(); break; case 'ok': $url = $this->getReturnUrl(); break; case 'fail': $url = $this->getCancelUrl(); break; } $response->setRedirect($url); }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ($request->getActionName() == 'ipn' && ($request->getParam('monelib_meaning') == 'USEMULTISHOT' || $request->getParam('monelib_meaning') == 'USEEZSHOT')) { return; } parent::directAction($request, $response, $invokeArgs); }
function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ($request->getActionName() == 'ipn') { echo 'OK'; } return parent::directAction($request, $response, $invokeArgs); }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ($request->getActionName() == 'thanks') { return $this->thanksAction($request, $response, $invokeArgs); } else { return parent::directAction($request, $response, $invokeArgs); } }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ($request->getFiltered('INVNUM', $request->getFiltered('INVOICE')) == '') { $response->setRedirect($this->getRootUrl() . '/thanks'); } else { parent::directAction($request, $response, $invokeArgs); } }
function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { try { parent::directAction($request, $response, $invokeArgs); } catch (Exception $e) { $this->getDi()->errorLogTable->logException($e); } echo "<!--success-->"; }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { try { parent::directAction($request, $response, $invokeArgs); } catch (Am_Exception_Paysystem_TransactionInvalid $ex) { //nothing } echo 'ok'; }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { try { parent::directAction($request, $response, $invokeArgs); } catch (Exception $e) { $this->getDi()->errorLogTable->logException($e); } //in other case blockchain will send IPN's once per minute echo 'ok'; }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ('reject' == $request->getActionName()) { $invoice = $this->getDi()->invoiceTable->findFirstByPublicId($request->get("orderDescription")); $url = $this->getRootUrl() . "/cancel?id=" . $invoice->getSecureId('CANCEL'); return Am_Controller::redirectLocation($url); } else { return parent::directAction($request, $response, $invokeArgs); } }
function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { try { parent::directAction($request, $response, $invokeArgs); } catch (Exception $e) { $this->getDi()->errorLogTable->logException($e); $response->setRawHeader('HTTP/1.1 600 user-error'); $response->setBody("Error: " . $e->getMessage()); } }
function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { try { parent::directAction($request, $response, $invokeArgs); } catch (Am_Exception $e) { $this->getDi()->errorLogTable->logException($e); print "OK"; exit; } }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ($request->getActionName() == self::ACTION_IPN) { return parent::directAction($request, $response, $invokeArgs); } else { $request->setActionName($request->getActionName()); $p = new Am_Controller_CreditCard($request, $response, $invokeArgs); $p->setPlugin($this); $p->run(); } }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ($request->getActionName() == 'refund') { echo "OK"; ob_flush(); return $this->refundAction($request, $response, $invokeArgs); } else { echo "<softshop></softshop>"; ob_flush(); parent::directAction($request, $response, $invokeArgs); } }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { $actionName = $request->getActionName(); if ($actionName == 'fail') { $invoice = $this->getDi()->invoiceTable->findFirstByPublicId($request->getParam('m_orderid')); if (!$invoice) { throw new Am_Exception_InputError(); } return Am_Controller::redirectLocation($this->getRootUrl() . "/cancel?id=" . $invoice->getSecureId('CANCEL')); } else { return parent::directAction($request, $response, $invokeArgs); } }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ($request->getActionName() == 'thanks') { if ($this->getConfig('debugLog')) { Am_Di::getInstance()->errorLogTable->log('NetBilling Form [response-thanks]:' . json_encode($request->getParams())); } $this->invoice = $this->getDi()->invoiceTable->findFirstByPublicId($request->getFiltered('Ecom_ConsumerOrderID')); $url = $request->get('Ecom_Ezic_Response_StatusCode') == 0 || $request->get('Ecom_Ezic_Response_StatusCode') == 'F' ? $this->getCancelUrl() : $this->getReturnUrl(); $response->setRedirect($url); } else { parent::directAction($request, $response, $invokeArgs); } }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { switch ($request->getActionName()) { case self::ACTION_IPN: return parent::directAction($request, $response, $invokeArgs); case self::ACTION_UPDATE: return $this->updateAction($request, $response, $invokeArgs); case self::ACTION_CANCEL: return $this->doCancelAction($request, $response, $invokeArgs); case self::ACTION_ECHECK: default: return $this->echeckAction($request, $response, $invokeArgs); } }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ($request->getActionName() == 'api' && ($api_resend = $this->getConfig('api_resend'))) { try { $client = new Am_HttpRequest($api_resend, Am_HttpRequest::METHOD_POST); $client->setHeader('Content-type', 'text/xml'); $client->setBody($request->getRawBody()); $response = $client->send(); } catch (Exception $e) { $this->getDi()->errorLogTable->logException($e); } } parent::directAction($request, $response, $invokeArgs); }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ($request->getActionName() == 'cancelpaysafecart') { // SEE par.3 @(list($id, $code) = explode('-', filterId($request->getFiltered('id')), 2)); $invoice = Am_Di::getInstance()->InvoiceTable->findFirstByPublicId(filterId($id)); if (!$invoice) { throw new Am_Exception_InputError("No invoice found [{$id}]"); } $invoice->setCancelled(true); $a = new Am_Paysystem_Action_HtmlTemplate_Paysafecard($this->getDir(), 'payment-paysafecard-cancel.phtml'); $a->process(new Am_Controller($request, $response, $invokeArgs)); // see par.3 } else { parent::directAction($request, $response, $invokeArgs); } }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { switch ($request->getActionName()) { case self::ACTION_IPN: return parent::directAction($request, $response, $invokeArgs); case self::ACTION_UPDATE: return $this->updateAction($request, $response, $invokeArgs); case self::ACTION_CANCEL: return $this->doCancelAction($request, $response, $invokeArgs); case self::ACTION_CANCEL_PAYMENT: return $this->cancelPaymentAction($request, $response, $invokeArgs); case self::ACTION_THANKS: return $this->thanksAction($request, $response, $invokeArgs); case self::ACTION_CC: default: return $this->ccAction($request, $response, $invokeArgs); } }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ($request->getActionName() == self::PAYPAL_EXPRESS_CHECKOUT) { return $this->expressCheckoutAction($request, $response, $invokeArgs); } else { return parent::directAction($request, $response, $invokeArgs); } }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { $actionName = $request->getActionName(); if ($actionName == 'ipn') { if (!in_array($request->getClientIp(), $this->ips)) { throw new Am_Exception_InputError("Request not handled - ip is not allowed"); } if ($request->get('art') == 'request') { $shopid = $request->get('shopid'); if (!$shopid) { throw new Am_Exception_InputError("Parameter shopid wasn't received"); } $invoice = Am_Di::getInstance()->invoiceTable->findFirstByPublicId($shopid); if (!$invoice) { throw new Am_Exception_InputError("No invoice found"); } $params = array(); $params['nachname'] = $invoice->getLastName(); $params['vorname'] = $invoice->getFirstName(); $params['strasse'] = $invoice->getStreet(); $params['plz'] = $invoice->getZip(); $params['ort'] = $invoice->getCity(); $params['land'] = $invoice->getUser()->country; $params['email'] = $invoice->getEmail(); $params['betrag'] = $invoice->first_total * 100; $params['compain_id'] = ''; $params['ipadresse'] = $invoice->getUser()->remote_addr; if ($invoice->second_period) { $aboanlage = 1; $abopreis = $invoice->second_total * 100; preg_match("/[\\d]+/", $invoice->second_period, $days); if ($days[0] <= 365 && $days[0] >= 30) { $abozeit = $days[0]; } preg_match("/[\\d]+/", $invoice->first_period, $days); if ($days[0] <= 365 && $days[0] >= 3) { $abonext = $days[0]; } $params['aboanlage'] = $aboanlage; $params['abopreis'] = $abopreis; $params['abozeit'] = $abozeit; $params['abonext'] = $abonext; } $params['cur'] = strtolower($invoice->currency); $message = ''; foreach ($params as $p) { $message .= $p . ";"; } echo utf8_decode($message); return; } //Getting invoice for providing a redirect-URL with the result confirmation $shopid = $request->get('shopid'); $this->invoice = Am_Di::getInstance()->invoiceTable->findFirstByPublicId($shopid); $invoiceLog = $this->_logDirectAction($request, $response, $invokeArgs); $transaction = $this->createTransaction($request, $response, $invokeArgs); if (!$this->invoice) { throw new Am_Exception_InputError("Request not handled - Request's parameter shopid is incorrect"); } if (!$transaction) { throw new Am_Exception_InputError("Request not handled - createTransaction() returned null"); } $transaction->setInvoiceLog($invoiceLog); try { $transaction->process(); } catch (Exception $e) { echo "OK;" . $this->getCancelUrl() . "?shopid=" . $this->invoice->public_id; if ($invoiceLog) { $invoiceLog->add($e); } throw $e; } echo "OK;" . $this->getReturnUrl() . "?shopid=" . $this->invoice->public_id; if ($invoiceLog) { $invoiceLog->setProcessed(); } } else { return parent::directAction($request, $response, $invokeArgs); } }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ($request->getActionName() == 'confirm') { $invoice = $this->getDi()->invoiceTable->findFirstBy(array('public_id' => $request->get('invoice'))); if (!$invoice) { throw new Am_Exception_InputError('An error occurred while payment request'); } if ($user = $this->getDi()->auth->getUser()) { if ($user->user_id != $invoice->user_id) { throw new Am_Exception_InputError('An error occurred while payment request'); } } $product = $this->getDi()->productTable->load($invoice->getItem(0)->item_id); $billers = json_decode($product->data()->getBlob('sliiing_billers'), true); if (!@$billers['options'][$request->get('biller')]) { throw new Am_Exception_InputError('An error occurred while payment request'); } //redirect $aff = '0'; $lin = '0'; $refe_url = '0'; $ip = '0'; $keyword = '0'; if (isset($_COOKIE['MID'])) { $mid = base64_decode($_COOKIE['MID']); list($aff, $lin, $refe_url, $ip, $keyword) = explode('|', $mid); } $datas = base64_encode("{$aff}|{$lin}|{$refe_url}|{$ip}|{$keyword}"); $url = $billers['options'][$request->get('biller')]; $url = str_replace('$datas', $datas, $url) . '&x_invoice_id=' . $invoice->public_id . '&username='******'&email=' . urlencode($invoice->getUser()->email); header('Location: ' . $url); exit; } else { parent::directAction($request, $response, $invokeArgs); } }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { $actionName = $request->getActionName(); if ($actionName == 'debug') { $this->debugAction($request, $response, $invokeArgs); } else { parent::directAction($request, $response, $invokeArgs); } }
function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ($this->getConfig('validation_mode')) { print "OK"; exit; } try { return parent::directAction($request, $response, $invokeArgs); } catch (Exception $e) { $this->getDi()->errorLogTable->log($e); print "ERROR"; exit; } }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ($request->getActionName() == 'ipn') { $invoiceLog = $this->_logDirectAction($request, $response, $invokeArgs); $transaction = $this->createTransaction($request, $response, $invokeArgs); $transaction->setInvoiceLog($invoiceLog); try { $transaction->process(); } catch (Am_Exception_Paysystem_TransactionAlreadyHandled $e) { $transaction->printAnswer("Ok", "Order #" . $transaction->findInvoiceId() . " is paid!"); } catch (Exception $e) { if ($invoiceLog) { $invoiceLog->add($e); } $this->getDi()->errorLogTable->logException($e); return; } if ($invoiceLog) { $invoiceLog->setProcessed(); } return; } else { parent::directAction($request, $response, $invokeArgs); } }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ($request->getActionName() == 'admin-cancel') { return $this->adminCancelAction($request, $response, $invokeArgs); } elseif ($request->getActionName() == 'cancel') { $invoice = $this->getDi()->invoiceTable->findBySecureId($request->getFiltered('id'), 'STOP' . $this->getId()); if (!$invoice) { throw new Am_Exception_InputError("No invoice found [{$id}]"); } $result = new Am_Paysystem_Result(); $payment = current($invoice->getPaymentRecords()); $this->cancelInvoice($payment, $result); $invoice->setCancelled(true); $this->_redirect('member/payment-history'); } else { return parent::directAction($request, $response, $invokeArgs); } }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { if ($request->getRawBody()) { $webhook = $request->getRawBody(); $webhook_array = json_decode($webhook, true); $request = new Am_Request($webhook_array, $request->getActionName()); } parent::directAction($request, $response, $invokeArgs); }
function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { parent::directAction($request, $response, $invokeArgs); $post = $request->getPost(); $date = date('YmdGis'); $vars = array($post['IPN_PID'][0], $post['IPN_PNAME'][0], $post['IPN_DATE'], $date); printf('<EPAYMENT>%s|%s</EPAYMENT>', $date, $this->calculateHash($vars)); }
public function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { try { parent::directAction($request, $response, $invokeArgs); } catch (Exception $e) { $this->getDi()->errorLogTable->logException($e); $sep = "\n"; $url = $this->getDi()->config->get('root_url') . "/thanks"; echo "status=ok{$sep}url={$url}{$sep}target=_top{$sep}forward=1"; } }
function directAction(Am_Request $request, Zend_Controller_Response_Http $response, array $invokeArgs) { $actionName = $request->getActionName(); if ($actionName == 'cancel') { $invoice = $this->getDi()->invoiceTable->findFirstBy(array('public_id' => $request->getFiltered('merchant_unique_id'))); if (!$invoice) { throw new Am_Exception_InputError("No invoice found [{$id}]"); } Am_Controller::redirectLocation($this->getRootUrl() . "/cancel?id=" . $invoice->getSecureId('CANCEL')); } else { parent::directAction($request, $response, $invokeArgs); } }