2namespace Bitrix\Landing\Internals;
4use Bitrix\Landing\Manager;
5use Bitrix\Main\Localization\Loc;
8Loc::loadMessages(__FILE__);
44 return 'b_landing_folder';
56 'autocomplete' =>
true,
60 'title' => Loc::getMessage(
'LANDING_TABLE_FIELD_FOLDER_PARENT_ID')
63 'title' => Loc::getMessage(
'LANDING_TABLE_FIELD_FOLDER_SITE_ID'),
67 'title' => Loc::getMessage(
'LANDING_TABLE_FIELD_FOLDER_INDEX_ID')
70 'title' => Loc::getMessage(
'LANDING_TABLE_FIELD_FOLDER_ACTIVE'),
71 'default_value' =>
'N'
74 'title' => Loc::getMessage(
'LANDING_TABLE_FIELD_FOLDER_DELETED'),
75 'default_value' =>
'N'
78 'title' => Loc::getMessage(
'LANDING_TABLE_FIELD_FOLDER_TITLE'),
82 'title' => Loc::getMessage(
'LANDING_TABLE_FIELD_FOLDER_CODE'),
86 'title' => Loc::getMessage(
'LANDING_TABLE_FIELD_CREATED_BY_ID'),
90 'title' => Loc::getMessage(
'LANDING_TABLE_FIELD_MODIFIED_BY_ID'),
94 'title' => Loc::getMessage(
'LANDING_TABLE_FIELD_DATE_CREATE'),
98 'title' => Loc::getMessage(
'LANDING_TABLE_FIELD_DATE_MODIFY'),
112 $result =
new Entity\EventResult();
113 $primary =
$event->getParameter(
'primary');
155 $actionType == self::ACTION_TYPE_ADD && array_key_exists(
'TITLE',
$fields) &&
156 (!array_key_exists(
'CODE',
$fields) || trim(
$fields[
'CODE']) ==
'')
159 $fields[
'CODE'] = \CUtil::translit(
163 'replace_space' =>
'',
164 'replace_other' =>
''
171 $modifyFields[
'CODE'] =
$fields[
'CODE'];
175 if (isset($primary[
'ID']) && !array_key_exists(
'CODE',
$fields))
177 $res = self::getList([
182 'ID' => $primary[
'ID']
185 if ($row =
$res->fetch())
187 $fields[
'CODE'] = $row[
'CODE'];
193 array_key_exists(
'CODE',
$fields) &&
194 array_key_exists(
'SITE_ID',
$fields) &&
200 'SITE_ID' =>
$fields[
'SITE_ID'],
201 'PARENT_ID' =>
$fields[
'PARENT_ID'] ?? null
203 if (isset($primary[
'ID']))
205 $filter[
'!ID'] = $primary[
'ID'];
207 $res = self::getList([
217 Loc::getMessage(
'LANDING_TABLE_ERROR_FOLDER_IS_NOT_UNIQUE'),
218 'FOLDER_IS_NOT_UNIQUE'
226 if (array_key_exists(
'CODE',
$fields))
228 if (mb_strpos(
$fields[
'CODE'],
'/') !==
false)
232 Loc::getMessage(
'LANDING_TABLE_ERROR_FOLDER_SLASH_IS_NOT_ALLOWED'),
233 'SLASH_IS_NOT_ALLOWED'
240 $result->modifyFields($modifyFields);
static onBeforeUpdate(Entity\Event $event)
static prepareChange(Entity\Event $event, string $actionType)
static onBeforeAdd(Entity\Event $event)
static getRandomString(int $length)
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)