• Модуль: pull
  • Путь к файлу: ~/bitrix/modules/pull/classes/general/pull_watch.php
  • Класс: CAllPullWatch
  • Вызов: CAllPullWatch::AddToStack
static function AddToStack($tag, $parameters, $channelType = CPullChannel::TYPE_PRIVATE)
{
	if (empty($tag))
	{
		return false;
	}

	$query = BitrixPullModelWatchTable::query();
	$query->addSelect('USER_ID');
	if (is_array($tag))
	{
		$query->whereIn('TAG', $tag);
	}
	else
	{
		$query->where('TAG', $tag);
	}

	if (isset($parameters['skip_users']) && !empty($parameters['skip_users']) && is_array($parameters['skip_users']))
	{
		$query->whereNotIn('USER_ID', $parameters['skip_users']);
	}
	$users = array_column($query->fetchAll(), 'USER_ID');

	if (!empty($users))
	{
		BitrixPullEvent::add($users, $parameters, $channelType);
	}

	return true;
}