Модули


Модули - основная структура для работы системы. Их добавление осуществляется в папку modules

Структура папок модуля:

  • classes - классы для модуля;
  • handle - событие модулей;
  • tpl - шаблон модуля;
  • css - стили для модуля;
  • js - скрипты для модуля;
  • DB.php - структура базы данных, для модуля;
  • Module.php - файл настройки модуля;

Пустой шаблон модуля: Скачать

 

Имеющиеся ивенты.

 

Для каждого модуля есть отдельный файл отслеживания ивентов. Он находится в
[имя_модуля] /handle/RouteHandler[имя_модуля].php. Как пример:
modules/SeoControls/handle/RouteHandlerSeoControls.php

  • /miwix-admin/core/event/events/AfterCartOrderEvent() - событие вызывается после формирования заказа, данное событие может быть использовано для платежных систем
  • /miwix-admin/core/event/events/AfterResponseEvent() - выполняется после отрисовки шаблона.
  • /miwix-admin/core/event/events/BeforeRequestEvent() - событие выполняется в самом начале кода после проверки всех входных данных.
  • /miwix-admin/core/event/events/BeforeResponseEvent() - выполняется до отрисовки шаблона.
  • /miwix-admin/core/event/events/CartAddProductEvent() - выполняется перед добавлением в корзину товара.
  • /miwix-admin/core/event/events/CartOrderEvent() - выполняется, если корзина не пустая, перед формированием писем и заказа.
  • /miwix-admin/core/event/events/CartRemoveProductEvent() - выполняется перед удалением из корзины товара.
  • /miwix-admin/core/event/events/CartUpdateProductEvent() - выполняется перед обновлением товара в корзине.
  • /miwix-admin/core/event/events/ChunkRenderEvent() - выполняется при рендеринге чанка.
  • /miwix-admin/core/event/events/GetRequestEvent() - выполняется после проверки данных GET.
  • /miwix-admin/core/event/events/ImageAfterUploadEvent() - выполняется при загрузке картинки.
  • /miwix-admin/core/event/events/RedirectEvent() - выполняется, если произошла ошибка 404.
  • /miwix-admin/core/event/events/ResultPayEvent() - выполняется, если пришел ответ от платежной системы.
  • /miwix-admin/core/event/events/RouteEvent() - выполняется во время роутинга.
  • /miwix-admin/core/event/events/TemplateRenderEvent() - выполняется при отрисовки шаблона.
  • /miwix-admin/core/event/events/UpdateYandexStore() - выполняется после отчистки КЕШ.
  • /miwix-admin/core/event/events/BeforeRenderAdminEvent() - вызывается 1 раз, и только в этом модуле.
  • /miwix-admin/core/event/events/onRenderTemplateEvent() - добавляет новый подраздел для шабланизации. $e->getVarList('r'); вернет все переменные из текущего шаблона.

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

Важно!!! Все события, кроме RouteEvent, могут вызвать несколько модулей.

В handller'е модуля прописываются все необходимые события для дальнейших действий Вашего модуля, и важно прописывать префикс on к событию, чтобы событие отработало. Важно также знать, когда и где вызывается событие, чтобы правильно и корректно обрабатывать событие. Пример вызова события на событие ResultPayEvent

public function onResultPayEvent($e) {
	// тут описывается логика события
}