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

Синхронизация поля статус на странице всех модулей с полем статус в отдельном модуле.


Recommended Posts

Добрый день, месяц назад решил попробовать создать модуль "Квиз" (Опросник) для своего сайта. Написал, всё работает, но никак не могу понять как синхронизировать поле статуса модуля на странице всех модулей в админке с полем статус в самом модуле.

То есть мне нужно, чтобы если я отключаю, или включаю модуль, это отображалось на странице всех модулей в советующем поле. 

Хотелось бы понять как это сделать. Буду благодарен, если те, кто занимается созданием модулей для opencart 3, подскажут как решить данную проблему.

Screenshot_1.thumb.jpg.c41d56478b965e22b763cda97da1f3ac.jpg

 

Змінено користувачем Slavik7
Надіслати
Поділитися на інших сайтах


Искал в интернете, на других ресурсах, но такой информации не нашел. Также разбирал код других модулей в которых синхронизация работает, но так и не понял каким образом оно работает.

 

В принципе отсутствие синхронизации, никак не влияет на работоспособность модуля, но для полноты, хотелось бы решить эту проблему.

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


вам сюда

 

'status'    => $this->config->get('module_' . $extension . '_status') ? $this->language->get('text_enabled') : $this->language->get('text_disabled'),

 

но, судя по всему все модули, которые имеют множественные разные id будут с косячком

 

 

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

В других модулях я все время вижу такие записи:

В методе index() внутри проверки пришел ли post запрос:
$this->model_setting_setting->editSetting('module_name', $this->request->post);

В методе install():
$this->load->model('setting/event');
$this->model_setting_event->addEvent('module_name', 'catalog/view/common/header/after', 'extension/module/module_name');

В методе uninstall():
$this->load->model('setting/event');
$this->model_setting_event->deleteEventByCode('module_name');

То есть каждый модуль создаёт новую запись в таблице setting в которую вносит id магазина, код, ключ, значение и serialized. Но я не могу понять, а как потом понимает движок, с какого поля в модуле нужно брать значение.

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


10.05.2022 в 19:57, spectre сказал:

'status'    => $this->config->get('module_' . $extension . '_status') ? $this->language->get('text_enabled') : $this->language->get('text_disabled'),

Не совсем понял куда этот код нужно вставить.

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


10.05.2022 в 19:57, spectre сказал:

'status'    => $this->config->get('module_' . $extension . '_status') ? $this->language->get('text_enabled') : $this->language->get('text_disabled'),

А, понял, эта строчка кода с файла event.php в контроллере админ панели. На уровне opencarta работает всё корректно. Просто дело в том, что в написанном мной модуле статус все время отображается как "Отключено". Я не могу понять что нужно дописать в модуль чтобы поле статуса было синхронизировано с статусом моего модуля.

Повторюсь, что модуль работает, просто изменение статуса не отображаются на странице admin/index.php?route=marketplace/extension. 

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


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

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

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

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

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

Вхід

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

Вхід зараз

×
×
  • Створити...

Important Information

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