1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
tools.php
См. документацию.
1<?php
2
7use Bitrix\Crm;
8
10{
11 public static function updateModuleTasksAgent(): string
12 {
13 if (!class_exists('\catalog', false))
14 {
15 require_once($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/catalog/install/index.php');
16 }
17 if (class_exists('\catalog', false))
18 {
19 $moduleDescr = new \catalog();
20 $moduleDescr->InstallTasks();
21 unset($moduleDescr);
22 }
23
24 return '';
25 }
26
27 public static function updatePropertyFeaturesBitrix24Agent(): string
28 {
30 {
31 return '';
32 }
33 Main\Config\Option::set('iblock', 'property_features_enabled', 'Y', '');
34 if (Iblock\Model\PropertyFeature::isPropertyFeaturesExist())
35 {
36 return '';
37 }
38 if (!Loader::includeModule('crm'))
39 {
40 return '';
41 }
42 $catalogId = Crm\Product\Catalog::getDefaultId()();
43 if ($catalogId === null)
44 {
45 return '';
46 }
47
48 $catalogProperties = [
49 'ARTNUMBER' => [
50 [
51 'MODULE_ID' => 'iblock',
53 'IS_ENABLED' => 'Y',
54 ],
55 [
56 'MODULE_ID' => 'iblock',
58 'IS_ENABLED' => 'Y',
59 ],
60 ],
61 'MANUFACTURER' => [
62 [
63 'MODULE_ID' => 'iblock',
65 'IS_ENABLED' => 'Y',
66 ],
67 [
68 'MODULE_ID' => 'iblock',
70 'IS_ENABLED' => 'Y',
71 ],
72 ],
73 'MATERIAL' => [
74 [
75 'MODULE_ID' => 'iblock',
77 'IS_ENABLED' => 'Y',
78 ],
79 [
80 'MODULE_ID' => 'iblock',
82 'IS_ENABLED' => 'Y',
83 ],
84 ],
85 ];
86
88 'select' => [
89 'ID',
90 'CODE',
91 ],
92 'filter' => [
93 '=IBLOCK_ID' => $catalogId,
94 '@CODE' => array_keys($catalogProperties),
95 ]
96 ]);
97 while ($row = $iterator->fetch())
98 {
100 $row['ID'],
101 $catalogProperties[$row['CODE']]
102 );
103 }
104 unset($result, $row, $iterator);
105 unset($catalogProperties);
106
107 $offerCatalogId = \Bitrix\Crm\Product\Catalog::getDefaultOfferId();
108 if ($offerCatalogId === null)
109 {
110 return '';
111 }
112
113 $offerProperties = [
114 'ARTNUMBER' => [
115 [
116 'MODULE_ID' => 'iblock',
118 'IS_ENABLED' => 'Y',
119 ],
120 [
121 'MODULE_ID' => 'iblock',
123 'IS_ENABLED' => 'Y',
124 ],
125 [
126 'MODULE_ID' => 'catalog',
127 'FEATURE_ID' => Catalog\Product\PropertyCatalogFeature::FEATURE_ID_BASKET_PROPERTY,
128 'IS_ENABLED' => 'Y',
129 ]
130 ],
131 'COLOR_REF' => [
132 [
133 'MODULE_ID' => 'catalog',
134 'FEATURE_ID' => Catalog\Product\PropertyCatalogFeature::FEATURE_ID_OFFER_TREE_PROPERTY,
135 'IS_ENABLED' => 'Y',
136 ],
137 [
138 'MODULE_ID' => 'catalog',
139 'FEATURE_ID' => Catalog\Product\PropertyCatalogFeature::FEATURE_ID_BASKET_PROPERTY,
140 'IS_ENABLED' => 'Y',
141 ],
142 ],
143 'SIZES_SHOES' => [
144 [
145 'MODULE_ID' => 'catalog',
146 'FEATURE_ID' => Catalog\Product\PropertyCatalogFeature::FEATURE_ID_OFFER_TREE_PROPERTY,
147 'IS_ENABLED' => 'Y',
148 ],
149 [
150 'MODULE_ID' => 'catalog',
151 'FEATURE_ID' => Catalog\Product\PropertyCatalogFeature::FEATURE_ID_BASKET_PROPERTY,
152 'IS_ENABLED' => 'Y',
153 ],
154 ],
155 'SIZES_CLOTHES' => [
156 [
157 'MODULE_ID' => 'catalog',
158 'FEATURE_ID' => Catalog\Product\PropertyCatalogFeature::FEATURE_ID_OFFER_TREE_PROPERTY,
159 'IS_ENABLED' => 'Y',
160 ],
161 [
162 'MODULE_ID' => 'catalog',
163 'FEATURE_ID' => Catalog\Product\PropertyCatalogFeature::FEATURE_ID_BASKET_PROPERTY,
164 'IS_ENABLED' => 'Y',
165 ],
166 ]
167 ];
168
170 'select' => [
171 'ID',
172 'CODE',
173 ],
174 'filter' => [
175 '=IBLOCK_ID' => $offerCatalogId,
176 '@CODE' => array_keys($offerProperties),
177 ]
178 ]);
179 while ($row = $iterator->fetch())
180 {
182 $row['ID'],
183 $offerProperties[$row['CODE']]
184 );
185 }
186 unset($result, $row, $iterator);
187 unset($offerProperties);
188 unset($offerCatalogId, $catalogId);
189
190 return '';
191 }
192}
static setFeatures($propertyId, array $features)
Определения propertyfeature.php:153
static set($moduleId, $name, $value="", $siteId="")
Определения option.php:261
Определения loader.php:13
static includeModule($moduleName)
Определения loader.php:67
static isModuleInstalled($moduleName)
Определения modulemanager.php:125
static getList(array $parameters=array())
Определения datamanager.php:431
Определения tools.php:10
static updateModuleTasksAgent()
Определения tools.php:11
static updatePropertyFeaturesBitrix24Agent()
Определения tools.php:27
$result
Определения get_property_values.php:14
$_SERVER["DOCUMENT_ROOT"]
Определения cron_frame.php:9
Определения entity.php:2
$iterator
Определения yandex_run.php:610