1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
ToolbarTable.php
См. документацию.
1<?
2
3namespace Bitrix\Main\SidePanel;
4
5use Bitrix\Main\ORM\Data;
6use Bitrix\Main\ORM\Fields\StringField;
7use Bitrix\Main\ORM\Fields\BooleanField;
8use Bitrix\Main\ORM\Fields\IntegerField;
9use Bitrix\Main\ORM\Fields\DatetimeField;
10use Bitrix\Main\ORM\Fields\Relations\Reference;
11use Bitrix\Main\ORM\Fields\Validators\ForeignValidator;
12use Bitrix\Main\ORM\Fields\Validators\LengthValidator;
13use Bitrix\Main\ORM\Query\Join;
14use Bitrix\Main\Type\DateTime;
15use Bitrix\Main\UserTable;
16
34{
38 public static function getTableName()
39 {
40 return 'b_sidepanel_toolbar';
41 }
42
46 public static function getMap()
47 {
48 return [
49 (new IntegerField('ID'))
50 ->configurePrimary()
51 ->configureAutocomplete()
52 ,
53 (new IntegerField('USER_ID'))
54 ->configureRequired()
55 ->addValidator(new ForeignValidator(UserTable::getEntity()->getField('ID')))
56 ,
57 (new StringField('CONTEXT'))
58 ->configureRequired()
59 ->configureSize(50)
60 ->configureFormat('/^[a-zA-Z0-9_:-]+$/')
61 ->addValidator(new LengthValidator(2, 50))
62 ->addSaveDataModifier(function ($value) {
63 return mb_strtolower($value);
64 })
65 ,
66 (new BooleanField('COLLAPSED'))
67 ->configureValues(0, 1)
68 ->configureDefaultValue(1)
69 ,
70 (new DatetimeField('CREATED_DATE'))
71 ->configureDefaultValue(static function () {
72 return new DateTime();
73 })
74 ,
75 (new Reference(
76 'USER',
77 UserTable::class,
78 Join::on('this.USER_ID', 'ref.ID'),
79 ['join_type' => Join::TYPE_INNER]
80 )),
81 ];
82 }
83}
static getEntity()
Определения datamanager.php:65
static getTableName()
Определения ToolbarTable.php:38