Модули
Модули - основная структура для работы системы. Их добавление осуществляется в папку 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) {
// тут описывается логика события
}