Открыть доступ на раздел админ панели для вендора

Доброго времени суток!
Есть раздел в админ панели, этот раздел добавлен новым модулем.
Хотел открыть доступ в этот раздел для вендоров, т.е. чтобы в панели вендоров отображался тот же пункт меню и была возможность открыть этот раздел.
насколько я понял из разных источников делать это нужно через файл /permissions/vendor_multivendor.php.
Такой файл я добавил и он подключается(проверял через fn_print_die()), но содержимое я видимо формирую не правильно.

Копировал в этот файл содержимое файла admin.post.php, но это не помогло.
$schema[‘collections’] = [
‘permissions’ => ‘collections.manage’,
];

Пробовал структуру типа:
$schema = array(
‘collections’ => array (
‘modes’ => array (
‘manage’ => array (
‘permissions’ => true,
),
),
),
);

Подскажите, как открыть доступ к новому контроллеру(он тоже в модуле) вендорам, а так же где можно об этом по подробнее почитать?

И еще, можно ли открыть доступ не ко всему контроллеру, а только к определенным модам?

Посмотрите другие файлы с правами для вендоров

попробуйте так в /permissions/vendor_multivendor.post.php

$schema['controllers']['collections'] = array(
     'permissions' => true,
);

И проверьте, чтобы в конце файла стояло

return $schema;

Спасибо большое, получилось!
Когда делаю вот так:
$schema[‘controllers’] = array(
‘collections’ => array (
‘modes’ => array (
‘manage’ => array (
‘permissions’ => true,
),
),
),
);

То срабатывает ограничение по моду, но пр этом выводт сообщение: “Внимание, доступ ограничен”, это как понимать? что-то работает не так, или это сообщение так и должно выводится, когда я даю досту только к этому моду?

если вам нужен только один мод то попробуйте так

$schema['controllers']['collections']['modes']['manage']['permissions'] = true;

так вы перезаписываете весь массив [‘collections’] только на ваши данные и убиваете данные о привилегиях от ядра и других модулей

Точно, спасибо!

Вопрос в дополнение.
Всё, права я ограничил на те моды? которые мне нужны, теперь в разделе вендоров у меня выводятся списки коллекций, так же как и у админа, но нужно еще немного сузить права.
Дело вот в чем, что коллекци у всех вендоров свои, но у меня сейчас выводится общий список коллекций для всех вендоров, т.е. один вендор видит и свои и чужие коллекции, как и админ, а нужно показывать ему только его коллекции.

Я просто сделал правку в контроллере, который отвечает за вывод списка коллекций, и сделал ограничение (добавил условие в запрос к БД) в случае если пользователь является вендором
Tygh::$app['session']['auth']['user_type'] == UserTypes::VENDOR

Правильно ли это, или есть возможность так тонко настроить права доступа в $schema?

обычно для этого используют company_id
добавьте столбец в таблицу коллекций в БД и сохраняйте туда company_id того вендора который ее создал, на него же сделайте условие получения из БД