Всем ку.
Пишу модуль для одной службы доставки, для Opencart 2.0 и 2.3 все норм, а вот с 3.0 возникли трудности.
Итак, суть: нужно перехватить событие выбора доставки, и по условию либо вывести эррор, либо продолжить, перейти к выбору оплаты. Как реализовывал в 2.3. Через ocmod правка в файл catalog\view\theme\default\template\checkout\checkout.tpl после строки $('#button-shipping-method').button('loading');
Такое прокатывало в 2.0 и 2.3 версиях, но в 3.0 это прокатывает до момента подтверждения выбора оплаты, выбивает ошибку Warning: Payment method required!.
Судя по методу save , который вызывается после подтверждения выбора оплаты в контроллере checkout\payment_method.php, такая ошибка возвращается в 2-х случаях, либо не ушел в POST payment_method, либо в сессии не существует payment_method (еще такая ошибка может быть связана с геозонами, гугл подсказал, пока я не стал копать в коде, и не понял, что при разных геозонах доставки и оплаты не будет выводиться оплата, если геозоны прописаны в модели)
я работаю в предыдущем куске кода с сессиями, но payment_methods массив я не трогаю совсем и не затираю, плюсом повторюсь, такое работает в 2.0 и 2.3 версиях, в 3.0 ошибается.
Может кто-то сталкивался с подобным, есть какие идеи как победить?