1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
element.php
См. документацию.
1<?php
2
3namespace Bitrix\Rest\Preset\Data;
4
5use Bitrix\Main\ArgumentException;
6use Bitrix\Main\Data\Cache;
7use Bitrix\Main\Localization\Loc;
8use Bitrix\Main\Web\Json;
9use Bitrix\Main\Web\Uri;
10use Bitrix\Rest\Dictionary\Integration;
11use Bitrix\Rest\Infrastructure\Integration\DocUrl;
12
13Loc::loadMessages(__FILE__);
14
19class Element extends Base
20{
21 private const CACHE_DIR = '/rest/integration/element/';
22 private const DEFAULT_DATA = [
23 'application' => [
24 'CODE' => 'application',
25 'ELEMENT_CODE' => 'application',
26 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1003_TITLE',
27 'ACTIVE' => 'Y',
28 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1003_DESCRIPTION',
29 'DESCRIPTION_FULL.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1003_DESCRIPTION_FULL',
30 'SECTION_CODE' => 'standard',
31 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
32 'OPTIONS' => [
33 'QUERY_NEEDED' => 'D',
34 'OUTGOING_NEEDED' => 'D',
35 'WIDGET_NEEDED' => 'D',
36 'BOT_NEEDED' => 'D',
37 'APPLICATION_NEEDED' => 'Y',
38 'SCOPE' => [
39 'crm',
40 ],
41 'APPLICATION_DOWNLOAD_EXAMPLE_TYPE' => 'local_app',
42 'DESCRIPTION_SCOPE' => [
43 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1003_DESCRIPTION_SCOPE_DESCRIPTION',
44 ],
45 ],
46 ],
47 'out-hook' => [
48 'CODE' => 'out-hook',
49 'ELEMENT_CODE' => 'out-hook',
50 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1002_TITLE',
51 'ACTIVE' => 'Y',
52 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1002_DESCRIPTION',
53 'SECTION_CODE' => 'standard',
54 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
55 'OPTIONS' => [
56 'QUERY_NEEDED' => 'D',
57 'OUTGOING_NEEDED' => 'Y',
58 'SCOPE_NEEDED' => 'D',
59 'WIDGET_NEEDED' => 'D',
60 'BOT_NEEDED' => 'D',
61 'APPLICATION_NEEDED' => 'D',
62 'OUTGOING_DOWNLOAD_EXAMPLE_TYPE' => 'out_hook',
63 'SCOPE' => [],
64 'DESCRIPTION_SCOPE' => [],
65 ],
66 ],
67 'in-hook' => [
68 'CODE' => 'in-hook',
69 'ELEMENT_CODE' => 'in-hook',
70 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1001_TITLE',
71 'ACTIVE' => 'Y',
72 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1001_DESCRIPTION',
73 'SECTION_CODE' => 'standard',
74 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
75 'OPTIONS' => [
76 'QUERY' => [
77 [
78 'CODE' => 'params',
79 'METHOD' => 'profile',
80 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1001_INCOMING_QUERY_TITLE_ITEMS',
81 'ITEMS' => [],
82 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'in_hook',
83 ],
84 ],
85 'OUTGOING_NEEDED' => 'D',
86 'WIDGET_NEEDED' => 'D',
87 'BOT_NEEDED' => 'D',
88 'APPLICATION_NEEDED' => 'D',
89 'SCOPE' => [],
90 'DESCRIPTION_SCOPE' => [],
91 ],
92 ],
93 'contact-sync' => [
94 'CODE' => 'contact-sync',
95 'ELEMENT_CODE' => 'contact-sync',
96 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_10_TITLE',
97 'ACTIVE' => 'Y',
98 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_10_DESCRIPTION',
99 'SECTION_CODE' => 'external',
100 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
101 'OPTIONS' => [
102 'QUERY' => [
103 [
104 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_10_INCOMING_QUERY_TITLE',
105 'CODE' => 'params',
106 'METHOD' => 'crm.contact.get',
107 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'custom_sync',
108 'ITEMS' => [
109 [
110 'title' => 'ID',
111 'value' => '42',
112 ],
113 ],
114 'QUERY_INFORMATION_URL' => '/api-reference/crm/contacts/crm-contact-get',
115 ],
116 ],
117 'OUTGOING_NEEDED' => 'Y',
118 'OUTGOING_DOWNLOAD_EXAMPLE_TYPE' => 'custom_sync',
119 'OUTGOING_EVENTS' => [
120 'ONCRMCONTACTUPDATE',
121 ],
122 'WIDGET_NEEDED' => 'D',
123 'BOT_NEEDED' => 'D',
124 'APPLICATION_NEEDED' => 'D',
125 'SCOPE' => [
126 'crm',
127 ],
128 'DESCRIPTION_OUTGOING' => [
129 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_10_DESCRIPTION_OUTGOING_DESCRIPTION',
130 ],
131 'DESCRIPTION_SCOPE' => [
132 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_10_DESCRIPTION_SCOPE_DESCRIPTION',
133 ],
134 ],
135 ],
136 'contact-add' => [
137 'CODE' => 'contact-add',
138 'SECTION_CODE' => 'migration',
139 'ELEMENT_CODE' => 'contact-add',
140 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_2_TITLE',
141 'ACTIVE' => 'N',
142 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_2_DESCRIPTION',
143 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
144 'OPTIONS' => [
145 'QUERY' => [
146 [
147 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_2_INCOMING_QUERY_TITLE',
148 'METHOD' => 'crm.contact.add',
149 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
150 'DESCRIPTION_METHOD' => [
151 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_2_DESCRIPTION_METHOD_DESCRIPTION',
152 ],
153 'CODE' => 'params',
154 'ITEMS' => [
155 [
156 'title' => 'FIELDS[NAME]',
157 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_2_INCOMING_QUERY_ITEMS_VALUE_0',
158 ],
159 [
160 'title' => 'FIELDS[LAST_NAME]',
161 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_2_INCOMING_QUERY_ITEMS_VALUE_1',
162 ],
163 [
164 'title' => 'FIELDS[EMAIL][0][VALUE]',
165 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_2_INCOMING_QUERY_ITEMS_VALUE_2',
166 'value' => 'mail@example.com',
167 ],
168 [
169 'title' => 'FIELDS[EMAIL][0][VALUE_TYPE]',
170 'value' => 'WORK',
171 ],
172 [
173 'title' => 'FIELDS[PHONE][0][VALUE]',
174 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_2_INCOMING_QUERY_ITEMS_VALUE_3',
175 'value' => '555888',
176 ],
177 [
178 'title' => 'FIELDS[PHONE][0][VALUE_TYPE]',
179 'value' => 'WORK',
180 ],
181 ],
182 'QUERY_INFORMATION_URL' => '/api-reference/crm/contacts/crm-contact-add',
183 ],
184 ],
185 'OUTGOING_NEEDED' => 'N',
186 'WIDGET_NEEDED' => 'D',
187 'SCOPE' => [
188 'crm',
189 ],
190 'BOT_NEEDED' => 'D',
191 'APPLICATION_NEEDED' => 'D',
192 'OUTGOING_EVENTS' => [
193 'ONCRMCONTACTADD',
194 'ONCRMCONTACTUPDATE',
195 'ONCRMCONTACTDELETE',
196 ],
197 'DESCRIPTION_OUTGOING' => [],
198 'DESCRIPTION_SCOPE' => [
199 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_2_DESCRIPTION_SCOPE_DESCRIPTION',
200 ],
201 ],
202 ],
203 'export-email-new-contact' => [
204 'CODE' => 'export-email-new-contact',
205 'ELEMENT_CODE' => 'export-email-new-contact',
206 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_3_TITLE',
207 'ACTIVE' => 'N',
208 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_3_DESCRIPTION',
209 'SECTION_CODE' => 'migration',
210 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
211 'OPTIONS' => [
212 'QUERY' => [
213 [
214 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_3_INCOMING_QUERY_TITLE',
215 'CODE' => 'params',
216 'METHOD' => 'crm.contact.list',
217 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
218 'DESCRIPTION_METHOD' => [
219 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_3_DESCRIPTION_METHOD_DESCRIPTION',
220 ],
221 'ITEMS' => [
222 [
223 'title' => 'FILTER[>DATE_CREATE]',
224 'value' => '2019-01-01',
225 ],
226 [
227 'title' => 'SELECT[]',
228 'value' => 'NAME',
229 ],
230 [
231 'title' => 'SELECT[]',
232 'value' => 'LAST_NAME',
233 ],
234 [
235 'title' => 'SELECT[]',
236 'value' => 'EMAIL',
237 ],
238 ],
239 'QUERY_INFORMATION_URL' => '/api-reference/crm/contacts/crm-contact-list',
240 ],
241 ],
242 'OUTGOING_NEEDED' => 'D',
243 'WIDGET_NEEDED' => 'D',
244 'BOT_NEEDED' => 'D',
245 'APPLICATION_NEEDED' => 'D',
246 'SCOPE' => [
247 'crm',
248 ],
249 'DESCRIPTION_SCOPE' => [
250 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_3_DESCRIPTION_SCOPE_DESCRIPTION',
251 ],
252 ],
253 ],
254 'user-add' => [
255 'CODE' => 'user-add',
256 'ELEMENT_CODE' => 'user-add',
257 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_4_TITLE',
258 'ACTIVE' => 'N',
259 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_4_DESCRIPTION',
260 'SECTION_CODE' => 'migration',
261 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
262 'OPTIONS' => [
263 'QUERY' => [
264 [
265 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_4_INCOMING_QUERY_TITLE',
266 'METHOD' => 'user.add',
267 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
268 'DESCRIPTION_METHOD' => [
269 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_4_DESCRIPTION_METHOD_DESCRIPTION',
270 ],
271 'CODE' => 'params',
272 'ITEMS' => [
273 [
274 'title' => 'MESSAGE_TEXT',
275 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_4_INCOMING_QUERY_ITEMS_VALUE_0',
276 ],
277 [
278 'title' => 'EMAIL',
279 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_4_INCOMING_QUERY_ITEMS_VALUE_1',
280 'value' => 'mail@example.com',
281 ],
282 [
283 'title' => 'UF_DEPARTMENT[]',
284 'value' => '1',
285 ],
286 ],
287 'QUERY_INFORMATION_URL' => '/api-reference/user/user-add.html',
288 ],
289 ],
290 'OUTGOING_NEEDED' => 'D',
291 'WIDGET_NEEDED' => 'D',
292 'BOT_NEEDED' => 'D',
293 'APPLICATION_NEEDED' => 'D',
294 'SCOPE' => [
295 'user',
296 ],
297 'DESCRIPTION_SCOPE' => [
298 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_4_DESCRIPTION_SCOPE_DESCRIPTION',
299 ],
300 ],
301 ],
302 'lead-change-status' => [
303 'CODE' => 'lead-change-status',
304 'ELEMENT_CODE' => 'lead-change-status',
305 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_5_TITLE',
306 'ACTIVE' => 'Y',
307 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_5_DESCRIPTION',
308 'SECTION_CODE' => 'auto-sales',
309 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
310 'OPTIONS' => [
311 'QUERY' => [
312 [
313 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_5_INCOMING_QUERY_TITLE',
314 'CODE' => 'params',
315 'METHOD' => 'crm.lead.update',
316 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
317 'DESCRIPTION_METHOD' => [
318 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_5_DESCRIPTION_METHOD_DESCRIPTION',
319 ],
320 'ITEMS' => [
321 [
322 'title' => 'ID',
323 'value' => '42',
324 ],
325 [
326 'title' => 'FIELDS[STATUS_ID]',
327 'value' => 'CONVERTED',
328 ],
329 ],
330 'QUERY_INFORMATION_URL' => '/api-reference/crm/leads/crm-lead-update',
331 ],
332 ],
333 'OUTGOING_NEEDED' => 'D',
334 'WIDGET_NEEDED' => 'D',
335 'BOT_NEEDED' => 'D',
336 'APPLICATION_NEEDED' => 'D',
337 'SCOPE' => [
338 'crm',
339 ],
340 'DESCRIPTION_SCOPE' => [
341 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_5_DESCRIPTION_SCOPE_DESCRIPTION',
342 ],
343 ],
344 ],
345 'tasks-task-add' => [
346 'CODE' => 'tasks-task-add',
347 'ELEMENT_CODE' => 'tasks-task-add',
348 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_6_TITLE',
349 'ACTIVE' => 'N',
350 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_6_DESCRIPTION',
351 'SECTION_CODE' => 'auto-control',
352 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
353 'OPTIONS' => [
354 'QUERY' => [
355 [
356 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_6_INCOMING_QUERY_TITLE',
357 'CODE' => 'params',
358 'METHOD' => 'tasks.task.add',
359 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
360 'DESCRIPTION_METHOD' => [
361 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_6_DESCRIPTION_METHOD_DESCRIPTION',
362 ],
363 'ITEMS' => [
364 [
365 'title' => 'fields[TITLE]',
366 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_6_INCOMING_QUERY_ITEMS_VALUE_0',
367 ],
368 [
369 'title' => 'fields[DESCRIPTION]',
370 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_6_INCOMING_QUERY_ITEMS_VALUE_1',
371 ],
372 [
373 'title' => 'fields[RESPONSIBLE_ID]',
374 'value' => '1',
375 ],
376 ],
377 'QUERY_INFORMATION_URL' => '/api-reference/tasks/tasks-task-add',
378 ],
379 ],
380 'OUTGOING_NEEDED' => 'D',
381 'WIDGET_NEEDED' => 'D',
382 'BOT_NEEDED' => 'D',
383 'APPLICATION_NEEDED' => 'D',
384 'SCOPE' => [
385 'task',
386 ],
387 'DESCRIPTION_SCOPE' => [
388 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_6_DESCRIPTION_SCOPE_DESCRIPTION',
389 ],
390 ],
391 ],
392 'send-notify' => [
393 'CODE' => 'send-notify',
394 'ELEMENT_CODE' => 'send-notify',
395 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_7_TITLE',
396 'ACTIVE' => 'Y',
397 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_7_DESCRIPTION',
398 'SECTION_CODE' => 'auto-control',
399 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
400 'OPTIONS' => [
401 'QUERY' => [
402 [
403 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_7_INCOMING_QUERY_TITLE',
404 'CODE' => 'params',
405 'METHOD' => 'im.notify',
406 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
407 'DESCRIPTION_METHOD' => [
408 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_7_DESCRIPTION_METHOD_DESCRIPTION',
409 ],
410 'ITEMS' => [
411 [
412 'title' => 'TO',
413 'value' => '1',
414 ],
415 [
416 'title' => 'MESSAGE',
417 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_7_INCOMING_QUERY_ITEMS_VALUE_0',
418 ],
419 [
420 'title' => 'TYPE',
421 'value' => 'SYSTEM',
422 ],
423 ],
424 ],
425 ],
426 'OUTGOING_NEEDED' => 'D',
427 'WIDGET_NEEDED' => 'D',
428 'BOT_NEEDED' => 'D',
429 'APPLICATION_NEEDED' => 'D',
430 'SCOPE' => [
431 'im',
432 ],
433 'DESCRIPTION_SCOPE' => [
434 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_7_DESCRIPTION_SCOPE_DESCRIPTION',
435 ],
436 ],
437 ],
438 'blogpost-add' => [
439 'CODE' => 'blogpost-add',
440 'ELEMENT_CODE' => 'blogpost-add',
441 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_8_TITLE_MSGVER_1',
442 'ACTIVE' => 'Y',
443 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_8_DESCRIPTION_MSGVER_1',
444 'SECTION_CODE' => 'auto-control',
445 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
446 'OPTIONS' => [
447 'QUERY' => [
448 [
449 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_8_INCOMING_QUERY_TITLE',
450 'CODE' => 'params',
451 'METHOD' => 'log.blogpost.add',
452 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
453 'DESCRIPTION_METHOD' => [
454 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_8_DESCRIPTION_METHOD_DESCRIPTION_MSGVER_1',
455 ],
456 'ITEMS' => [
457 [
458 'title' => 'POST_TITLE',
459 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_8_INCOMING_QUERY_ITEMS_VALUE_0',
460 ],
461 [
462 'title' => 'POST_MESSAGE',
463 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_8_INCOMING_QUERY_ITEMS_VALUE_1',
464 ],
465 [
466 'title' => 'DEST',
467 'value' => 'UA',
468 ],
469 ],
470 'QUERY_INFORMATION_URL' => '/api-reference/log/log-blogpost-add',
471 ],
472 ],
473 'OUTGOING_NEEDED' => 'D',
474 'WIDGET_NEEDED' => 'D',
475 'BOT_NEEDED' => 'D',
476 'APPLICATION_NEEDED' => 'D',
477 'SCOPE' => [
478 'log',
479 ],
480 'DESCRIPTION_SCOPE' => [
481 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_8_DESCRIPTION_SCOPE_DESCRIPTION_MSGVER_1',
482 ],
483 ],
484 ],
485 'deal-change-status' => [
486 'CODE' => 'deal-change-status',
487 'ELEMENT_CODE' => 'deal-change-status',
488 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_9_TITLE',
489 'ACTIVE' => 'Y',
490 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_9_DESCRIPTION',
491 'SECTION_CODE' => 'auto-sales',
492 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
493 'OPTIONS' => [
494 'QUERY' => [
495 [
496 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_9_INCOMING_QUERY_TITLE',
497 'CODE' => 'params',
498 'METHOD' => 'crm.deal.update',
499 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
500 'DESCRIPTION_METHOD' => [
501 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_9_DESCRIPTION_METHOD_DESCRIPTION',
502 ],
503 'ITEMS' => [
504 [
505 'title' => 'ID',
506 'value' => '42',
507 ],
508 [
509 'title' => 'FIELDS[STAGE_ID]',
510 'value' => 'WON',
511 ],
512 [
513 'title' => 'FIELDS[CLOSED]',
514 'value' => '1',
515 ],
516 ],
517 'QUERY_INFORMATION_URL' => '/api-reference/crm/deals/crm-deal-update',
518 ],
519 ],
520 'OUTGOING_NEEDED' => 'D',
521 'WIDGET_NEEDED' => 'D',
522 'BOT_NEEDED' => 'D',
523 'APPLICATION_NEEDED' => 'D',
524 'SCOPE' => [
525 'crm',
526 ],
527 'DESCRIPTION_SCOPE' => [
528 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_9_DESCRIPTION_SCOPE_DESCRIPTION',
529 ],
530 ],
531 ],
532 'tasks-task-get' => [
533 'CODE' => 'tasks-task-get',
534 'ELEMENT_CODE' => 'tasks-task-get',
535 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_11_TITLE',
536 'ACTIVE' => 'N',
537 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_11_DESCRIPTION',
538 'SECTION_CODE' => 'auto-control',
539 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
540 'OPTIONS' => [
541 'QUERY' => [
542 [
543 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_11_INCOMING_QUERY_TITLE',
544 'CODE' => 'params',
545 'METHOD' => 'tasks.task.get',
546 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
547 'DESCRIPTION_METHOD' => [
548 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_11_DESCRIPTION_METHOD_DESCRIPTION',
549 ],
550 'ITEMS' => [
551 [
552 'title' => 'taskId',
553 'value' => '42',
554 ],
555 ],
556 'QUERY_INFORMATION_URL' => '/api-reference/tasks/tasks-task-get',
557 ],
558 ],
559 'OUTGOING_NEEDED' => 'Y',
560 'OUTGOING_EVENTS' => [
561 'ONTASKUPDATE',
562 ],
563 'WIDGET_NEEDED' => 'N',
564 'WIDGET_DOWNLOAD_EXAMPLE' => '',
565 'BOT_NEEDED' => 'D',
566 'APPLICATION_NEEDED' => 'D',
567 'SCOPE' => [
568 'task',
569 ],
570 'DESCRIPTION_OUTGOING' => [
571 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_11_DESCRIPTION_OUTGOING_DESCRIPTION',
572 ],
573 'DESCRIPTION_WIDGET' => [],
574 'DESCRIPTION_SCOPE' => [
575 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_11_DESCRIPTION_SCOPE_DESCRIPTION',
576 ],
577 ],
578 ],
579 'widget-contact-detail-tab' => [
580 'CODE' => 'widget-contact-detail-tab',
581 'ELEMENT_CODE' => 'widget-contact-detail-tab',
582 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_12_TITLE',
583 'ACTIVE' => 'Y',
584 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_12_DESCRIPTION',
585 'SECTION_CODE' => 'widget',
586 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
587 'OPTIONS' => [
588 'QUERY' => [
589 [
590 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_12_INCOMING_QUERY_TITLE',
591 'CODE' => 'params',
592 'METHOD' => 'crm.contact.get',
593 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
594 'DESCRIPTION_METHOD' => [
595 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_12_DESCRIPTION_METHOD_DESCRIPTION',
596 ],
597 'ITEMS' => [
598 [
599 'title' => 'ID',
600 'value' => '42',
601 ],
602 ],
603 'QUERY_INFORMATION_URL' => '/api-reference/crm/contacts/crm-contact-get',
604 ],
605 ],
606 'OUTGOING_NEEDED' => 'D',
607 'WIDGET_NEEDED' => 'Y',
608 'WIDGET_LIST' => [
609 'CRM_CONTACT_DETAIL_TAB',
610 ],
611 'WIDGET_DOWNLOAD_EXAMPLE' => '',
612 'BOT_NEEDED' => 'D',
613 'APPLICATION_NEEDED' => 'D',
614 'SCOPE' => [
615 'crm',
616 'placement',
617 ],
618 'DESCRIPTION_WIDGET' => [
619 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_12_DESCRIPTION_WIDGET_DESCRIPTION',
620 ],
621 'DESCRIPTION_SCOPE' => [
622 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_12_DESCRIPTION_SCOPE_DESCRIPTION',
623 ],
624 ],
625 ],
626 'widget-contact-detail-activity' => [
627 'CODE' => 'widget-contact-detail-activity',
628 'ELEMENT_CODE' => 'widget-contact-detail-activity',
629 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_13_TITLE',
630 'ACTIVE' => 'Y',
631 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_13_DESCRIPTION',
632 'SECTION_CODE' => 'widget',
633 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
634 'OPTIONS' => [
635 'QUERY' => [
636 [
637 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_13_INCOMING_QUERY_TITLE',
638 'CODE' => 'params',
639 'METHOD' => 'crm.contact.update',
640 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
641 'DESCRIPTION_METHOD' => [
642 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_13_DESCRIPTION_METHOD_DESCRIPTION',
643 ],
644 'ITEMS' => [
645 [
646 'title' => 'ID',
647 'value' => '42',
648 ],
649 ],
650 'QUERY_INFORMATION_URL' => '/api-reference/crm/contacts/crm-contact-get',
651 ],
652 ],
653 'WIDGET_LIST' => [
654 'CRM_CONTACT_DETAIL_TAB',
655 ],
656 'OUTGOING_NEEDED' => 'D',
657 'WIDGET_NEEDED' => 'Y',
658 'WIDGET_DOWNLOAD_EXAMPLE' => '',
659 'BOT_NEEDED' => 'D',
660 'APPLICATION_NEEDED' => 'D',
661 'SCOPE' => [
662 'crm',
663 'placement',
664 ],
665 'DESCRIPTION_WIDGET' => [
666 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_13_DESCRIPTION_WIDGET_DESCRIPTION',
667 ],
668 'DESCRIPTION_SCOPE' => [
669 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_13_DESCRIPTION_SCOPE_DESCRIPTION',
670 ],
671 ],
672 ],
673 'widget-call-cart' => [
674 'CODE' => 'widget-call-cart',
675 'ELEMENT_CODE' => 'widget-call-cart',
676 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_14_TITLE',
677 'ACTIVE' => 'Y',
678 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_14_DESCRIPTION',
679 'SECTION_CODE' => 'widget',
680 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
681 'OPTIONS' => [
682 'QUERY' => [
683 [
684 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_14_INCOMING_QUERY_TITLE',
685 'CODE' => 'params',
686 'METHOD' => 'crm.lead.get',
687 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
688 'DESCRIPTION_METHOD' => [
689 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_14_DESCRIPTION_METHOD_DESCRIPTION',
690 ],
691 'ITEMS' => [
692 [
693 'title' => 'ID',
694 'value' => '42',
695 ],
696 ],
697 'QUERY_INFORMATION_URL' => '/api-reference/crm/leads/crm-lead-get',
698 ],
699 ],
700 'OUTGOING_NEEDED' => 'D',
701 'WIDGET_NEEDED' => 'Y',
702 'WIDGET_LIST' => [
703 'CALL_CARD',
704 ],
705 'WIDGET_DOWNLOAD_EXAMPLE' => '',
706 'BOT_NEEDED' => 'D',
707 'APPLICATION_NEEDED' => 'D',
708 'SCOPE' => [
709 'crm',
710 'telephony',
711 'placement',
712 ],
713 'DESCRIPTION_WIDGET' => [
714 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_14_DESCRIPTION_WIDGET_DESCRIPTION',
715 ],
716 'DESCRIPTION_SCOPE' => [
717 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_14_DESCRIPTION_SCOPE_DESCRIPTION',
718 ],
719 ],
720 ],
721 'creat-invoice-by-tasks-time' => [
722 'CODE' => 'creat-invoice-by-tasks-time',
723 'ELEMENT_CODE' => 'creat-invoice-by-tasks-time',
724 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_15_TITLE',
725 'ACTIVE' => 'Y',
726 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_15_DESCRIPTION',
727 'SECTION_CODE' => 'widget',
728 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
729 'OPTIONS' => [
730 'QUERY' => [
731 [
732 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_15_INCOMING_QUERY_TITLE',
733 'DESCRIPTION_METHOD' => [
734 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_15_DESCRIPTION_METHOD_DESCRIPTION',
735 ],
736 'CODE' => 'params',
737 'METHOD' => 'task.elapseditem.getlist',
738 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
739 'ITEMS' => [
740 [
741 'title' => 'FIELDS[TITLE]',
742 ],
743 ],
744 'QUERY_INFORMATION_URL' => '/api-reference/tasks/elapsed-item/task-elapsed-item-get-list',
745 ],
746 ],
747 'OUTGOING_NEEDED' => 'Y',
748 'OUTGOING_EVENTS' => [],
749 'WIDGET_LIST' => [
750 'CRM_TASK_DETAIL',
751 ],
752 'WIDGET_NEEDED' => 'N',
753 'WIDGET_DOWNLOAD_EXAMPLE' => '',
754 'BOT_NEEDED' => 'D',
755 'APPLICATION_NEEDED' => 'D',
756 'SCOPE' => [
757 'crm',
758 'task',
759 ],
760 'DESCRIPTION_OUTGOING' => [],
761 'DESCRIPTION_WIDGET' => [
762 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_15_DESCRIPTION_WIDGET_DESCRIPTION',
763 ],
764 'DESCRIPTION_SCOPE' => [
765 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_15_DESCRIPTION_SCOPE_DESCRIPTION',
766 ],
767 ],
768 ],
769 'custom-widget' => [
770 'CODE' => 'custom-widget',
771 'ELEMENT_CODE' => 'custom-widget',
772 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_17_TITLE',
773 'ACTIVE' => 'Y',
774 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_17_DESCRIPTION',
775 'SECTION_CODE' => 'migration',
776 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
777 'OPTIONS' => [
778 'QUERY' => [
779 [
780 'METHOD' => 'crm.lead.get',
781 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
782 'DESCRIPTION_METHOD' => [],
783 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_17_INCOMING_QUERY_TITLE',
784 'CODE' => 'params',
785 'ITEMS' => [
786 [
787 'title' => 'ID',
788 'value' => '42',
789 ],
790 ],
791 'QUERY_INFORMATION_URL' => '/api-reference/crm/leads/crm-lead-get',
792 ],
793 ],
794 'OUTGOING_NEEDED' => 'D',
795 'WIDGET_NEEDED' => 'Y',
796 'OUTGOING_EVENTS' => [
797 'ONCRMLEADADD',
798 ],
799 'WIDGET_DOWNLOAD_EXAMPLE' => '',
800 'BOT_NEEDED' => 'D',
801 'APPLICATION_NEEDED' => 'D',
802 'SCOPE' => [
803 'crm',
804 'task',
805 ],
806 'DESCRIPTION_WIDGET' => [],
807 'DESCRIPTION_SCOPE' => [],
808 ],
809 ],
810 'bot-notify-staff' => [
811 'CODE' => 'bot-notify-staff',
812 'ELEMENT_CODE' => 'bot-notify-staff',
813 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_18_TITLE',
814 'ACTIVE' => 'Y',
815 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_18_DESCRIPTION',
816 'SECTION_CODE' => 'chat-bot',
817 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
818 'OPTIONS' => [
819 'QUERY' => [
820 [
821 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_18_INCOMING_QUERY_TITLE',
822 'CODE' => 'params',
823 'METHOD' => 'imbot.message.add',
824 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
825 'DESCRIPTION_METHOD' => [],
826 'ITEMS' => [
827 [
828 'title' => 'BOT_ID',
829 'value' => '',
830 ],
831 [
832 'title' => 'CLIENT_ID',
833 'value' => '',
834 ],
835 [
836 'title' => 'DIALOG_ID',
837 'value' => '1',
838 ],
839 [
840 'title' => 'MESSAGE',
841 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_18_INCOMING_QUERY_ITEMS_VALUE_0',
842 ],
843 ],
844 ],
845 ],
846 'OUTGOING_NEEDED' => 'D',
847 'WIDGET_NEEDED' => 'D',
848 'BOT_NEEDED' => 'Y',
849 'APPLICATION_NEEDED' => 'D',
850 'SCOPE' => [
851 'imbot',
852 ],
853 'DESCRIPTION_OUTGOING' => [],
854 'DESCRIPTION_WIDGET' => [],
855 'DESCRIPTION_SCOPE' => [],
856 ],
857 ],
858 'lead-add' => [
859 'CODE' => 'lead-add',
860 'SECTION_CODE' => 'external',
861 'ELEMENT_CODE' => 'lead-add',
862 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1_TITLE',
863 'ACTIVE' => 'Y',
864 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1_DESCRIPTION',
865 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
866 'ADMIN_ONLY' => 'Y',
867 'OPTIONS' => [
868 'QUERY' => [
869 [
870 'CODE' => 'params',
871 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1_INCOMING_QUERY_TITLE',
872 'METHOD' => 'crm.lead.add',
873 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
874 'ITEMS' => [
875 [
876 'title' => 'FIELDS[TITLE]',
877 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1_INCOMING_QUERY_ITEMS_VALUE_0',
878 ],
879 [
880 'title' => 'FIELDS[NAME]',
881 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1_INCOMING_QUERY_ITEMS_VALUE_1',
882 ],
883 [
884 'title' => 'FIELDS[LAST_NAME]',
885 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1_INCOMING_QUERY_ITEMS_VALUE_2',
886 ],
887 [
888 'title' => 'FIELDS[EMAIL][0][VALUE]',
889 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1_INCOMING_QUERY_ITEMS_VALUE_3',
890 'value' => 'mail@example.com',
891 ],
892 [
893 'title' => 'FIELDS[EMAIL][0][VALUE_TYPE]',
894 'value' => 'WORK',
895 ],
896 [
897 'title' => 'FIELDS[PHONE][0][VALUE]',
898 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1_INCOMING_QUERY_ITEMS_VALUE_4',
899 'value' => '555888',
900 ],
901 [
902 'title' => 'FIELDS[PHONE][0][VALUE_TYPE]',
903 'value' => 'WORK',
904 ],
905 ],
906 'QUERY_INFORMATION_URL' => '/api-reference/crm/leads/crm-lead-add',
907 ],
908 ],
909 'OUTGOING_NEEDED' => 'D',
910 'WIDGET_NEEDED' => 'D',
911 'BOT_NEEDED' => 'D',
912 'APPLICATION_NEEDED' => 'D',
913 'SCOPE' => [
914 'crm',
915 ],
916 'DESCRIPTION_SCOPE' => [
917 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_1_DESCRIPTION_SCOPE_DESCRIPTION',
918 ],
919 ],
920 ],
921 'bot-action-chat' => [
922 'CODE' => 'bot-action-chat',
923 'ELEMENT_CODE' => 'bot-action-chat',
924 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_19_TITLE_MSGVER_1',
925 'ACTIVE' => 'Y',
926 'DESCRIPTION.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_19_DESCRIPTION',
927 'SECTION_CODE' => 'chat-bot',
928 'ICON_CLASS' => 'rest-integration-tile-img-hidden',
929 'OPTIONS' => [
930 'QUERY' => [
931 [
932 'ITEMS_TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_19_INCOMING_QUERY_TITLE',
933 'CODE' => 'params',
934 'METHOD' => 'crm.lead.add',
935 'METHOD_DOWNLOAD_EXAMPLE_TYPE' => 'query',
936 'DESCRIPTION_METHOD' => [
937 'TITLE.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_19_TITLE_MSGVER_1',
938 ],
939 'ITEMS' => [
940 [
941 'title' => 'BOT_ID',
942 'value' => '',
943 ],
944 [
945 'title' => 'CLIENT_ID',
946 'value' => '',
947 ],
948 [
949 'title' => 'DIALOG_ID',
950 'value' => 'chat1',
951 ],
952 [
953 'title' => 'FIELDS[TITLE]',
954 'value.MESSAGE_CODE' => 'REST_INTEGRATION_PATTERNS_19_INCOMING_QUERY_ITEMS_VALUE_0',
955 ],
956 ],
957 ],
958 ],
959 'OUTGOING_NEEDED' => 'Y',
960 'OUTGOING_EVENTS' => [
961 'ONCRMLEADADD',
962 'ONCRMINVOICEDELETE',
963 ],
964 'WIDGET_NEEDED' => 'N',
965 'WIDGET_DOWNLOAD_EXAMPLE' => '',
966 'BOT_NEEDED' => 'Y',
967 'APPLICATION_NEEDED' => 'D',
968 'SCOPE' => [
969 'crm',
970 'task',
971 ],
972 'DESCRIPTION_OUTGOING' => [],
973 'DESCRIPTION_WIDGET' => [],
974 'DESCRIPTION_SCOPE' => [],
975 ],
976 ],
977 ];
978 public const DEFAULT_APPLICATION = 'application';
979 public const DEFAULT_IN_WEBHOOK = 'in-hook';
980 public const DEFAULT_OUT_WEBHOOK = 'out-hook';
981
988 public static function get($code) : array
989 {
990 $result = [];
991 $cache = Cache::createInstance();
992 if ($cache->initCache(static::CACHE_TIME, 'item_v3_' . $code . LANGUAGE_ID, static::CACHE_DIR))
993 {
994 $result = $cache->getVars();
995 }
996 elseif ($cache->startDataCache())
997 {
998 $remoteDictionary = new Integration();
999 $dictionary = $remoteDictionary->toArray();
1000 if (!empty($dictionary))
1001 {
1002 $dictionaryCode = array_column($dictionary, 'code');
1003 $key = array_search($code, $dictionaryCode, true);
1004 if ($key !== false)
1005 {
1006 $result = self::prepareElement($dictionary[$key]);
1007 }
1008 }
1009
1010 if (empty($result) && !empty(static::DEFAULT_DATA[$code]))
1011 {
1012 $result = static::changeMessage(static::DEFAULT_DATA[$code]);
1013 $docUrl = DocUrl::createByDefault()->getDocUrl();
1014 static::changeInformationUrl($result, $docUrl);
1015 }
1016
1017 $result = $result['ACTIVE'] === 'Y' ? $result : [];
1018
1019 $cache->endDataCache($result);
1020 }
1021
1022 return $result;
1023 }
1024
1031 public static function getList($sectionCode) : array
1032 {
1033 $result = [];
1034 $cache = Cache::createInstance();
1035 if ($cache->initCache(static::CACHE_TIME, 'section_v3_' . $sectionCode . LANGUAGE_ID, static::CACHE_DIR))
1036 {
1037 $result = $cache->getVars();
1038 }
1039 elseif ($cache->startDataCache())
1040 {
1041 $dictionary = new Integration();
1042
1043 foreach ($dictionary as $el)
1044 {
1045 $data = static::prepareElement($el);
1046 if (is_array($data) && $sectionCode === $data['SECTION_CODE'])
1047 {
1048 $result[$data['CODE']] = $data;
1049 }
1050 }
1051
1052 if (empty($result))
1053 {
1054 $docUrl = DocUrl::createByDefault()->getDocUrl();
1055
1056 foreach (static::DEFAULT_DATA as $data)
1057 {
1058 if ($sectionCode === $data['SECTION_CODE'])
1059 {
1060 $data = static::changeMessage($data);
1061 static::changeInformationUrl($result, $docUrl);
1062 $result[$data['CODE']] = $data;
1063 }
1064 }
1065 }
1066 $result = array_filter($result, static function ($item) {
1067 return $item['ACTIVE'] === 'Y';
1068 });
1069
1070 $cache->endDataCache($result);
1071 }
1072
1073 return $result;
1074 }
1075
1076 private static function prepareElement(mixed $element): ?array
1077 {
1078 if (is_array($element) && !empty($element['option']))
1079 {
1080 $data = Json::decode(base64_decode($element['option']));
1081 if (is_array($data))
1082 {
1083 $elementsInSystem = array_filter(static::DEFAULT_DATA, static function ($itemInSystem) use ($data) {
1084 return $itemInSystem['CODE'] === $data['ELEMENT_CODE'];
1085 });
1086 $elementInSystem = empty($elementsInSystem) ? null : reset($elementsInSystem);
1087
1088 $data = static::changeMessage($data);
1089 $data['CODE'] = $data['ELEMENT_CODE'];
1090 if (empty($elementInSystem) || $elementInSystem['ACTIVE'] === 'N')
1091 {
1092 $data['ACTIVE'] = 'N';
1093 }
1094
1095 return $data;
1096 }
1097 }
1098
1099 return null;
1100 }
1101
1102 private static function changeInformationUrl(array &$data, Uri $docUrl): void
1103 {
1104 $informationUrl = $data['OPTIONS']['QUERY'][0]['QUERY_INFORMATION_URL'] ?? '';
1105
1106 if (empty($informationUrl))
1107 {
1108 return;
1109 }
1110
1111 $data['OPTIONS']['QUERY'][0]['QUERY_INFORMATION_URL'] = (string)$docUrl->setPath($informationUrl);
1112 }
1113}
const DEFAULT_OUT_WEBHOOK
Определения element.php:980
const DEFAULT_IN_WEBHOOK
Определения element.php:979
static getList($sectionCode)
Определения element.php:1031
const DEFAULT_APPLICATION
Определения element.php:978
$data['IS_AVAILABLE']
Определения .description.php:13
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
$result
Определения get_property_values.php:14
if(!is_null($config))($config as $configItem)(! $configItem->isVisible()) $code
Определения options.php:195
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)
Определения prolog_main_admin.php:393
if(empty($signedUserToken)) $key
Определения quickway.php:257