3namespace Bitrix\Catalog\v2\Property;
5use Bitrix\Catalog\v2\BaseCollection;
6use Bitrix\Catalog\v2\BaseEntity;
27 public function findByCode(
string $code): ?Property
32 if ($item->getCode() ===
$code)
47 public function findByCodeLazy(
string $code): ?Property
50 foreach ($this->items as $item)
52 if ($item->getCode() ===
$code)
58 $propertySettings = $this->repository->getPropertiesSettingsByFilter([
62 $items = $this->repository->getEntitiesBy(
67 'PROPERTY_CODE' =>
$code,
74 $item = reset(
$items) ?:
null;
89 public function findByIdLazy(
int $id): ?Property
92 foreach ($this->items as $item)
94 if ($item->getId() === $id)
100 $propertySettings = $this->repository->getPropertiesSettingsByFilter([
103 $items = $this->repository->getEntitiesBy(
108 'PROPERTY_ID' => $id,
115 $item = reset(
$items) ?:
null;
130 foreach ($propertyValues as $index => $values)
134 if (is_numeric($index))
136 $property = $this->
findById((
int)$index);
141 $property = $this->findByCode($index);
146 $property->getPropertyValueCollection()->setValues($values);
153 public function getValues():
array
160 $values[$property->getId()] = $property->getPropertyValueCollection()->toArray();
177 if (
$res->isSuccess())
198 $filter = parent::getAlreadyLoadedFilter();
200 foreach ($this->items as $item)
204 $filter[
'!PROPERTY_ID'][] = $item->getId();
addInternal(BaseEntity $item)
__construct(PropertyRepositoryContract $repository)
setValues(array $propertyValues)
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
if(!is_null($config))($config as $configItem)(! $configItem->isVisible()) $code