Вызов плагина из отчетов Есть решение

Добрый день! Подскажите, как правильно вызывать плагин из вкладки Отчеты. В документации у вас указан общий вызов. Перепробованые все возможные способы
?action=reports#/plugin=pluginid/
?action=reports#/hash=pluginid/
?action=reports#/pluginid/


2 ответа

  • 1
    Леонид Вакуленко Webasyst 8 мая 2015 07:26 # Решение

    Чтобы сделать, как вы хотите, план примерно такой. Нужно среагировать на изменение #hash части в URL браузера. Если хэш нужный, то загрузить HTML из своего контроллера и заменить кусок страницы на только что загруженный HTML.

    Предположим, вы хотите, чтобы ваша страница открывалась по хэшу #/mycoolreport/

    Нужно во время генерации лэйаута (т.е. по хуку backend_reports) добавить на страницу такой JS

    $.reports.mycoolreportAction = function() {
        // ...
    };

    Тогда существующий внутренний механизм отчётов вызовет эту функцию, когда #hash поменяется на нужный нам. Функция должна загрузить HTML из PHP-контроллера в вашем плагине и вставить в область основного контента. JS часть очень простая, и пример можно посмотреть в файле shop/js/reports.js - например, метод cohortsAction.

  • 2
    Алексей Webasyst 6 мая 2015 07:41 #

    Вызов конкретного действия - ?plugin=PLUGIN&action=ACTION в этом случае выполнится действие ACTION прописанное в PLUGIN.

    Или же сразу прописать нужный текст или ссылку через хук http://www.webasyst.ru/developers/docs/plugins/hooks/shop/backend_reports/

    • +1
      Евгений Евгений 6 мая 2015 07:43 #

      Идея в том, чтобы полностью использовать уже готовый layout вкладки отчеты. Например такая возможность есть в во вкладке продукты, или в приложении Сайт (в боковом меню).

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите