waPayment переопределенный метод payment как-будто не отрабатывает Есть решение
Пытаюсь переопределить вид после нажатия клиентом оформить заказ, так как мне надо выбрать тип оплаты от моей платежной системы на другой странице, но такое ощущение что метод payment даже не вызывается, который я переопределил в классе оплаты своем (от waPayment).
Метод logger в папке записывает логи, а с этого метода не записывает. Так я понимаю, что он не отрабатывает.
template.html
<form id="payment-form" action="{$form_url}" method="post" target="_top"> <div id="payform_payment_type" aria-required="true"> {foreach from=$payment_types key=id item=$type_name} <input type="checkbox" name="{$id}" value="{$type_name}"/> {/foreach} </div> <input type="submit" value="Оплатить заказ"/> </form>
pufpayPayment.class.php
public function payment($payment_form_data, $order_data, $auto_submit = false) { self::logger("Payment"); $res = $this->sendRequest("GET", "payment-service/view/$this->payment_service_id"); $paymentTypes = []; if($res["_statusCode"] == 200) { $paymentTypes = array_column($res["data"]["payment_types"], "type_name", "type_id"); } $view = wa()->getView(); $view->assign("payment_types", $paymentTypes); return $view->fetch("/templates/payment.html"); }
Что делаю не так?
4 ответа
Метод payment(..) вызывается, когда выбран этот способ оплаты, заказ находится в статусе, на котором доступна оплата, а клиент - на странице, где должна быть кнопка (либо checkout.suceess.html, либо my.order.html).
Также сам плагин должен быть включён в настройках магазина в этот момент.
Попробуйте для начала оставить только logger в этом методе. Как минимум, ошибка в вызове
Файл по заданному пути вряд ли существует, т.к. путь от корня сервера.
Метод при выборе оплаты выдавать доп поля долежн или после нажатия подтвердить заказ ? pic1
Убрал все кроме логгера, все равно не отрабатывает.
pic2
Метод отрабатывает вот тут https://yadi.sk/i/cJDfqeNVXtCHVA но не отрабатывает потому, что там написано почему.
Нужно в allowedCurrency() добавить доступные валюты.
действительно, прошу прощения за невнимательность. Спасибо.