Обновление Conference Manager v2.0
Что нового
Безопасность
- Токен бота теперь хранится в `.env` файле, а не захардкожен в коде
- Убраны все `global` переменные - теперь всё через модули
Автоматическое снятие наказаний
- Бот теперь сам проверяет истекшие баны, муты и выги каждую минуту
- Автоматически разбанивает, снимает мут и виг когда время выходит
- Автоматически выключает режим тишины по таймеру
Исправлены критические баги
- `/filter` больше не стирает все настройки чата при добавлении слова
- `/clearchat` теперь реально удаляет сообщения, а не работал с фейковыми ID
- `/editowner` больше не сбрасывает настройки чата
- `/start` теперь выдаёт ошибку если вызван не владельцем чата
Проверки прав
- Добавлена проверка владельца чата - нельзя забанить/кикнуть/замутить владельца
- `/silence` теперь только для Ст. Администратора (60+), раньше был доступен любому модеру
- `/filter` теперь только для Администратора (40+)
- `/vig` и `/unvig` теперь только для Ст. Администратора (60+)
- `/rkick` теперь только для Администратора (40+)
- `/clear` теперь только для Ст. Администратора (60+)
- `/stitle` и `/rtitle` теперь только для Администратора (40+)
- `/setpublic`, `/removepublic`, `/checkpublic` теперь только для Владельца (100)
- `/newpull`, `/pull`, `/removepull` теперь только для Владельца (100)
- `/editcmd` теперь только для Владельца (100)
- `/demote` и `/роль` теперь только для Владельца (100)
- `/mention` и `/mentionlist` теперь только для Администратора (40+)
- Добавлены сообщения об ошибке когда нет прав (раньше молча игнорировало)
Логирование
- Все модераторские команды теперь пишут в таблицу `logs`
- Можно посмотреть кто, когда и что делал через `/logs`
Оптимизация
- `/online` - batch запросы к API вместо N+1 (было по одному запросу на каждого участника)
- `/mtop` - batch запросы для получения имён
- `/nonicks`, `/nicklist`, `/mentionlist`, `/getbynick`, `/inactive`, `/warnlist` - аналогично
- Русские алиасы команд теперь работают (были прописаны но не подключались)
Убрано
- `handlers/cmds.js` - не использовался
- Старые utility скрипты (`check_chats.js`, `check_reg.js`, `fix_rights.js`, `fix_rights2.js`, `test_token.js`, `test_exports.js`)
- `global.botId` и `global.vk`
Мелочи
- `/ban` теперь показывает ошибки при молчаливом отказе
- `/warn` теперь автоматически банит при 3 варнах (добавляется запись в bans)
- `/ban` callback кнопки работают стабильнее
- Все команды используют `context.vk` вместо `global.vk`
- `shared.js` модуль для передачи экземпляра VK между файлами