10namespace Bitrix\Main\Mail\Internal;
12use Bitrix\Main\ORM\Fields\ArrayField;
13use Bitrix\Main\Type as
Type;
14use Bitrix\Main\ORM\Data\DataManager;
15use Bitrix\Main\ORM\Fields\StringField;
50 'data_type' =>
'integer',
52 'autocomplete' =>
true,
54 'EVENT_NAME' =>
array(
55 'data_type' =>
'string',
58 'MESSAGE_ID' =>
array(
59 'data_type' =>
'integer',
62 'data_type' =>
'string',
67 ->configureSerializeCallback(
function ($value){
70 ->configureUnserializeCallback(
function (
$str) {
73 [
'allowed_classes' =>
false]
77 'DATE_INSERT' =>
array(
78 'data_type' =>
'datetime',
82 'data_type' =>
'datetime',
84 'SUCCESS_EXEC' =>
array(
85 'data_type' =>
'string',
88 'data_type' =>
'string',
90 'LANGUAGE_ID' =>
array(
91 'data_type' =>
'string',
102 array(__CLASS__,
"serialize")
112 array(__CLASS__,
"getFetchModificationForFieldsField"),
124 array_walk_recursive(
$fields,
array(__CLASS__,
'replaceValuesBeforeSerialize'));
138 if(method_exists($item,
'__toString'))
139 $item = (string) $item;
164 if(preg_match(
"/^".
$matches[1].
":[0-9.E-]+;\$/",
$str))
171 if(preg_match(
"/^".
$matches[1].
":[0-9]+:.*[;}]\$/s",
$str))
185 if(static::isFieldSerialized(
$str))
192 $val = str_replace(
"%1",
"&",
$val);
193 $tar = explode(
"=",
$val);
196 $key = str_replace(
"%3",
"=",
$key);
197 $val = str_replace(
"%3",
"=",
$val);
198 $key = str_replace(
"%2",
"%",
$key);
199 $val = str_replace(
"%2",
"%",
$val);
205 return $field->serialize($newar);
static isFieldSerialized($str)
static replaceValuesBeforeSerialize(&$item)
static getFetchModificatorsForFieldsField()
static serialize($fields)
static getSaveModificatorsForFieldsField()
static getFetchModificationForFieldsField($str)
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
if(empty($signedUserToken)) $key