Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Множество событий в модуле cdek


ArtemPitov

Recommended Posts

Если Вы используете оф. модуль СДЕК и наблюдаете подобную картину 

 

Спойлер

7560363553.png

 

Тогда допишите в admin\controller\extension\shipping\cdek.php внутри метода

public function createOTCTable() {

после 

$this->load->model('extension/event');

 

Удаление событий 

$this->model_extension_event->deleteEvent('cdek_shipping_add_scripts');
$this->model_extension_event->deleteEvent('cdek_shipping_success_order');
$this->model_extension_event->deleteEvent('cdek_shipping_order_create');
$this->model_extension_event->deleteEvent('cdek_shipping_order_history');
$this->model_extension_event->deleteEvent('cdek_shipping_check_tariff_pvz');

После чего зайдите в настройки СДЕКа, готово 

 

Актуально для OC 2.3, на других версиях не проверял 

  • +1 2
Надіслати
Поділитися на інших сайтах

  • ArtemPitov changed the title to Множество событий в модуле cdek
7 минут назад, chukcha сказал:

Я так понимаю, что это после многих инсталяций модуля..

400 инсталляций ?
Это походу 400 заходов в модуль и баг

Надіслати
Поділитися на інших сайтах

9 минут назад, chukcha сказал:

Я так понимаю, что это после многих инсталяций модуля..

нет, это просто зашли в модуль, вышли, при каждом посещении страницы пишет новый event 

Надіслати
Поділитися на інших сайтах

5 минут назад, ArtemPitov сказал:

нет, это просто зашли в модуль, вышли, при каждом посещении страницы пишет новый event 

ППЦ

Надіслати
Поділитися на інших сайтах

7 минут назад, chukcha сказал:

Я так понимаю, что это после многих инсталяций модуля..

Не, это после одной инсталяции, просто во время работы эти события создаются. 

@ArtemPitov , спасибо за информацию! При копировании кода с форума файл начал выпадать в ошибки, но завтра разберусь что не так)

Надіслати
Поділитися на інших сайтах

@iglin скорее всего не так что-то сделали, смотрите внимательнее 

Надіслати
Поділитися на інших сайтах

2 минуты назад, ArtemPitov сказал:

@iglin скорее всего не так что-то сделали, смотрите внимательнее 

Забыл наверное модель подключить

Надіслати
Поділитися на інших сайтах

@chukcha да, скорее всего, я немного не верно написал куда добавить, поправил 

Надіслати
Поділитися на інших сайтах

Вот сюда добавить и все работает как надо

 

Цитата

 

    public function createOTCTable() {
        $sql  = "CREATE TABLE IF NOT EXISTS `" . DB_PREFIX . "order_to_sdek` ( ";
        $sql .= "`order_to_sdek_id` int(11) NOT NULL AUTO_INCREMENT, ";
        $sql .= "`order_id` int(11) NOT NULL, ";
        $sql .= "`cityId` int(11) NOT NULL, ";
        $sql .= "`pvz_code` varchar(255) NOT NULL, ";
        $sql .= "PRIMARY KEY (`order_to_sdek_id`), ";
        $sql .= "UNIQUE KEY `order_id` (`order_id`) ";
        $sql .= ") ENGINE=MyISAM  DEFAULT CHARSET=utf8;";

        $this->db->query($sql);

        $this->load->model('extension/event');

        $this->model_extension_event->deleteEvent('cdek_shipping_add_scripts');
        $this->model_extension_event->deleteEvent('cdek_shipping_success_order');
        $this->model_extension_event->deleteEvent('cdek_shipping_order_create');
        $this->model_extension_event->deleteEvent('cdek_shipping_order_history');
        $this->model_extension_event->deleteEvent('cdek_shipping_check_tariff_pvz');

        $this->model_extension_event->addEvent('cdek_shipping_add_scripts', 'catalog/controller/common/header/before','event/cdekshipping/addScripts');
        $this->model_extension_event->addEvent('cdek_shipping_success_order', 'catalog/controller/checkout/success/before','event/cdekshipping/successOrder');

        $this->model_extension_event->addEvent('cdek_shipping_order_create', 'catalog/model/checkout/order/addOrder/after','event/cdekshipping/orderCreate');

        $this->model_extension_event->addEvent('cdek_shipping_order_history', 'catalog/model/checkout/order/addOrderHistory/before','event/cdekshipping/orderHistory');

        $this->model_extension_event->addEvent('cdek_shipping_check_tariff_pvz', 'catalog/controller/checkout/shipping_method/save/before','event/cdekshipping/checkTariffPvz');
    }

 

 

Надіслати
Поділитися на інших сайтах

10 минут назад, markimax сказал:

Вот сюда добавить и все работает как надо

Аретм поправил..

А вообще-то Это нужно сделать в инстале

а при вызове метода  вообще не трогать события

Надіслати
Поділитися на інших сайтах

@chukcha на сколько я понял, это продукт оф. СДЕК-а, при поддержке рос.опенкарат, баг трекера я не нашел, я попадаю не эту особенность не однократно 

Надіслати
Поділитися на інших сайтах

юзайте шиптор, там сдек вшит уже.. правда не в курсе как дела с регионами обстоят..

 

Надіслати
Поділитися на інших сайтах


12 часов назад, ArtemPitov сказал:

да, скорее всего, я немного не верно написал куда добавить, поправил 

Ага, да и я вчера перед уходом с работы не обратил внимания что модель ниже запускается. Просто вставил как написано и ушёл.

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.