24 lines
1.1 KiB
JavaScript
24 lines
1.1 KiB
JavaScript
// rights.js
|
||
|
||
/**
|
||
* Проверка, есть ли у пользователя доступ к боту по его имени
|
||
* @param {Array<Object>} availableBots — массив объектов ботов { name, commands, … }
|
||
* @param {string} botName — название бота для проверки
|
||
* @returns {boolean}
|
||
*/
|
||
export function checkUserBotRights(availableBots, botName) {
|
||
return availableBots.some(b => b.name === botName);
|
||
}
|
||
|
||
/**
|
||
* Проверка, есть ли у пользователя доступ к конкретной команде бота
|
||
* @param {Array<Object>} availableBots — массив объектов ботов { name, commands, … }
|
||
* @param {string} botName — название бота
|
||
* @param {string} commandName — команда (поле `command`) для проверки
|
||
* @returns {boolean}
|
||
*/
|
||
export function checkUserCommandRights(availableBots, botName, commandName) {
|
||
const bot = availableBots.find(b => b.name === botName);
|
||
return !!(bot && bot.commands.some(cmd => cmd.command === commandName));
|
||
}
|