for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace PayumTW\Ezship\Action;
use Payum\Core\Request\Convert;
use Payum\Core\Action\ActionInterface;
use Payum\Core\Bridge\Spl\ArrayObject;
use Payum\Core\Model\PaymentInterface;
use Payum\Core\Exception\RequestNotSupportedException;
class ConvertPaymentAction implements ActionInterface
{
/**
* {@inheritdoc}
*
* @param Convert $request
*/
public function execute($request)
RequestNotSupportedException::assertSupports($this, $request);
/** @var PaymentInterface $payment */
$payment = $request->getSource();
$details = ArrayObject::ensureArrayObject($payment->getDetails());
$details['order_id'] = $payment->getNumber();
$details['order_amount'] = $payment->getTotalAmount();
$details['rv_email'] = $payment->getClientEmail();
// CVS
$details['process_id'] = $details['order_id'];
$request->setResult((array) $details);
}
public function supports($request)
return
$request instanceof Convert &&
$request->getSource() instanceof PaymentInterface &&
$request->getTo() == 'array';