1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
toolbar.php
См. документацию.
1<?
3
8
10{
20
21 public function minimizeAction(JsonPayload $payload)
22 {
23 $toolbar = $this->getToolbar($payload);
24 if ($toolbar === null)
25 {
26 return [];
27 }
28
29 $itemOptions = $this->getItemOptions($payload);
30 $result = $toolbar->createOrUpdateItem($itemOptions);
31
32 $item = null;
33 if (!$result->isSuccess())
34 {
35 $this->addErrors($result->getErrors());
36 }
37 else
38 {
40 $toolbarItem = $result->getData()['item'];
41 $item = [
42 'title' => $toolbarItem->getTitle(),
43 'entityType' => $toolbarItem->getEntityType(),
44 'entityId' => $toolbarItem->getEntityId(),
45 'url' => $toolbarItem->getUrl(),
46 ];
47 }
48
49 return [
50 'item' => $item,
51 ];
52 }
53
54 public function maximizeAction(JsonPayload $payload)
55 {
56 $this->minimizeAction($payload);
57 }
58
59 public function removeAction(JsonPayload $payload)
60 {
61 [$entityType, $entityId] = $this->getItemId($payload);
62 $toolbar = $this->getToolbar($payload);
63 $toolbar?->removeItem($entityType, $entityId);
64 }
65
66 public function removeAllAction(JsonPayload $payload)
67 {
68 $toolbar = $this->getToolbar($payload);
69 $toolbar?->removeAll();
70 }
71
72 public function collapseAction(JsonPayload $payload)
73 {
74 $toolbar = $this->getToolbar($payload);
75 $toolbar?->collapse();
76 }
77
78 public function expandAction(JsonPayload $payload)
79 {
80 $toolbar = $this->getToolbar($payload);
81 $toolbar?->expand();
82 }
83
84 private function getToolbar(JsonPayload $payload): ?SidePanel\Toolbar
85 {
86 $request = $payload->getData();
87 $request = is_array($request) ? $request : [];
88
89 $context =
90 isset($request['toolbar']['context']) && is_string($request['toolbar']['context'])
91 ? trim($request['toolbar']['context'])
92 : null
93 ;
94
95 if ($context === null || strlen($context) < 1)
96 {
97 return null;
98 }
99
101 }
102
103 private function getItemOptions(JsonPayload $payload): array
104 {
105 $request = $payload->getData();
106 $request = is_array($request) ? $request : [];
107
108 return isset($request['item']) && is_array($request['item']) ? $request['item'] : [];
109 }
110
111 private function getItemId(JsonPayload $payload): array
112 {
113 $options = $this->getItemOptions($payload);
114 $entityType =
115 isset($options['entityType']) && is_string($options['entityType'])
116 ? trim($options['entityType'])
117 : ''
118 ;
119
120 $entityId =
121 isset($options['entityId']) && is_string($options['entityId'])
122 ? trim($options['entityId'])
123 : ''
124 ;
125
126 return [$entityType, $entityId];
127 }
128}
if(!Loader::includeModule('catalog')) if(!AccessController::getCurrent() ->check(ActionDictionary::ACTION_PRICE_EDIT)) if(!check_bitrix_sessid()) $request
Определения catalog_reindex.php:36
collapseAction(JsonPayload $payload)
Определения toolbar.php:72
removeAllAction(JsonPayload $payload)
Определения toolbar.php:66
expandAction(JsonPayload $payload)
Определения toolbar.php:78
maximizeAction(JsonPayload $payload)
Определения toolbar.php:54
removeAction(JsonPayload $payload)
Определения toolbar.php:59
addErrors(array $errors)
Определения controller.php:1083
static getOrCreate(string $context, int $userId=0)
Определения Toolbar.php:67
$options
Определения commerceml2.php:49
</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
$context
Определения csv_new_setup.php:223
Определения Toolbar.php:2
$entityId
Определения payment.php:4
if($vatExport) $itemOptions
Определения yandex_run.php:952