1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
module.php
См. документацию.
1<?php
2
9
13
15{
21 var $MODULE_SORT = 10000;
26
27 public static function AddAutoloadClasses($module, $arParams = [])
28 {
29 if ($module === '')
30 {
31 $module = null;
32 }
33
34 Loader::registerAutoLoadClasses($module, $arParams);
35 return true;
36 }
37
38 public static function _GetCache()
39 {
40 return ModuleManager::getInstalledModules();
41 }
42
43 function InstallDB()
44 {
45 return false;
46 }
47
48 function UnInstallDB()
49 {
50 }
51
52 function InstallEvents()
53 {
54 }
55
56 public function InstallEventMessages(string $languageId, array $siteId): void
57 {
58 }
59
60 function UnInstallEvents()
61 {
62 }
63
64 function InstallFiles()
65 {
66 }
67
68 function UnInstallFiles()
69 {
70 }
71
72 function DoInstall()
73 {
74 }
75
76 public function GetModuleTasks()
77 {
78 return [
79 /*
80 "NAME" => array(
81 "LETTER" => "",
82 "BINDING" => "",
83 "OPERATIONS" => array(
84 "NAME",
85 "NAME",
86 ),
87 ),
88 */
89 ];
90 }
91
92 public function InstallTasks()
93 {
94 CTask::AddFromArray($this->MODULE_ID, $this->GetModuleTasks());
95 }
96
97 public function UnInstallTasks()
98 {
99 $r = \Bitrix\Main\TaskTable::getList([
100 'select' => ['ID'],
101 'filter' => ['=MODULE_ID' => $this->MODULE_ID],
102 ]);
103
104 $arIds = [];
105 while ($arR = $r->fetch())
106 {
107 $arIds[] = $arR['ID'];
108 }
109
110 if (!empty($arIds))
111 {
112 \Bitrix\Main\GroupTaskTable::deleteByFilter(['=TASK_ID' => $arIds]);
113 \Bitrix\Main\TaskOperationTable::deleteByFilter(['=TASK_ID' => $arIds]);
114 \Bitrix\Main\TaskTable::deleteByFilter(['=MODULE_ID' => $this->MODULE_ID]);
115 }
116 \Bitrix\Main\OperationTable::deleteByFilter(['=MODULE_ID' => $this->MODULE_ID]);
117 }
118
119 function IsInstalled()
120 {
121 return ModuleManager::isModuleInstalled($this->MODULE_ID);
122 }
123
124 function DoUninstall()
125 {
126 }
127
128 function Remove()
129 {
130 ModuleManager::delete($this->MODULE_ID);
131 }
132
133 function Add()
134 {
135 ModuleManager::add($this->MODULE_ID);
136 }
137
138 public static function GetList()
139 {
140 $result = new CDBResult;
141 $result->InitFromArray(CModule::_GetCache());
142 return $result;
143 }
144
151 public static function IncludeModule($module_name)
152 {
153 return Loader::includeModule($module_name);
154 }
155
156 public static function IncludeModuleEx($module_name)
157 {
158 return Loader::includeSharewareModule($module_name);
159 }
160
161 public static function GetDropDownList()
162 {
163 return ModuleTable::getList([
164 'select' => ['REFERENCE_ID' => 'ID', 'REFERENCE' => 'ID'],
165 'order' => ['ID' => 'ASC'],
166 'cache' => ['ttl' => 86400],
167 ]);
168 }
169
174 public static function CreateModuleObject($moduleId)
175 {
176 if (!ModuleManager::isValidModule($moduleId))
177 {
178 return false;
179 }
180
181 $path = getLocalPath("modules/" . $moduleId . "/install/index.php");
182 if ($path === false)
183 {
184 return false;
185 }
186
187 include_once($_SERVER["DOCUMENT_ROOT"] . $path);
188
189 $className = str_replace(".", "_", $moduleId);
190 if (!class_exists($className))
191 {
192 return false;
193 }
194
195 return new $className;
196 }
197}
$arParams
Определения access_dialog.php:21
$path
Определения access_edit.php:21
Определения loader.php:13
static AddFromArray(string $module, array $tasks)
Определения task.php:487
Определения dbresult.php:88
Определения module.php:15
static GetDropDownList()
Определения module.php:161
$PARTNER_NAME
Определения module.php:24
$MODULE_GROUP_RIGHTS
Определения module.php:23
static IncludeModuleEx($module_name)
Определения module.php:156
static _GetCache()
Определения module.php:38
$SHOW_SUPER_ADMIN_GROUP_RIGHTS
Определения module.php:22
$MODULE_SORT
Определения module.php:21
InstallEvents()
Определения module.php:52
UnInstallDB()
Определения module.php:48
InstallDB()
Определения module.php:43
static GetList()
Определения module.php:138
$MODULE_VERSION
Определения module.php:18
$MODULE_VERSION_DATE
Определения module.php:19
GetModuleTasks()
Определения module.php:76
$MODULE_NAME
Определения module.php:16
$MODULE_DESCRIPTION
Определения module.php:17
static IncludeModule($module_name)
Определения module.php:151
static CreateModuleObject($moduleId)
Определения module.php:174
DoUninstall()
Определения module.php:124
Add()
Определения module.php:133
InstallEventMessages(string $languageId, array $siteId)
Определения module.php:56
IsInstalled()
Определения module.php:119
DoInstall()
Определения module.php:72
InstallFiles()
Определения module.php:64
static AddAutoloadClasses($module, $arParams=[])
Определения module.php:27
$PARTNER_URI
Определения module.php:25
Remove()
Определения module.php:128
$MODULE_ID
Определения module.php:20
UnInstallTasks()
Определения module.php:97
UnInstallFiles()
Определения module.php:68
InstallTasks()
Определения module.php:92
UnInstallEvents()
Определения module.php:60
</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
$moduleId
$_SERVER["DOCUMENT_ROOT"]
Определения cron_frame.php:9
$siteId
Определения ajax.php:8
getLocalPath($path, $baseFolder="/bitrix")
Определения tools.php:5092