3namespace Bitrix\Socialnetwork\Internals\EventService\Processors;
5use Bitrix\Main\Config\Option;
6use Bitrix\Socialnetwork\Internals\EventService\Event;
7use Bitrix\Socialnetwork\Internals\EventService\EventCollection;
8use Bitrix\Socialnetwork\Internals\EventService\EventDictionary;
9use Bitrix\Socialnetwork\Internals\EventService\Queue\Queue;
10use Bitrix\Socialnetwork\Internals\EventService\Recepients\Recepient;
11use Bitrix\Socialnetwork\Internals\LiveFeed;
12use Bitrix\Socialnetwork\Internals\Space;
13use Bitrix\Socialnetwork\Space\List\RecentActivity;
14use Bitrix\Socialnetwork\Space\Role;
29 return (
int) Option::get(
'socialnetwork',
'space_processor_step_limit', 100);
41 $isSpaceProcessorDisabled = Option::get(
'socialnetwork',
'space_processor_disabled',
'N') ===
'Y';
43 if ($isSpaceFeatureDisabled)
48 if ($isSpaceProcessorDisabled)
61 $this->processEvent(
$event);
72 $this->roleService->processEvent(
$event, $recipient);
76 private function processEvent(
Event $event,
int $offset = 0,
bool $processInQueue =
false): void
79 $recipients =
$event->getRecepients()->fetch($limit, $offset);
81 foreach ($recipients as $recipient)
85 $this->queue->add(
$event, $recipient);
95 if (
count($recipients) >= $limit)
97 $processInQueue =
true;
98 $offset = $offset + $limit;
99 $this->processEvent(
$event, $offset, $processInQueue);
const SPACE_EVENTS_SUPPORTED
processEventForUser(Event $event, Recepient $recipient)
static isAvailable(bool $isPublic=false)
</p ></td >< td valign=top style='border-top:none;border-left:none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;padding:0cm 2.0pt 0cm 2.0pt;height:9.0pt'>< p class=Normal align=center style='margin:0cm;margin-bottom:.0001pt;text-align:center;line-height:normal'>< a name=ТекстовоеПоле54 ></a ><?=($taxRate > count( $arTaxList) > 0) ? $taxRate."%"