1C-Bitrix
25.700.0
Загрузка...
Поиск...
Не найдено
type.php
См. документацию.
1
<?php
2
namespace
Bitrix\Iblock;
3
4
use Bitrix\Main;
5
use Bitrix\Main\ORM;
6
use Bitrix\Main\Localization\Loc;
7
8
Loc::loadMessages(__FILE__);
38
class
TypeTable
extends
ORM\Data\DataManager
39
{
45
public
static
function
getTableName
()
46
{
47
return
'b_iblock_type'
;
48
}
49
55
public
static
function
getMap
()
56
{
57
return
array
(
58
'ID'
=>
array
(
59
'data_type'
=>
'string'
,
60
'primary'
=>
true
,
61
'validation'
=>
array
(__CLASS__,
'validateId'
),
62
'title'
=> Loc::getMessage(
'IBLOCK_TYPE_ENTITY_ID_FIELD'
),
63
),
64
'SECTIONS'
=>
array
(
65
'data_type'
=>
'boolean'
,
66
'values'
=>
array
(
'N'
,
'Y'
),
67
'title'
=> Loc::getMessage(
'IBLOCK_TYPE_ENTITY_SECTIONS_FIELD'
),
68
),
69
'EDIT_FILE_BEFORE'
=>
array
(
70
'data_type'
=>
'string'
,
71
'validation'
=>
array
(__CLASS__,
'validateEditFileBefore'
),
72
'title'
=> Loc::getMessage(
'IBLOCK_TYPE_ENTITY_EDIT_FILE_BEFORE_FIELD'
),
73
),
74
'EDIT_FILE_AFTER'
=>
array
(
75
'data_type'
=>
'string'
,
76
'validation'
=>
array
(__CLASS__,
'validateEditFileAfter'
),
77
'title'
=> Loc::getMessage(
'IBLOCK_TYPE_ENTITY_EDIT_FILE_AFTER_FIELD'
),
78
),
79
'IN_RSS'
=>
array
(
80
'data_type'
=>
'boolean'
,
81
'values'
=>
array
(
'N'
,
'Y'
),
82
'title'
=> Loc::getMessage(
'IBLOCK_TYPE_ENTITY_IN_RSS_FIELD'
),
83
),
84
'SORT'
=>
array
(
85
'data_type'
=>
'integer'
,
86
'title'
=> Loc::getMessage(
'IBLOCK_TYPE_ENTITY_SORT_FIELD'
),
87
),
88
'LANG_MESSAGE'
=>
array
(
89
'data_type'
=>
'Bitrix\Iblock\TypeLanguage'
,
90
'reference'
=>
array
(
'=this.ID'
=>
'ref.IBLOCK_TYPE_ID'
),
91
),
92
);
93
}
94
101
public
static
function
validateId
()
102
{
103
return
array
(
104
new
ORM
\
Fields
\
Validators
\
LengthValidator
(
null
, 50),
105
);
106
}
107
114
public
static
function
validateEditFileBefore
()
115
{
116
return
array
(
117
new
ORM
\
Fields
\
Validators
\
LengthValidator
(
null
, 255),
118
);
119
}
120
127
public
static
function
validateEditFileAfter
()
128
{
129
return
array
(
130
new
ORM
\
Fields
\
Validators
\
LengthValidator
(
null
, 255),
131
);
132
}
133
142
public
static
function
onDelete
(
ORM
\
Event
$event
)
143
{
144
//TODO: need refactoring
145
146
$id =
$event
->getParameter(
"id"
);
147
148
//Delete information blocks
149
$iblockList
=
IblockTable::getList
(
array
(
150
"select"
=>
array
(
"ID"
),
151
"filter"
=>
array
(
152
"=IBLOCK_TYPE_ID"
=> $id[
"ID"
],
153
),
154
"order"
=>
array
(
"ID"
=>
"DESC"
)
155
));
156
while
(
$iblock
=
$iblockList
->fetch())
157
{
158
$iblockDeleteResult =
IblockTable::delete
(
$iblock
[
"ID"
]);
159
if
(!$iblockDeleteResult->isSuccess())
160
{
161
break
;
162
}
163
}
164
unset(
$iblock
);
165
unset(
$iblockList
);
166
167
//Delete language messages
169
$result
=
TypeLanguageTable::deleteByIblockTypeId
($id[
"ID"
]);
170
}
171
177
public
static
function
cleanCache
(): void
178
{
179
parent::cleanCache();
180
181
$application
=
Main\Application::getInstance
();
182
$managedCache =
$application
->getManagedCache();
183
$managedCache->cleanDir(self::getTableName());
184
unset(
185
$managedCache,
186
$application
,
187
);
188
}
189
}
Bitrix\Iblock\TypeLanguageTable\deleteByIblockTypeId
static deleteByIblockTypeId($iblockTypeId)
Определения
typelanguage.php:162
Bitrix\Iblock\TypeTable
Определения
type.php:39
Bitrix\Iblock\TypeTable\onDelete
static onDelete(ORM\Event $event)
Определения
type.php:142
Bitrix\Iblock\TypeTable\getMap
static getMap()
Определения
type.php:55
Bitrix\Iblock\TypeTable\cleanCache
static cleanCache()
Определения
type.php:177
Bitrix\Iblock\TypeTable\validateId
static validateId()
Определения
type.php:101
Bitrix\Iblock\TypeTable\validateEditFileAfter
static validateEditFileAfter()
Определения
type.php:127
Bitrix\Iblock\TypeTable\getTableName
static getTableName()
Определения
type.php:45
Bitrix\Iblock\TypeTable\validateEditFileBefore
static validateEditFileBefore()
Определения
type.php:114
Bitrix\Main\Application\getInstance
static getInstance()
Определения
application.php:98
Bitrix\Main\Event
Определения
event.php:5
Bitrix\Main\ORM\Data\DataManager
Определения
datamanager.php:35
Bitrix\Main\ORM\Data\DataManager\getList
static getList(array $parameters=array())
Определения
datamanager.php:431
Bitrix\Main\ORM\Data\DataManager\delete
static delete($primary)
Определения
datamanager.php:1644
Bitrix\Main\ORM\Fields\Validators\LengthValidator
Определения
lengthvalidator.php:19
array
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения
file_new.php:804
$result
$result
Определения
get_property_values.php:14
$iblock
if(! $catalogEdit->isSuccess()) $iblock
Определения
iblock_catalog_edit.php:38
$iblockList
$iblockList
Определения
iblock_catalog_list.php:271
$application
$application
Определения
bitrix.php:23
Bitrix\Iblock\ORM
Определения
commonelement.php:9
Bitrix\Main\ORM\Fields\Validators
Определения
booleanvalidator.php:9
Bitrix\Main\ORM\Fields
Определения
arrayfield.php:9
$event
$event
Определения
prolog_after.php:141
bitrix
modules
iblock
lib
type.php
Создано системой
1.14.0