Как вызвать метод внутри компонента в OctoberCMS?

Я не знаю, возможно ли это или это полное безумие, но я пытаюсь выполнить метод PHP из вызова AJAX, используя OctoberCMS Ajax Framework(Я предполагаю, что это использует jQuery за этим) и не работает, потому что я никогда не получаю перенаправление на сайт PayPal. PHP-код, который я пытаюсь заставить работать, это:

protected function onExecutePurchaseMethod()
{
Omnipay::gateway('PayPal_Express');

$params = [
'username'  => $this->username,
'password'  => $this->password,
'signature' => $this->signature,
'testMode'  => $this->sandboxMode,
'amount'    => Session::get('amountToReload'),
'cancelUrl' => url( 'payment/step4', "", $secure = null ),
'returnUrl' => url( 'payment/step2', "", $secure = null ),
'currency'  => 'USD'
];

$response = Omnipay::purchase($params)->send();

if ($response->isSuccessful()) {
var_dump($response);
} else {
var_dump($response->getMessage());
}
}

Что происходит, поскольку ни одно перенаправление на PayPal не выполняется, а страница много раз зависает, заставляя меня закрыть браузер и открыть снова, ни один метод не выполняется и никаких видимых ошибок. Можно сделать то, что я пытаюсь сделать? Разве это не безумие? Если это возможно, где моя ошибка?

В качестве дополнительной информации я использую Barryvdh Laravel-omnipay пакет для ручки Omnipay изнутри Laravel.

0

Решение

После краткого просмотра документации, я думаю, что вам не хватает обязательного поля для purchase() метод. Я считаю, что вам нужно card параметр (даже если он неверный), чтобы получить его для обработки.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]