1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
fieldassembler.php
См. документацию.
1<?php
2
3namespace Bitrix\Main\Grid\Row;
4
5use Bitrix\Main\Grid\Settings;
6
24abstract class FieldAssembler
25{
31 private array $columnIds;
32 private ?Settings $settings;
33
38 public function __construct(array $columnIds, ?Settings $settings = null)
39 {
40 $this->columnIds = $columnIds;
41 $this->settings = $settings;
42 }
43
47 final public function getColumnIds(): array
48 {
49 return $this->columnIds;
50 }
51
55 final protected function getSettings(): Settings
56 {
57 return $this->settings;
58 }
59
69 public function clone(array $columnIds): FieldAssembler
70 {
71 $clone = clone $this;
72 $clone->columnIds = $columnIds;
73
74 return $clone;
75 }
76
84 protected function prepareColumn($value)
85 {
86 return $value;
87 }
88
99 protected function prepareRow(array $row): array
100 {
101 if (empty($this->getColumnIds()))
102 {
103 return $row;
104 }
105
106 $row['columns'] ??= [];
107
108 foreach ($this->getColumnIds() as $columnId)
109 {
110 $row['columns'][$columnId] = $this->prepareColumn($row['data'][$columnId] ?? null);
111 }
112
113 return $row;
114 }
115
126 public function prepareRows(array $rowList): array
127 {
128 foreach ($rowList as &$row)
129 {
130 $row = $this->prepareRow($row);
131 }
132
133 return $rowList;
134 }
135}
__construct(array $columnIds, ?Settings $settings=null)
Определения fieldassembler.php:38
prepareRows(array $rowList)
Определения fieldassembler.php:126
clone(array $columnIds)
Определения fieldassembler.php:69
prepareRow(array $row)
Определения fieldassembler.php:99
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
$rowList
Определения iblock_catalog_list.php:273
$settings
Определения product_settings.php:43