• Модуль: catalog
  • Путь к файлу: ~/bitrix/modules/catalog/lib/component/imageinput.php
  • Класс: BitrixCatalogComponentImageInput
  • Вызов: ImageInput::getPreview
private function getPreview(): string
{
	$imageData = [];

	if ($this->getEntityId() > 0)
	{
		$photoCollection = $this->entity->getFrontImageCollection();
		foreach ($photoCollection as $item)
		{
			if (!$item->getFileStructure())
			{
				continue;
			}

			$attributes = ItemAttributes::tryBuildByFileData($item->getFileStructure(), $item->getSource());
			$attributes->setAttribute('data-viewer-type', 'image');
			$attributes->setGroupBy("group-{$this->entity->getId()}");
			$imageData[] = [
				'SOURCE' => $item->getSource(),
				'ATTRIBUTES' => $attributes,
			];
		}
	}

	$fileCount = min(count($imageData), 3);

	switch ($fileCount)
	{
		case 3:
			$multipleClass = ' ui-image-input-img-block-multiple';
			break;

		case 2:
			$multipleClass = ' ui-image-input-img-block-double';
			break;

		case 0:
			$multipleClass = ' ui-image-input-img-block-empty';
			break;

		case 1:
		default:
			$multipleClass = '';
			break;
	}

	$imageString = '';
	foreach ($imageData as $key => $image)
	{
		$displayClass = '';
		if ($key !== 0)
		{
			$displayClass = 'main-ui-hide';
		}
		$imageString .= "
			
		";
	}

	return "
		
{$imageString}
"; }