• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/Service/Timeline/Item/SignDocument.php
  • Класс: Bitrix\Crm\Service\Timeline\Item\SignDocument
  • Вызов: SignDocument::getTags
public function getTags(): ?array
{
	$tags = null;

	if ($this->isCategoryCreated())
	{
		$tags = [
			new Layout\Header\Tag(
				Loc::getMessage('CRM_SERVICE_TIMELINE_LAYOUT_SIGNDOCUMENT_TAG_CREATED') ?? '',
				Layout\Header\Tag::TYPE_PRIMARY,
			),
		];
	}
	elseif (
		$this->isCategorySent()
		|| $this->isCategorySentFinal()
		|| $this->isCategorySentRepeatedly()
		|| $this->isCategorySentIntegrityFailure()
	)
	{
		$tag = $this->getMessageStatusTag();
		if ($tag)
		{
			$tags = [$tag];
		}
	}
	elseif ($this->isCategoryViewed())
	{
		$tags = [
			new Layout\Header\Tag(
				Loc::getMessage('CRM_SERVICE_TIMELINE_LAYOUT_SIGNDOCUMENT_TAG_VIEWED') ?? '',
				Layout\Header\Tag::TYPE_SUCCESS,
			),
		];
	}
	elseif ($this->isCategoryPreparedToFill())
	{
		$tags = [
			new Layout\Header\Tag(
				Loc::getMessage('CRM_SERVICE_TIMELINE_LAYOUT_SIGNDOCUMENT_TAG_PREPARED_TO_FILL') ?? '',
				Layout\Header\Tag::TYPE_SECONDARY,
			),
		];
	}
	elseif ($this->isCategoryFilled())
	{
		$tags = [
			new Layout\Header\Tag(
				Loc::getMessage('CRM_SERVICE_TIMELINE_LAYOUT_SIGNDOCUMENT_TAG_FILLED') ?? '',
				Layout\Header\Tag::TYPE_SUCCESS,
			),
		];
	}
	elseif ($this->isCategorySigned())
	{
		$messageData = $this->getMessageData();
		$signDocument = $this->getSignDocument();
		if ($messageData && $signDocument)
		{
			$member = $signDocument->getMemberByHash($messageData->getRecipient()->getHash());

			$title = $member->isInitiator()
				? Loc::getMessage('CRM_SERVICE_TIMELINE_LAYOUT_SIGNDOCUMENT_TAG_INITIATOR_SIGNED')
				: Loc::getMessage('CRM_SERVICE_TIMELINE_LAYOUT_SIGNDOCUMENT_TAG_SIDE_SIGNED');
		}
		$title = $title ?? Loc::getMessage('CRM_SERVICE_TIMELINE_LAYOUT_SIGNDOCUMENT_TAG_SIGNED');
		$tags = [
			new Layout\Header\Tag(
				$title ?? '',
				Layout\Header\Tag::TYPE_PRIMARY,
			),
		];
	}
	elseif ($this->isCategorySignCompleted())
	{
		$tags = [
			new Layout\Header\Tag(
				Loc::getMessage('CRM_SERVICE_TIMELINE_LAYOUT_SIGNDOCUMENT_TAG_SIGN_COMPLETED') ?? '',
				Layout\Header\Tag::TYPE_SUCCESS,
			),
		];
	}
	elseif ($this->isCategoryIntegritySuccess())
	{
		$tags = [
			new Layout\Header\Tag(
				Loc::getMessage('CRM_SERVICE_TIMELINE_LAYOUT_SIGNDOCUMENT_TAG_INTEGRITY_SUCCESS') ?? '',
				Layout\Header\Tag::TYPE_SUCCESS,
			),
		];
	}
	elseif ($this->isCategoryIntegrityFailure())
	{
		$tags = [
			new Layout\Header\Tag(
				Loc::getMessage('CRM_SERVICE_TIMELINE_LAYOUT_SIGNDOCUMENT_TAG_INTEGRITY_FAILURE') ?? '',
				Layout\Header\Tag::TYPE_FAILURE,
			),
		];
	}

	return $tags;
}