本文整理汇总了PHP中Am_Paysystem_Result::getAction方法的典型用法代码示例。如果您正苦于以下问题:PHP Am_Paysystem_Result::getAction方法的具体用法?PHP Am_Paysystem_Result::getAction怎么用?PHP Am_Paysystem_Result::getAction使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Am_Paysystem_Result
的用法示例。
在下文中一共展示了Am_Paysystem_Result::getAction方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: process
/**
* This function is likely never returns
* but anyway handle result and exceptions
* @return Am_Paysystem_Result
*/
function process()
{
$err = $this->invoice->validate();
if ($err) {
throw new Am_Exception_InputError($err[0]);
}
$this->invoice->save();
$plugin = Am_Di::getInstance()->plugins_payment->loadGet($this->invoice->paysys_id);
$this->result = new Am_Paysystem_Result();
$plugin->processInvoice($this->invoice, $this->controller->getRequest(), $this->result);
if ($this->result->isSuccess() || $this->result->isFailure()) {
if ($transaction = $this->result->getTransaction()) {
$transaction->setInvoice($this->invoice);
$transaction->process();
}
}
if ($this->result->isSuccess()) {
$url = REL_ROOT_URL . "/thanks?id=" . $this->invoice->getSecureId('THANKS');
$this->callback($this->onSuccess);
$this->controller->redirectLocation($url, ___("Invoice processed"), ___("Invoice processed successfully"));
// no return Am_Exception_Redirect
} elseif ($this->result->isAction()) {
$this->callback($this->onAction);
$this->result->getAction()->process($this->controller);
// no return Am_Exception_Redirect
} else {
// ($result->isFailure()) {
$this->callback($this->onFailure);
}
return $this->result;
}
示例2: process
/**
* This function is likely never returns
* but anyway handle result and exceptions
* @return Am_Paysystem_Result
*/
function process()
{
Am_Di::getInstance()->hook->call(Am_Event::INVOICE_BEFORE_PAYMENT, array('invoice' => $this->invoice, 'controller' => $this->controller));
$plugin = Am_Di::getInstance()->plugins_payment->loadGet($this->invoice->paysys_id);
$this->result = new Am_Paysystem_Result();
$plugin->processInvoice($this->invoice, $this->controller->getRequest(), $this->result);
if ($this->result->isSuccess() || $this->result->isFailure()) {
if ($transaction = $this->result->getTransaction()) {
$transaction->setInvoice($this->invoice);
$transaction->process();
}
}
if ($this->result->isSuccess()) {
if (method_exists($this->controller, 'getForm')) {
$this->controller->getForm()->getSessionContainer()->destroy();
}
$url = REL_ROOT_URL . "/thanks?id=" . $this->invoice->getSecureId('THANKS');
$this->callback($this->onSuccess);
$this->controller->redirectLocation($url);
// no return
// Am_Exception_Redirect only for APPLICATION_ENV = 'testing'
} elseif ($this->result->isAction()) {
if (method_exists($this->controller, 'getForm')) {
$this->controller->getForm()->getSessionContainer()->destroy();
}
$this->callback($this->onAction);
$this->result->getAction()->process($this->controller);
// no return
// Am_Exception_Redirect only for APPLICATION_ENV = 'testing'
} else {
// ($result->isFailure()) {
$this->callback($this->onFailure);
}
return $this->result;
}