1C-Bitrix
25.700.0
Загрузка...
Поиск...
Не найдено
stringfieldassembler.php
См. документацию.
1
<?php
2
3
namespace
Bitrix\Iblock\Grid\Row\Assembler\Property;
4
5
use Bitrix\Main;
6
use Bitrix\Iblock\PropertyTable;
7
8
class
StringFieldAssembler
extends
BaseFieldAssembler
9
{
10
protected
function
getPropertyFilter
():
array
11
{
12
return
[
13
'=PROPERTY_TYPE'
=>
PropertyTable::TYPE_STRING
,
14
'=USER_TYPE'
=>
null
,
15
];
16
}
17
18
protected
function
validateProperty
(
array
$property): ?
array
19
{
20
return
$property;
21
}
22
23
protected
function
prepareRow
(
array
$row):
array
24
{
25
if
(!self::isElementRow($row))
26
{
27
return
$row;
28
}
29
30
$columnIds = $this->
getColumnIds
();
31
if
(empty($columnIds))
32
{
33
return
$row;
34
}
35
36
$row[
'columns'
] ??= [];
37
38
foreach
($columnIds as $columnId)
39
{
40
$value = $this->
getFlatColumnValues
($row[
'data'
][$columnId] ??
null
);
41
42
// edit
43
if
($value ===
null
)
44
{
45
$row[
'data'
][
'~'
. $columnId] = $this->
isMultipleColumn
($columnId) ? [] :
''
;
46
}
47
else
48
{
49
$row[
'data'
][
'~'
. $columnId] = $value;
50
}
51
52
// view
53
if
(is_array($value))
54
{
55
$value = implode(
' / '
, $value);
56
}
57
$value =
Main\Text\HtmlFilter::encode
((
string
)$value);
58
$row[
'columns'
][$columnId] = $value;
59
60
unset($value);
61
}
62
63
return
$row;
64
}
65
}
Bitrix\Iblock\Grid\Row\Assembler\Property\BaseFieldAssembler
Определения
basefieldassembler.php:13
Bitrix\Iblock\Grid\Row\Assembler\Property\BaseFieldAssembler\isMultipleColumn
isMultipleColumn(string $columnId)
Определения
basefieldassembler.php:116
Bitrix\Iblock\Grid\Row\Assembler\Property\BaseFieldAssembler\getFlatColumnValues
static getFlatColumnValues(mixed $rawValues, $fieldName='VALUE')
Определения
basefieldassembler.php:198
Bitrix\Iblock\Grid\Row\Assembler\Property\StringFieldAssembler
Определения
stringfieldassembler.php:9
Bitrix\Iblock\Grid\Row\Assembler\Property\StringFieldAssembler\getPropertyFilter
getPropertyFilter()
Определения
stringfieldassembler.php:10
Bitrix\Iblock\Grid\Row\Assembler\Property\StringFieldAssembler\prepareRow
prepareRow(array $row)
Определения
stringfieldassembler.php:23
Bitrix\Iblock\Grid\Row\Assembler\Property\StringFieldAssembler\validateProperty
validateProperty(array $property)
Определения
stringfieldassembler.php:18
Bitrix\Iblock\PropertyTable\TYPE_STRING
const TYPE_STRING
Определения
propertytable.php:65
Bitrix\Main\Grid\Row\FieldAssembler\getColumnIds
getColumnIds()
Определения
fieldassembler.php:47
Bitrix\Main\Text\HtmlFilter\encode
static encode($string, $flags=ENT_COMPAT, $doubleEncode=true)
Определения
htmlfilter.php:12
array
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения
file_new.php:804
bitrix
modules
iblock
lib
grid
row
assembler
property
stringfieldassembler.php
Создано системой
1.14.0