1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
CollabLastActivityProvider.php
См. документацию.
1<?php
2
3declare(strict_types=1);
4
5namespace Bitrix\Socialnetwork\Collab\Provider;
6
7use Bitrix\Socialnetwork\Collab\Activity\LastActivity;
8use Bitrix\Socialnetwork\Collab\Collab;
9use Bitrix\Socialnetwork\Collab\Internals\CollabLastActivityTable;
10use Bitrix\Socialnetwork\Helper\InstanceTrait;
11
13{
14 use InstanceTrait;
15
16 public function get(int $userId): ?LastActivity
17 {
18 $query = CollabLastActivityTable::query()
19 ->setSelect(['USER_ID', 'COLLAB_ID', 'ACTIVITY_DATE'])
20 ->where('MEMBER.USER_ID', $userId);
21
22 $entity = $query->exec()->fetchObject();
23
24 if ($entity === null)
25 {
26 return null;
27 }
28
29 return new LastActivity(
30 $entity->getUserId(),
31 $entity->getCollabId(),
32 $entity->getActivityDate()
33 );
34 }
35
36 public function getCollab(int $userId): ?Collab
37 {
38 $lastActivity = $this->get($userId);
39 if ($lastActivity === null)
40 {
41 return null;
42 }
43
44 return CollabProvider::getInstance()->getCollab($lastActivity->collabId);
45 }
46}
if(!is_object($USER)||! $USER->IsAuthorized()) $userId
Определения check_mail.php:18
$query
Определения get_search.php:11
$entity