1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
SendCollabLeaveMessageStepper.php
См. документацию.
1<?php
2
3declare(strict_types=1);
4
6
10
12{
13 protected const LIMIT = 50;
14
15 protected const FIRED_ID_INDEX = 0;
16 protected const WHO_FIRED_ID_INDEX = 1;
17 protected const COLLABS_INDEX = 2;
18
19 protected static $moduleId = 'socialnetwork';
20
21 public function execute(array &$option): bool
22 {
23 $parameters = $this->getOuterParams();
24
25 $firedId = $option['firedId'] ?? $parameters[static::FIRED_ID_INDEX];
26 $whoFiredId = $option['whoFiredId'] ?? $parameters[static::WHO_FIRED_ID_INDEX];
27 $collabs = $option['collabs'] ?? $parameters[static::COLLABS_INDEX];
28
29 $collabs = unserialize($collabs, ['allowed_classes' => false]);
30
31 if (empty($collabs) || $firedId <= 0 || $whoFiredId <= 0)
32 {
33 return static::FINISH_EXECUTION;
34 }
35
36 $collabSlice = array_splice($collabs, 0, static::LIMIT);
37
38 $option['firedId'] = $firedId;
39 $option['whoFiredId'] = $whoFiredId;
40 $option['collabs'] = serialize($collabs);
41
42 $factory = ActionMessageFactory::getInstance();
43 foreach ($collabSlice as $collabId)
44 {
45 $factory->getActionMessage(ActionType::ExcludeUser, $collabId, $whoFiredId)
46 ->send([$firedId]);
47 }
48
49 return static::CONTINUE_EXECUTION;
50 }
51}
getOuterParams()
Определения stepper.php:212
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
$option
Определения options.php:1711