1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
taskprovider.php
См. документацию.
1<?php
2
3namespace Bitrix\Socialnetwork\Integration\Tasks\RecentActivity;
4
5
6use Bitrix\Main\Loader;
7use Bitrix\Main\Localization\Loc;
8use Bitrix\Main\Text\Emoji;
9use Bitrix\Socialnetwork\Space\List\RecentActivity\Collector\AbstractProvider;
10use Bitrix\Socialnetwork\Space\List\RecentActivity\Collector\Trait\EntityLoadTrait;
11use Bitrix\Socialnetwork\Space\List\RecentActivity\Dictionary;
12use Bitrix\Tasks\Internals\Registry\TaskRegistry;
13
15{
16 use EntityLoadTrait;
17
18 public function isAvailable(): bool
19 {
20 return Loader::includeModule('tasks');
21 }
22
23 public function getTypeId(): string
24 {
25 return Dictionary::ENTITY_TYPE['task'];
26 }
27
28 protected function fill(): void
29 {
30 $taskIds = $this->getEntityIdsFromRecentActivityItems();
31 $registry = TaskRegistry::getInstance();
32 $registry->load($taskIds);
33
34 foreach ($taskIds as $taskId)
35 {
36 $this->addEntity($taskId, $registry->getObject($taskId));
37 }
38
39 foreach ($this->recentActivityDataItems as $item)
40 {
41 $task = $this->getEntity($this->getEntityIdFromRecentActivityItem($item));
42 if (empty($task))
43 {
44 continue;
45 }
46
47 $message = Loc::getMessage(
48 'SONET_TASK_RECENT_ACTIVITY_DESCRIPTION',
49 ['#CONTENT#' => Emoji::decode($task->getTitle() ?? '')],
50 );
51 $item->setDescription($message);
52 }
53 }
54}
$message
Определения payment.php:8