1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
placementlang.php
См. документацию.
1<?php
2
3namespace Bitrix\Rest;
4
5use Bitrix\Main;
6use Bitrix\Main\ORM\Data\DataManager;
7use Bitrix\Main\ORM\Fields\IntegerField;
8use Bitrix\Main\ORM\Fields\Relations\Reference;
9use Bitrix\Main\ORM\Fields\StringField;
10use Bitrix\Main\ORM\Fields\Validators\LengthValidator;
11use Bitrix\Main\ORM\Query\Join;
12
41
43{
49 public static function getTableName()
50 {
51 return 'b_rest_placement_lang';
52 }
53
59 public static function getMap()
60 {
61 return [
62 new IntegerField(
63 'ID',
64 [
65 'primary' => true,
66 'autocomplete' => true,
67 ]
68 ),
69 new IntegerField(
70 'PLACEMENT_ID',
71 [
72 'required' => true,
73 ]
74 ),
75 new StringField(
76 'LANGUAGE_ID',
77 [
78 'required' => true,
79 'validation' => [__CLASS__, 'validateLanguageId'],
80 ]
81 ),
82 new StringField(
83 'TITLE',
84 [
85 'required' => true,
86 'validation' => [__CLASS__, 'validateTitle'],
87 ]
88 ),
89 new StringField(
90 'DESCRIPTION',
91 [
92 'validation' => [__CLASS__, 'validateDescription'],
93 ]
94 ),
95 new StringField(
96 'GROUP_NAME',
97 [
98 'validation' => [__CLASS__, 'validateGroupName'],
99 ]
100 ),
101 new Reference(
102 'PLACEMENT',
103 \Bitrix\Rest\PlacementLangTable::class,
104 Join::on('this.PLACEMENT_ID', 'ref.ID')
105 ),
106 ];
107 }
108
114 public static function validateLanguageId()
115 {
116 return [
117 new LengthValidator(null, 2),
118 ];
119 }
120
126 public static function validateTitle()
127 {
128 return [
129 new LengthValidator(null, 255),
130 ];
131 }
132
138 public static function validateDescription()
139 {
140 return [
141 new LengthValidator(null, 255),
142 ];
143 }
144
150 public static function validateGroupName()
151 {
152 return [
153 new LengthValidator(null, 255),
154 ];
155 }
156
157 private static function getPlacementTableName()
158 {
160 }
161
162
170 public static function deleteByApp(int $appId): void
171 {
172 $dbRes = PlacementTable::getList(
173 [
174 'select' => ['ID'],
175 'filter' => [
176 '=APP_ID' => $appId,
177 ]
178 ]
179 );
180 $placementIds = $dbRes->fetchAll();
181 foreach ($placementIds as $placementId)
182 {
183 static::deleteByPlacement((int)$placementId['ID']);
184 }
185 }
186
194 public static function deleteByPlacement(int $placementId) : Main\DB\Result
195 {
197
198 return $connection->query('DELETE FROM ' . static::getTableName() . ' WHERE PLACEMENT_ID=\'' . $placementId . '\'');
199 }
200}
$connection
Определения actionsdefinitions.php:38
static getConnection($name="")
Определения application.php:638
Определения result.php:20
static getMap()
Определения placementlang.php:59
static validateGroupName()
Определения placementlang.php:150
static validateDescription()
Определения placementlang.php:138
static validateLanguageId()
Определения placementlang.php:114
static validateTitle()
Определения placementlang.php:126
static deleteByPlacement(int $placementId)
Определения placementlang.php:194
static deleteByApp(int $appId)
Определения placementlang.php:170
static getTableName()
Определения placementlang.php:49
static getTableName()
Определения placement.php:68
Определения arrayresult.php:2
Определения handlers.php:8
$dbRes
Определения yandex_detail.php:168