1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
LiveFeedProvider.php
См. документацию.
1<?php
2
3namespace Bitrix\Socialnetwork\Space\List\RecentActivity\Collector;
4
5
6use Bitrix\Main\Localization\Loc;
7use Bitrix\Main\Text\Emoji;
8use Bitrix\Socialnetwork\LogTable;
9use Bitrix\Socialnetwork\Space\List\RecentActivity\Collector\Trait\EntityLoadTrait;
10use Bitrix\Socialnetwork\Space\List\RecentActivity\Dictionary;
11
13{
14 use EntityLoadTrait;
15
16 public function isAvailable(): bool
17 {
18 return true;
19 }
20
21 public function getTypeId(): string
22 {
23 return Dictionary::ENTITY_TYPE['livefeed'];
24 }
25
26 protected function fill(): void
27 {
28 $logIds = $this->getEntityIdsFromRecentActivityItems();
29 $logs = [];
30 if (!empty($logIds))
31 {
32 $logs = LogTable::query()
33 ->setSelect(['ID', 'TITLE'])
34 ->whereIn('ID', $logIds)
35 ->fetchAll()
36 ;
37 }
38
39 foreach ($logs as $log)
40 {
41 $this->addEntity((int)$log['ID'], $log);
42 }
43
44 foreach ($this->recentActivityDataItems as $item)
45 {
46 $log = $this->getEntity($this->getEntityIdFromRecentActivityItem($item));
47
48 if (empty($log))
49 {
50 continue;
51 }
52
53 $message = Loc::getMessage(
54 'SONET_LIVEFEED_RECENT_ACTIVITY_DESCRIPTION',
55 ['#CONTENT#' => Emoji::decode($log['TITLE'])],
56 );
57 $item->setDescription($message);
58 }
59 }
60}
$message
Определения payment.php:8