controller_before.*

Срабатывает перед выполнением указанного PHP-контроллера.

Команда
Входящие параметры
передаются по ссылке
$params['controller'] waViewController Экземпляр класса контроллера.
$params['params'] array|null Параметры, переданные в класс контроллера.
… код плагина …
Результат работы плагина
%plugin_id%

Плагин может вернуть значение false, чтобы предотвратить выполнение контроллера.

Команда

Пример кода плагина

PHP

/**
 * 'handlers' => [
 *     'controller_before.teamProfileAction' => 'controllerBeforeTeamProfileAction',
 * ],
 */
public function controllerBeforeTeamProfileAction(&$params)
{
    if (!teamMyPlugin::canViewUserProfile()) {
        wa()->getResponse()->redirect(wa()->getAppUrl('team'));
        return false;
    }
}