1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
DeleteMemberLogTrait.php
См. документацию.
1<?php
2
3declare(strict_types=1);
4
5namespace Bitrix\Socialnetwork\Collab\Control\Handler\Trait;
6
7use Bitrix\Main\DI\ServiceLocator;
8use Bitrix\Socialnetwork\Collab\Log\CollabLogEntryCollection;
9use Bitrix\Socialnetwork\Collab\Log\Entry\RemoveUserFromCollabLogEntry;
10use Bitrix\Socialnetwork\Control\Handler\HandlerResult;
11use Bitrix\Socialnetwork\Item\Workgroup;
12use Bitrix\Socialnetwork\UserToGroupTable;
13
14trait DeleteMemberLogTrait
15{
16 private function writeDeleteMemberLog(array $deletedMembers, Workgroup $entityAfter, int $initiatorId): HandlerResult
17 {
18 $handlerResult = new HandlerResult();
19
20 if (empty($deletedMembers))
21 {
22 return $handlerResult;
23 }
24
25 if (!$entityAfter->isCollab())
26 {
27 return $handlerResult;
28 }
29
30 $ownerId = $entityAfter->getOwnerId();
31 $moderators = $entityAfter->getModeratorMemberIds();
32
33 $collection = new CollabLogEntryCollection();
34
35 foreach ($deletedMembers as $deletedMember)
36 {
38
39 if ($deletedMember === $ownerId)
40 {
42 }
43 elseif (in_array($deletedMember, $moderators, true))
44 {
46 }
47
48 $logEntry = new RemoveUserFromCollabLogEntry(userId: $deletedMember, collabId: $entityAfter->getId());
49 $logEntry->setRole($role);
50 $logEntry->setInitiator($initiatorId);
51 $collection->add($logEntry);
52 }
53
54 $service = ServiceLocator::getInstance()->get('socialnetwork.collab.log.service');
55 $service->saveCollection($collection);
56
57 return $handlerResult;
58 }
59}
Определения CollabLogEntryCollection.php:9
Определения RemoveUserFromCollabLogEntry.php:8
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
$service
Определения payment.php:18
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)
Определения prolog_main_admin.php:393