1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
CollabAddEventListener.php
См. документацию.
1<?php
2
3declare(strict_types=1);
4
5namespace Bitrix\Socialnetwork\Collab\Onboarding\Event\Type;
6
7use Bitrix\Main\EventResult;
8use Bitrix\Socialnetwork\Collab\Control\Event\CollabAddEvent;
9use Bitrix\Socialnetwork\Collab\Onboarding\Entity\JobCollection;
10use Bitrix\Socialnetwork\Collab\Onboarding\Entity\JobFactory;
11use Bitrix\Socialnetwork\Collab\Onboarding\Internals\Type;
12
14{
16 {
17 $collab = $event->getCollab();
18 $collabId = $collab->getId();
19
20 $members = $collab->getUserMemberIds();
21
22 $jobCollection = (count($members) === 1)
23 ? $this->getJobsMemberNotInvited($collabId, $event->getCommand()->getInitiatorId())
24 : $this->getJobsFirstMemberAdded($collabId, $event->getCommand()->getInitiatorId())
25 ;
26
27 $this->queueService->add($jobCollection);
28
29 return new EventResult(EventResult::SUCCESS);
30 }
31
32 private function getJobsMemberNotInvited(int $collabId, int $userId): JobCollection
33 {
34 return new JobCollection(
35 JobFactory::create($collabId, $userId, Type::MembersNotInvitedOneDay->value),
36 JobFactory::create($collabId, $userId, Type::MembersNotInvitedTwoDays->value),
37 JobFactory::create($collabId, $userId, Type::MembersNotInvitedFourDays->value),
38 JobFactory::create($collabId, $userId, Type::MembersNotInvitedFiveDays->value),
39 );
40 }
41
42 private function getJobsFirstMemberAdded(int $collabId, int $userId): JobCollection
43 {
44 return new JobCollection(
45 JobFactory::create($collabId, $userId, Type::StartChattingOneDay->value),
46 JobFactory::create($collabId, $userId, Type::CreatedTaskOrMeetingOrFileThreeDays->value),
47 );
48 }
49}
if(!is_object($USER)||! $USER->IsAuthorized()) $userId
Определения check_mail.php:18
$event
Определения prolog_after.php:141
</p ></td >< td valign=top style='border-top:none;border-left:none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;padding:0cm 2.0pt 0cm 2.0pt;height:9.0pt'>< p class=Normal align=center style='margin:0cm;margin-bottom:.0001pt;text-align:center;line-height:normal'>< a name=ТекстовоеПоле54 ></a ><?=($taxRate > count( $arTaxList) > 0) ? $taxRate."%"
Определения waybill.php:936