• Модуль: messageservice
  • Путь к файлу: ~/bitrix/modules/messageservice/lib/Providers/Edna/EdnaUtils.php
  • Класс: BitrixMessageServiceProvidersEdnaEdnaUtils
  • Вызов: EdnaUtils::getCascadeIdFromSubject
public function getCascadeIdFromSubject($subject, callable $subjectComparator): Result
{
	$apiResult = $this->getCascadeList();
	if (!$apiResult->isSuccess())
	{
		return $apiResult;
	}

	$apiData = $apiResult->getData();
	$result = new Result();
	foreach ($apiData as $cascade)
	{
		if ($cascade['status'] !== 'ACTIVE' || $cascade['stagesCount'] > 1)
		{
			continue;
		}
		if ($subjectComparator($cascade['stages'][0]['subject'], $subject))
		{
			$result->setData(['cascadeId' => $cascade['id']]);

			return $result;
		}
	}

	$result->addError(new Error('Not cascade'));

	return $result;
}