15 $currentUser = $this->
getAction()->getCurrentUser();
16 $currentUserId = (int)(isset($currentUser) ? $currentUser->getId() :
null);
18 if ($this->
getAction()->getName() ===
'setOwner' || $this->
getAction()->getName() ===
'setowner')
21 $arguments = $this->
getAction()->getArguments();
25 $chat = $arguments[
'chat'];
27 if (!isset($arguments[
'ownerId']))
30 'Parameter ownerId is required',
33 return new EventResult(EventResult::ERROR,
null,
null, $this);
36 if ($chat->getAuthorId() === $currentUserId)
41 $manageSettings = $chat->getManageSettings();
42 if ($manageSettings === Chat::MANAGE_RIGHTS_MANAGERS)
44 $selfRelation = $chat->getSelfRelation();
45 if ($selfRelation->getManager())
55 return new EventResult(EventResult::ERROR,
null,
null, $this);
onBeforeAction(Event $event)