1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
include.php
См. документацию.
1<?php
2
5use Bitrix\Main\Page\Asset;
7
9
14define("IM_REVISION", 117);
19define("IM_REVISION_MOBILE", 8); // sync with im.recent/im.dialog components
20
21define("IM_MESSAGE_SYSTEM", "S");
22define("IM_MESSAGE_PRIVATE", "P");
23define("IM_MESSAGE_CHAT", "C");
24define("IM_MESSAGE_OPEN", "O");
25define("IM_MESSAGE_COMMENT", "T");
26define("IM_MESSAGE_OPEN_LINE", "L");
27
28define("IM_CHAT_TYPE_PERSONAL", "PERSONAL");
33define("IM_MESSAGE_GROUP", "C");
34
35define("IM_NOTIFY_MESSAGE", 0);
36define("IM_NOTIFY_CONFIRM", 1);
37define("IM_NOTIFY_FROM", 2);
38define("IM_NOTIFY_SYSTEM", 4);
39
40define("IM_STATUS_UNREAD", 0);
41define("IM_STATUS_NOTIFY", 1);
42define("IM_STATUS_READ", 2);
43
44define("IM_MESSAGE_STATUS_RECEIVED", 'received');
45define("IM_MESSAGE_STATUS_ERROR", 'error');
46define("IM_MESSAGE_STATUS_DELIVERED", 'delivered');
47
48define("IM_CALL_NONE", 0);
49define("IM_CALL_VIDEO", 1);
50define("IM_CALL_AUDIO", 2);
51
52define("IM_MAIL_SKIP", '#SKIP#');
53
54define("IM_CALL_STATUS_NONE", 0);
55define("IM_CALL_STATUS_WAIT", 1);
56define("IM_CALL_STATUS_ANSWER", 2);
57define("IM_CALL_STATUS_DECLINE", 3);
58
59define("IM_CALL_END_BUSY", 'busy');
60define("IM_CALL_END_DECLINE", 'decline');
61define("IM_CALL_END_TIMEOUT", 'waitTimeout');
62define("IM_CALL_END_ACCESS", 'errorAccess');
63define("IM_CALL_END_OFFLINE", 'errorOffline');
64
65define("IM_SPEED_NOTIFY", 1);
66define("IM_SPEED_MESSAGE", 2);
67define("IM_SPEED_GROUP", 3);
68
69define("IM_CHECK_UPDATE", 'update');
70define("IM_CHECK_DELETE", 'delete');
71
72define("IM_DESKTOP_WINDOWS", 'windows');
73define("IM_DESKTOP_MAC", 'mac');
74define("IM_DESKTOP_LINUX", 'linux');
75
76define("IM_NOTIFY_FEATURE_SITE", "site");
77define("IM_NOTIFY_FEATURE_XMPP", "xmpp");
78define("IM_NOTIFY_FEATURE_MAIL", "mail");
79define("IM_NOTIFY_FEATURE_PUSH", "push");
80
81CModule::AddAutoloadClasses(
82 "im",
83 array(
84 "im" => "install/index.php",
85 "CIMSettings" => "classes/general/im_settings.php",
86 "CIMMessenger" => "classes/general/im_messenger.php",
87 "CIMNotify" => "classes/general/im_notify.php",
88 "CIMContactList" => "classes/mysql/im_contact_list.php",
89 "CIMChat" => "classes/general/im_chat.php",
90 "CIMMessage" => "classes/general/im_message.php",
91 "CIMMessageLink" => "classes/general/im_message_param.php",
92 "CIMMessageParam" => "classes/general/im_message_param.php",
93 "CIMMessageParamAttach" => "classes/general/im_message_param.php",
94 "CIMHistory" => "classes/general/im_history.php",
95 "CIMEvent" => "classes/general/im_event.php",
96 "CIMCall" => "classes/general/im_call.php",
97 "CIMMail" => "classes/general/im_mail.php",
98 "CIMConvert" => "classes/general/im_convert.php",
99 "CIMNotifySchema" => "classes/general/im_notify_schema.php",
100 "CIMRestService" => "classes/general/im_rest.php",
101 "DesktopApplication" => "classes/general/im_event.php",
102 "CIMStatus" => "classes/general/im_status.php",
103 "CIMDisk" => "classes/general/im_disk.php",
104 "CIMShare" => "classes/general/im_share.php",
105 )
106);
107
109
111 'ui.design-tokens',
112 'ui.fonts.opensans',
113 'im_desktop_utils',
114 'resize_observer',
115 'im_common',
116 'im.lib.localstorage',
117 'clipboard',
118 'sidepanel',
119 'loader',
120 'ui.notification',
121 'ui.alerts',
122 'ui.vue',
123 'ui.buttons',
124 'ui.switcher',
125 'ui.hint',
126 'im.application.launch',
127 'im.old-chat-embedding.application.left-panel',
128 'im.old-chat-embedding.application.sidebar',
129];
130
131$jsCoreRelMobile = array('im_common', 'uploader', 'mobile.pull.client');
132if (IsModuleInstalled('voximplant'))
133{
134 $jsCoreRel[] = 'voximplant';
135 $jsCoreRel[] = 'voximplant.phone-calls';
136 $jsCoreRelMobile[] = 'mobile_voximplant';
137}
138if (IsModuleInstalled('disk'))
139{
140 $jsCoreRel[] = 'file_dialog';
141 $jsCoreRel[] = 'im.integration.viewer';
142}
143if (IsModuleInstalled('calendar'))
144{
145 $jsCoreRel[] = 'calendar.sliderloader';
146}
147if (IsModuleInstalled('pull'))
148{
149 $jsCoreRel[] = 'webrtc';
150 $jsCoreRel[] = 'webrtc_adapter';
151}
152if (IsModuleInstalled('pull') || IsModuleInstalled('disk'))
153{
154 $jsCoreRel[] = 'uploader';
155}
156
158$jsCoreRelPage[] = 'im_window';
159
161 '/bitrix/js/im/im.js'
162];
163
164CJSCore::RegisterExt('im_call_compatible', array(
165 'css' => '/bitrix/js/im/css/common.css',
166 'lang' => ['/bitrix/modules/im/js_common.php', '/bitrix/modules/im/lang/'.LANGUAGE_ID.'/js_im.php'],
167));
168
169CJSCore::RegisterExt('im_common', array(
170 'js' => '/bitrix/js/im/common.js',
171 'css' => ['/bitrix/js/im/css/common.css', '/bitrix/js/im/css/dark_im.css'],
172 'lang' => '/bitrix/modules/im/js_common.php',
173 'rel' => array('ui.design-tokens', 'ls', 'ajax', 'date', 'fx', 'user', 'rest.client', 'phone_number', 'loader', 'ui.viewer', 'main.md5', 'im.debug', 'ui.notification')
174));
175
177 'js' => $jsIm,
178 'css' => array(
179 '/bitrix/js/im/css/im.css',
180 ),
181 'lang' => '/bitrix/modules/im/lang/'.LANGUAGE_ID.'/js_im.php',
182 'rel' => $jsCoreRel
183));
184
185CJSCore::RegisterExt('im_page', array(
186 'js' => $jsIm,
187 'css' => array(
188 '/bitrix/js/im/css/im.css',
189 '/bitrix/js/im/css/call/keypad.css',
190 '/bitrix/js/im/css/call/view.css',
191 '/bitrix/js/im/css/call/sidebar.css',
192 '/bitrix/js/im/css/call/promo-popup.css',
193 ),
194 'lang' => '/bitrix/modules/im/js_im.php',
195 'rel' => $jsCoreRelPage
196));
197
198CJSCore::RegisterExt('im_mobile', array(
199 'js' => '/bitrix/js/im/mobile.js',
200 'lang' => '/bitrix/modules/im/js_mobile.php',
201 'rel' => $jsCoreRelMobile
202));
203
204CJSCore::RegisterExt('im_mobile_dialog', array(
205 'js' => '/bitrix/js/im/mobile_dialog.js',
206 'lang' => '/bitrix/modules/im/js_mobile.php',
207 'rel' => $jsCoreRelMobile
208));
209
210CJSCore::RegisterExt('im_window', array(
211 'js' => '/bitrix/js/im/window.js',
212 'css' => '/bitrix/js/im/css/window.css',
213 'lang' => '/bitrix/modules/im/js_window.php',
214 'rel' => Array('ui.design-tokens', 'popup', 'fx', 'translit', 'im.component.conference.conference-create', 'ui.alerts'),
215));
216
217CJSCore::RegisterExt('im_desktop', array(
218 'js' => '/bitrix/js/im/desktop.js',
219 'lang' => '/bitrix/modules/im/js_desktop.php',
220 'rel' => array('im_page', 'socnetlogdest', 'im.lib.logger'),
221));
222
223CJSCore::RegisterExt('im_desktop_utils', array(
224 'js' => '/bitrix/js/im/desktop_utils.js',
225));
226
227CJSCore::RegisterExt('im_timecontrol', array(
228 'js' => '/bitrix/js/im/timecontrol.es6.js',
229 'rel' => array('timecontrol'),
230));
231
233{
234 $asset = Asset::getInstance();
235 $asset->addJsKernelInfo('im', array_merge(['/bitrix/js/im/common.js', '/bitrix/js/im/window.js'], $jsIm));
236 $asset->addCssKernelInfo('im', array('/bitrix/js/im/css/common.css', '/bitrix/js/im/css/dark_im.css', '/bitrix/js/im/css/window.css', '/bitrix/js/im/css/im.css', '/bitrix/js/im/css/call/view.css', '/bitrix/js/im/css/call/sidebar.css', '/bitrix/js/im/css/call/promo-popup.css'));
237}
238
239/* Copyrights */
240
241EventManager::getInstance()->addEventHandler('main', 'onGetThirdPartySoftware', function() {
242 return new EventResult(EventResult::SUCCESS, [
243 (new Copyright("Emoji-test-regex-pattern v15.1"))
244 ->setCopyright(" (c) Copyright Mathias Bynens <https://mathiasbynens.be/>")
245 ->setProductUrl('https://github.com/mathiasbynens/emoji-test-regex-pattern/')
246 ->setLicence(Copyright::LICENCE_MIT)
247 ]);
248});
249
251if (is_dir($documentRoot . '/bitrix/modules/im/dev/'))
252{
253 // developer mode
254 \Bitrix\Main\Loader::registerNamespace('Bitrix\Im\Dev', \Bitrix\Main\Loader::getDocumentRoot() . '/bitrix/modules/im/dev/lib/');
255}
static isLegacyChatActivated($userId=false)
Определения settings.php:88
static getDocumentRoot()
Определения loader.php:254
static registerNamespace($namespace, $path)
Определения loader.php:323
static RegisterExt($name, $arPaths)
Определения jscore.php:28
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
$jsCoreRel
Определения include.php:110
$isLegacyChatActivated
Определения include.php:108
if(IsModuleInstalled('voximplant')) if(IsModuleInstalled( 'disk')) if(IsModuleInstalled('calendar')) if(IsModuleInstalled( 'pull')) if(IsModuleInstalled('pull')||IsModuleInstalled('disk')) $jsCoreRelPage
Определения include.php:157
$jsIm
Определения include.php:160
$jsCoreRelMobile
Определения include.php:131
foreach(['Bitrix\\Main'=> '/lib', 'Psr\\Container'=> '/vendor/psr/container/src', 'Psr\\Log'=> '/vendor/psr/log/src', 'Psr\\Http\\Message'=> '/vendor/psr/http-message/src', 'Psr\\Http\\Client'=> '/vendor/psr/http-client/src', 'Http\\Promise'=> '/vendor/php-http/promise/src', 'PHPMailer\\PHPMailer'=> '/vendor/phpmailer/phpmailer/src', 'GeoIp2'=> '/vendor/geoip2/geoip2/src', 'MaxMind\\Db'=> '/vendor/maxmind-db/reader/src/MaxMind/Db', 'PhpParser'=> '/vendor/nikic/php-parser/lib/PhpParser', 'Recurr'=> '/vendor/simshaun/recurr/src/Recurr',] as $namespace=> $namespacePath) $documentRoot
Определения autoload.php:27
IsModuleInstalled($module_id)
Определения tools.php:5301
IncludeModuleLangFile($filepath, $lang=false, $bReturnArray=false)
Определения tools.php:3778