1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
LatestActivity.php
См. документацию.
1<?php
2
3namespace Bitrix\Socialnetwork\Space\List\RecentActivity;
4
5use Bitrix\Socialnetwork\Internals\Space\RecentActivity\SpaceUserLatestActivityTable;
6use Bitrix\Socialnetwork\Space\List\RecentActivity\Item\LatestActivityData;
7
8final class LatestActivity
9{
10 public function save(LatestActivityData $latestActivityData): void
11 {
12 $insertFields = [
13 'USER_ID' => $latestActivityData->getUserId(),
14 'SPACE_ID' => $latestActivityData->getSpaceId(),
15 'ACTIVITY_ID' => $latestActivityData->getActivityId(),
16 ];
17 $updateFields = [
18 'ACTIVITY_ID' => $latestActivityData->getActivityId(),
19 ];
20
21 SpaceUserLatestActivityTable::merge($insertFields, $updateFields);
22 }
23
25 public function getByUserId(int $userId, array $activityIds): array
26 {
27 $queryResult = SpaceUserLatestActivityTable::query()
28 ->setSelect(['*'])
29 ->where('USER_ID', $userId)
30 ->whereIn('ACTIVITY_ID', $activityIds)
31 ->exec()
32 ->fetchAll()
33 ;
34
35 $latestActivities = [];
36 foreach ($queryResult as $item)
37 {
38 $latestActivities[] = LatestActivityData::createFromQueryResult($item);
39 }
40
41 return $latestActivities;
42 }
43
45 public function getBySpaceId(int $spaceId, array $activityIds): array
46 {
47 $queryResult = SpaceUserLatestActivityTable::query()
48 ->setSelect(['*'])
49 ->where('SPACE_ID', $spaceId)
50 ->whereIn('ACTIVITY_ID', $activityIds)
51 ->exec()
52 ->fetchAll()
53 ;
54
55 $latestActivities = [];
56 foreach ($queryResult as $item)
57 {
58 $latestActivities[] = LatestActivityData::createFromQueryResult($item);
59 }
60
61 return $latestActivities;
62 }
63
64 public function delete(int $id): void
65 {
66 SpaceUserLatestActivityTable::delete($id);
67 }
68
69 public function deleteMulti(array $idsToDelete): void
70 {
71 $idChunks = array_chunk($idsToDelete, 500);
72
73 foreach ($idChunks as $idChunk)
74 {
75 SpaceUserLatestActivityTable::deleteByFilter(['ID' => $idChunk]);
76 }
77 }
78
79 public function update(LatestActivityData $latestActivityData): void
80 {
81 SpaceUserLatestActivityTable::update($latestActivityData->getId(),[
82 'ACTIVITY_ID' => $latestActivityData->getActivityId(),
83 ]);
84 }
85}
if(!is_object($USER)||! $USER->IsAuthorized()) $userId
Определения check_mail.php:18
save(LatestActivityData $latestActivityData)
Определения LatestActivity.php:10
update(LatestActivityData $latestActivityData)
Определения LatestActivity.php:79
getBySpaceId(int $spaceId, array $activityIds)
Определения LatestActivity.php:45
getByUserId(int $userId, array $activityIds)
Определения LatestActivity.php:25
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804