1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
CheckChatManageMessages.php
См. документацию.
1<?php
2
3namespace Bitrix\Im\V2\Controller\Filter;
4
5use Bitrix\Im\V2\Chat;
6use Bitrix\Im\V2\Chat\ChatError;
7use Bitrix\Main\Engine\ActionFilter\Base;
8use Bitrix\Main\Engine\Response\Converter;
9use Bitrix\Main\Event;
10use Bitrix\Main\EventResult;
11
13{
14 public function onBeforeAction(Event $event)
15 {
16 $arguments = $this->getAction()->getArguments();
17 $arguments['rightsLevel'] = (new Converter(Converter::TO_UPPER))->process($arguments['rightsLevel'] ?? '');
18 $this->getAction()->setArguments($arguments);
19 if (in_array(
20 $arguments['rightsLevel'],
21 [Chat::MANAGE_RIGHTS_NONE, Chat::MANAGE_RIGHTS_MEMBER, Chat::MANAGE_RIGHTS_MANAGERS, Chat::MANAGE_RIGHTS_OWNER],
22 true
23 ))
24 {
25 return null;
26 }
27
28 $this->addError(new ChatError(
30 ));
31 return new EventResult(EventResult::ERROR, null, null, $this);
32 }
33}
const WRONG_PARAMETER
Определения ChatError.php:12
addError(Error $error)
Определения base.php:80
$event
Определения prolog_after.php:141