@@ -1,7 +1,7 @@ discard block  | 
                                                    ||
| 1 | 1 | <?php  | 
                                                        
| 2 | 2 | |
| 3 | -require_once $_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/main/include/prolog_admin_before.php';  | 
                                                        |
| 4 | -require_once $_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/main/include/prolog_admin_after.php';  | 
                                                        |
| 3 | +require_once $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/prolog_admin_before.php';  | 
                                                        |
| 4 | +require_once $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/prolog_admin_after.php';  | 
                                                        |
| 5 | 5 |  $APPLICATION->SetTitle('Инструкция по созданию бота и настройке модуля'); | 
                                                        
| 6 | 6 | ?>  | 
                                                        
| 7 | 7 | |
@@ -50,4 +50,4 @@ discard block  | 
                                                    ||
| 50 | 50 | </ol>  | 
                                                        
| 51 | 51 | |
| 52 | 52 | <?php  | 
                                                        
| 53 | -require_once $_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/main/include/epilog_admin.php';  | 
                                                        |
| 53 | +require_once $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/epilog_admin.php';  | 
                                                        |
@@ -1,25 +1,25 @@  | 
                                                    ||
| 1 | 1 | <?php  | 
                                                        
| 2 | 2 | $menu = [  | 
                                                        
| 3 | - [  | 
                                                        |
| 4 | - 'parent_menu' => 'global_menu_services',  | 
                                                        |
| 5 | - 'sort' => 1000,  | 
                                                        |
| 6 | - 'text' => 'Телеграм',  | 
                                                        |
| 7 | - 'title' => 'Телеграм',  | 
                                                        |
| 8 | - 'items_id' => 'menu_references',  | 
                                                        |
| 9 | - 'icon' => '',  | 
                                                        |
| 10 | - 'items' => [  | 
                                                        |
| 11 | - [  | 
                                                        |
| 12 | - 'text' => 'Настройки',  | 
                                                        |
| 13 | - 'url' => 'telegram_main.php?lang=' . LANGUAGE_ID,  | 
                                                        |
| 14 | - 'title' => 'Настройки',  | 
                                                        |
| 15 | - ],  | 
                                                        |
| 16 | - [  | 
                                                        |
| 17 | - 'text' => 'Инструкция',  | 
                                                        |
| 18 | - 'url' => 'telegram_instruction.php?lang=' . LANGUAGE_ID,  | 
                                                        |
| 19 | - 'title' => 'Регистрация бота',  | 
                                                        |
| 20 | - ],  | 
                                                        |
| 21 | - ],  | 
                                                        |
| 22 | - ],  | 
                                                        |
| 3 | + [  | 
                                                        |
| 4 | + 'parent_menu' => 'global_menu_services',  | 
                                                        |
| 5 | + 'sort' => 1000,  | 
                                                        |
| 6 | + 'text' => 'Телеграм',  | 
                                                        |
| 7 | + 'title' => 'Телеграм',  | 
                                                        |
| 8 | + 'items_id' => 'menu_references',  | 
                                                        |
| 9 | + 'icon' => '',  | 
                                                        |
| 10 | + 'items' => [  | 
                                                        |
| 11 | + [  | 
                                                        |
| 12 | + 'text' => 'Настройки',  | 
                                                        |
| 13 | + 'url' => 'telegram_main.php?lang=' . LANGUAGE_ID,  | 
                                                        |
| 14 | + 'title' => 'Настройки',  | 
                                                        |
| 15 | + ],  | 
                                                        |
| 16 | + [  | 
                                                        |
| 17 | + 'text' => 'Инструкция',  | 
                                                        |
| 18 | + 'url' => 'telegram_instruction.php?lang=' . LANGUAGE_ID,  | 
                                                        |
| 19 | + 'title' => 'Регистрация бота',  | 
                                                        |
| 20 | + ],  | 
                                                        |
| 21 | + ],  | 
                                                        |
| 22 | + ],  | 
                                                        |
| 23 | 23 | ];  | 
                                                        
| 24 | 24 | |
| 25 | 25 | return $menu;  | 
                                                        
@@ -39,8 +39,8 @@ discard block  | 
                                                    ||
| 39 | 39 | </td>  | 
                                                        
| 40 | 40 | <td class="adm-detail-content-cell-r">  | 
                                                        
| 41 | 41 | <input name="module_on"  | 
                                                        
| 42 | - value="<?=Config::statusModule();?>"  | 
                                                        |
| 43 | - <?=Config::statusModule() ? 'checked="checked"' : '';?>  | 
                                                        |
| 42 | + value="<?=Config::statusModule(); ?>"  | 
                                                        |
| 43 | + <?=Config::statusModule() ? 'checked="checked"' : ''; ?>  | 
                                                        |
| 44 | 44 | type="checkbox"  | 
                                                        
| 45 | 45 | class="module_on"  | 
                                                        
| 46 | 46 | title="">  | 
                                                        
@@ -53,7 +53,7 @@ discard block  | 
                                                    ||
| 53 | 53 | <td class="adm-detail-content-cell-r">  | 
                                                        
| 54 | 54 | <input name="token"  | 
                                                        
| 55 | 55 | size="50"  | 
                                                        
| 56 | - value="<?=Config::getToken();?>"  | 
                                                        |
| 56 | + value="<?=Config::getToken(); ?>"  | 
                                                        |
| 57 | 57 | type="text"  | 
                                                        
| 58 | 58 | class="token"  | 
                                                        
| 59 | 59 | title="">  | 
                                                        
@@ -66,9 +66,9 @@ discard block  | 
                                                    ||
| 66 | 66 | <td class="adm-detail-content-cell-r">  | 
                                                        
| 67 | 67 | <select name="mail[]" class="mail" title="" size="<?=count($mailTemplates)?>" multiple>  | 
                                                        
| 68 | 68 | <?php foreach ($mailTemplates as $item) : ?>  | 
                                                        
| 69 | - <option value="<?=$item['EVENT_NAME'];?>"  | 
                                                        |
| 70 | - <?=in_array($item['EVENT_NAME'], Config::getMail(), true) ? 'selected' : '';?>>  | 
                                                        |
| 71 | - <?=$item['NAME'];?>  | 
                                                        |
| 69 | + <option value="<?=$item['EVENT_NAME']; ?>"  | 
                                                        |
| 70 | + <?=in_array($item['EVENT_NAME'], Config::getMail(), true) ? 'selected' : ''; ?>>  | 
                                                        |
| 71 | + <?=$item['NAME']; ?>  | 
                                                        |
| 72 | 72 | </option>  | 
                                                        
| 73 | 73 | <?php endforeach; ?>  | 
                                                        
| 74 | 74 | </select>  | 
                                                        
@@ -142,8 +142,8 @@ discard block  | 
                                                    ||
| 142 | 142 | </td>  | 
                                                        
| 143 | 143 | <td class="adm-detail-content-cell-r">  | 
                                                        
| 144 | 144 | <input name="proxy_on"  | 
                                                        
| 145 | - value="<?=Config::statusProxy();?>"  | 
                                                        |
| 146 | - <?=Config::statusProxy() ? 'checked="checked"' : '';?>  | 
                                                        |
| 145 | + value="<?=Config::statusProxy(); ?>"  | 
                                                        |
| 146 | + <?=Config::statusProxy() ? 'checked="checked"' : ''; ?>  | 
                                                        |
| 147 | 147 | type="checkbox"  | 
                                                        
| 148 | 148 | class="proxy_on"  | 
                                                        
| 149 | 149 | title="">  | 
                                                        
@@ -156,7 +156,7 @@ discard block  | 
                                                    ||
| 156 | 156 | <td class="adm-detail-content-cell-r">  | 
                                                        
| 157 | 157 | <input name="proxy_url"  | 
                                                        
| 158 | 158 | size="50"  | 
                                                        
| 159 | - value="<?=Config::proxyData()['url'];?>"  | 
                                                        |
| 159 | + value="<?=Config::proxyData()['url']; ?>"  | 
                                                        |
| 160 | 160 | type="text"  | 
                                                        
| 161 | 161 | class="proxy_url"  | 
                                                        
| 162 | 162 | title="">  | 
                                                        
@@ -169,7 +169,7 @@ discard block  | 
                                                    ||
| 169 | 169 | <td class="adm-detail-content-cell-r">  | 
                                                        
| 170 | 170 | <input name="proxy_port"  | 
                                                        
| 171 | 171 | size="50"  | 
                                                        
| 172 | - value="<?=Config::proxyData()['port'];?>"  | 
                                                        |
| 172 | + value="<?=Config::proxyData()['port']; ?>"  | 
                                                        |
| 173 | 173 | type="text"  | 
                                                        
| 174 | 174 | class="proxy_port"  | 
                                                        
| 175 | 175 | title="">  | 
                                                        
@@ -182,7 +182,7 @@ discard block  | 
                                                    ||
| 182 | 182 | <td class="adm-detail-content-cell-r">  | 
                                                        
| 183 | 183 | <input name="proxy_user"  | 
                                                        
| 184 | 184 | size="50"  | 
                                                        
| 185 | - value="<?=Config::proxyData()['user'];?>"  | 
                                                        |
| 185 | + value="<?=Config::proxyData()['user']; ?>"  | 
                                                        |
| 186 | 186 | type="text"  | 
                                                        
| 187 | 187 | class="proxy_user"  | 
                                                        
| 188 | 188 | title="">  | 
                                                        
@@ -195,7 +195,7 @@ discard block  | 
                                                    ||
| 195 | 195 | <td class="adm-detail-content-cell-r">  | 
                                                        
| 196 | 196 | <input name="proxy_pass"  | 
                                                        
| 197 | 197 | size="50"  | 
                                                        
| 198 | - value="<?=Config::proxyData()['pass'];?>"  | 
                                                        |
| 198 | + value="<?=Config::proxyData()['pass']; ?>"  | 
                                                        |
| 199 | 199 | type="text"  | 
                                                        
| 200 | 200 | class="proxy_pass"  | 
                                                        
| 201 | 201 | title="">  | 
                                                        
@@ -1,5 +1,5 @@  | 
                                                    ||
| 1 | 1 | <?php  | 
                                                        
| 2 | 2 | $arModuleVersion = [  | 
                                                        
| 3 | - 'VERSION' => '1.0.4',  | 
                                                        |
| 4 | - 'VERSION_DATE' => '2018-10-14'  | 
                                                        |
| 3 | + 'VERSION' => '1.0.4',  | 
                                                        |
| 4 | + 'VERSION_DATE' => '2018-10-14'  | 
                                                        |
| 5 | 5 | ];  | 
                                                        
@@ -10,137 +10,137 @@  | 
                                                    ||
| 10 | 10 | */  | 
                                                        
| 11 | 11 | Class telegram_send extends CModule  | 
                                                        
| 12 | 12 |  { | 
                                                        
| 13 | - const MODULE_ID = 'telegram.send';  | 
                                                        |
| 14 | - public $MODULE_ID;  | 
                                                        |
| 15 | - public $MODULE_VERSION;  | 
                                                        |
| 16 | - public $MODULE_VERSION_DATE;  | 
                                                        |
| 17 | - public $MODULE_NAME;  | 
                                                        |
| 18 | - public $MODULE_DESCRIPTION;  | 
                                                        |
| 19 | - public $MODULE_GROUP_RIGHTS;  | 
                                                        |
| 20 | - public $PARTNER_NAME;  | 
                                                        |
| 21 | - public $PARTNER_URI;  | 
                                                        |
| 22 | - private $errors;  | 
                                                        |
| 13 | + const MODULE_ID = 'telegram.send';  | 
                                                        |
| 14 | + public $MODULE_ID;  | 
                                                        |
| 15 | + public $MODULE_VERSION;  | 
                                                        |
| 16 | + public $MODULE_VERSION_DATE;  | 
                                                        |
| 17 | + public $MODULE_NAME;  | 
                                                        |
| 18 | + public $MODULE_DESCRIPTION;  | 
                                                        |
| 19 | + public $MODULE_GROUP_RIGHTS;  | 
                                                        |
| 20 | + public $PARTNER_NAME;  | 
                                                        |
| 21 | + public $PARTNER_URI;  | 
                                                        |
| 22 | + private $errors;  | 
                                                        |
| 23 | 23 | |
| 24 | - /**  | 
                                                        |
| 25 | - * telegram_send constructor.  | 
                                                        |
| 26 | - */  | 
                                                        |
| 27 | - public function __construct()  | 
                                                        |
| 28 | -    { | 
                                                        |
| 29 | - $arModuleVersion = [];  | 
                                                        |
| 30 | - include __DIR__ . '/version.php';  | 
                                                        |
| 31 | - $this->MODULE_NAME = 'Телеграм';  | 
                                                        |
| 32 | - $this->MODULE_DESCRIPTION = 'Отправка почтовых сообщений в телеграм';  | 
                                                        |
| 33 | - $this->MODULE_ID = 'telegram.send';  | 
                                                        |
| 34 | - $this->MODULE_VERSION = $arModuleVersion['VERSION'];  | 
                                                        |
| 35 | - $this->MODULE_VERSION_DATE = $arModuleVersion['VERSION_DATE'];  | 
                                                        |
| 36 | - $this->MODULE_GROUP_RIGHTS = 'N';  | 
                                                        |
| 37 | - $this->PARTNER_NAME = 'Varrcan';  | 
                                                        |
| 38 | - $this->PARTNER_URI = 'https://varrcan.me';  | 
                                                        |
| 39 | - }  | 
                                                        |
| 24 | + /**  | 
                                                        |
| 25 | + * telegram_send constructor.  | 
                                                        |
| 26 | + */  | 
                                                        |
| 27 | + public function __construct()  | 
                                                        |
| 28 | +	{ | 
                                                        |
| 29 | + $arModuleVersion = [];  | 
                                                        |
| 30 | + include __DIR__ . '/version.php';  | 
                                                        |
| 31 | + $this->MODULE_NAME = 'Телеграм';  | 
                                                        |
| 32 | + $this->MODULE_DESCRIPTION = 'Отправка почтовых сообщений в телеграм';  | 
                                                        |
| 33 | + $this->MODULE_ID = 'telegram.send';  | 
                                                        |
| 34 | + $this->MODULE_VERSION = $arModuleVersion['VERSION'];  | 
                                                        |
| 35 | + $this->MODULE_VERSION_DATE = $arModuleVersion['VERSION_DATE'];  | 
                                                        |
| 36 | + $this->MODULE_GROUP_RIGHTS = 'N';  | 
                                                        |
| 37 | + $this->PARTNER_NAME = 'Varrcan';  | 
                                                        |
| 38 | + $this->PARTNER_URI = 'https://varrcan.me';  | 
                                                        |
| 39 | + }  | 
                                                        |
| 40 | 40 | |
| 41 | - /**  | 
                                                        |
| 42 | - * Действия при установке модуля  | 
                                                        |
| 43 | - * @return bool|void  | 
                                                        |
| 44 | - */  | 
                                                        |
| 45 | - public function doInstall()  | 
                                                        |
| 46 | -    { | 
                                                        |
| 47 | - global $USER;  | 
                                                        |
| 48 | -        if ($USER->IsAdmin()) { | 
                                                        |
| 49 | - ModuleManager::registerModule($this->MODULE_ID);  | 
                                                        |
| 50 | - $this->InstallEvents();  | 
                                                        |
| 51 | - $this->InstallFiles();  | 
                                                        |
| 52 | - }  | 
                                                        |
| 53 | - }  | 
                                                        |
| 41 | + /**  | 
                                                        |
| 42 | + * Действия при установке модуля  | 
                                                        |
| 43 | + * @return bool|void  | 
                                                        |
| 44 | + */  | 
                                                        |
| 45 | + public function doInstall()  | 
                                                        |
| 46 | +	{ | 
                                                        |
| 47 | + global $USER;  | 
                                                        |
| 48 | +		if ($USER->IsAdmin()) { | 
                                                        |
| 49 | + ModuleManager::registerModule($this->MODULE_ID);  | 
                                                        |
| 50 | + $this->InstallEvents();  | 
                                                        |
| 51 | + $this->InstallFiles();  | 
                                                        |
| 52 | + }  | 
                                                        |
| 53 | + }  | 
                                                        |
| 54 | 54 | |
| 55 | - /**  | 
                                                        |
| 56 | - * Регистрация событий  | 
                                                        |
| 57 | - * @return bool|void  | 
                                                        |
| 58 | - */  | 
                                                        |
| 59 | - public function InstallEvents()  | 
                                                        |
| 60 | -    { | 
                                                        |
| 61 | - $eventManager = EventManager::getInstance();  | 
                                                        |
| 62 | - $eventManager->registerEventHandler(  | 
                                                        |
| 63 | - 'main',  | 
                                                        |
| 64 | - 'OnBeforeEventSend',  | 
                                                        |
| 65 | - $this->MODULE_ID,  | 
                                                        |
| 66 | - 'Telegram\\Send\\Main',  | 
                                                        |
| 67 | - 'getEventSend'  | 
                                                        |
| 68 | - );  | 
                                                        |
| 69 | - }  | 
                                                        |
| 55 | + /**  | 
                                                        |
| 56 | + * Регистрация событий  | 
                                                        |
| 57 | + * @return bool|void  | 
                                                        |
| 58 | + */  | 
                                                        |
| 59 | + public function InstallEvents()  | 
                                                        |
| 60 | +	{ | 
                                                        |
| 61 | + $eventManager = EventManager::getInstance();  | 
                                                        |
| 62 | + $eventManager->registerEventHandler(  | 
                                                        |
| 63 | + 'main',  | 
                                                        |
| 64 | + 'OnBeforeEventSend',  | 
                                                        |
| 65 | + $this->MODULE_ID,  | 
                                                        |
| 66 | + 'Telegram\\Send\\Main',  | 
                                                        |
| 67 | + 'getEventSend'  | 
                                                        |
| 68 | + );  | 
                                                        |
| 69 | + }  | 
                                                        |
| 70 | 70 | |
| 71 | - /**  | 
                                                        |
| 72 | - * Копирование файлов  | 
                                                        |
| 73 | - *  | 
                                                        |
| 74 | - * @param array $arParams  | 
                                                        |
| 75 | - */  | 
                                                        |
| 76 | - public function InstallFiles($arParams = [])  | 
                                                        |
| 77 | -    { | 
                                                        |
| 78 | - if (!is_dir($_SERVER['DOCUMENT_ROOT'] . '/bitrix/js/' . self::MODULE_ID) && !mkdir($concurrentDirectory =  | 
                                                        |
| 79 | -                $_SERVER['DOCUMENT_ROOT'] . '/bitrix/js/' . self::MODULE_ID) && !is_dir($concurrentDirectory)) { | 
                                                        |
| 80 | -                    throw new \RuntimeException(sprintf('Directory "%s" was not created', $concurrentDirectory)); | 
                                                        |
| 81 | - }  | 
                                                        |
| 82 | - CopyDirFiles(  | 
                                                        |
| 83 | - $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/' . self::MODULE_ID . '/install/admin',  | 
                                                        |
| 84 | - $_SERVER['DOCUMENT_ROOT'] . '/bitrix/admin',  | 
                                                        |
| 85 | - true,  | 
                                                        |
| 86 | - true  | 
                                                        |
| 87 | - );  | 
                                                        |
| 88 | - CopyDirFiles(  | 
                                                        |
| 89 | - $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/' . self::MODULE_ID . '/install/js/',  | 
                                                        |
| 90 | - $_SERVER['DOCUMENT_ROOT'] . '/bitrix/js/',  | 
                                                        |
| 91 | - true,  | 
                                                        |
| 92 | - true  | 
                                                        |
| 93 | - );  | 
                                                        |
| 94 | - }  | 
                                                        |
| 71 | + /**  | 
                                                        |
| 72 | + * Копирование файлов  | 
                                                        |
| 73 | + *  | 
                                                        |
| 74 | + * @param array $arParams  | 
                                                        |
| 75 | + */  | 
                                                        |
| 76 | + public function InstallFiles($arParams = [])  | 
                                                        |
| 77 | +	{ | 
                                                        |
| 78 | + if (!is_dir($_SERVER['DOCUMENT_ROOT'] . '/bitrix/js/' . self::MODULE_ID) && !mkdir($concurrentDirectory =  | 
                                                        |
| 79 | +				$_SERVER['DOCUMENT_ROOT'] . '/bitrix/js/' . self::MODULE_ID) && !is_dir($concurrentDirectory)) { | 
                                                        |
| 80 | +					throw new \RuntimeException(sprintf('Directory "%s" was not created', $concurrentDirectory)); | 
                                                        |
| 81 | + }  | 
                                                        |
| 82 | + CopyDirFiles(  | 
                                                        |
| 83 | + $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/' . self::MODULE_ID . '/install/admin',  | 
                                                        |
| 84 | + $_SERVER['DOCUMENT_ROOT'] . '/bitrix/admin',  | 
                                                        |
| 85 | + true,  | 
                                                        |
| 86 | + true  | 
                                                        |
| 87 | + );  | 
                                                        |
| 88 | + CopyDirFiles(  | 
                                                        |
| 89 | + $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/' . self::MODULE_ID . '/install/js/',  | 
                                                        |
| 90 | + $_SERVER['DOCUMENT_ROOT'] . '/bitrix/js/',  | 
                                                        |
| 91 | + true,  | 
                                                        |
| 92 | + true  | 
                                                        |
| 93 | + );  | 
                                                        |
| 94 | + }  | 
                                                        |
| 95 | 95 | |
| 96 | - /**  | 
                                                        |
| 97 | - * Действия при удалении модуля  | 
                                                        |
| 98 | - */  | 
                                                        |
| 99 | - public function doUninstall()  | 
                                                        |
| 100 | -    { | 
                                                        |
| 101 | - $this->UnInstallEvents();  | 
                                                        |
| 102 | - $this->UnInstallFiles();  | 
                                                        |
| 103 | - $this->UnInstallDB();  | 
                                                        |
| 104 | - ModuleManager::unregisterModule($this->MODULE_ID);  | 
                                                        |
| 105 | - }  | 
                                                        |
| 96 | + /**  | 
                                                        |
| 97 | + * Действия при удалении модуля  | 
                                                        |
| 98 | + */  | 
                                                        |
| 99 | + public function doUninstall()  | 
                                                        |
| 100 | +	{ | 
                                                        |
| 101 | + $this->UnInstallEvents();  | 
                                                        |
| 102 | + $this->UnInstallFiles();  | 
                                                        |
| 103 | + $this->UnInstallDB();  | 
                                                        |
| 104 | + ModuleManager::unregisterModule($this->MODULE_ID);  | 
                                                        |
| 105 | + }  | 
                                                        |
| 106 | 106 | |
| 107 | - /**  | 
                                                        |
| 108 | - * Удаление событий  | 
                                                        |
| 109 | - * @return bool|void  | 
                                                        |
| 110 | - */  | 
                                                        |
| 111 | - public function UnInstallEvents()  | 
                                                        |
| 112 | -    { | 
                                                        |
| 107 | + /**  | 
                                                        |
| 108 | + * Удаление событий  | 
                                                        |
| 109 | + * @return bool|void  | 
                                                        |
| 110 | + */  | 
                                                        |
| 111 | + public function UnInstallEvents()  | 
                                                        |
| 112 | +	{ | 
                                                        |
| 113 | 113 | |
| 114 | - $eventManager = EventManager::getInstance();  | 
                                                        |
| 115 | - $eventManager->unRegisterEventHandler(  | 
                                                        |
| 116 | - 'main',  | 
                                                        |
| 117 | - 'OnBeforeEventSend',  | 
                                                        |
| 118 | - $this->MODULE_ID,  | 
                                                        |
| 119 | - 'Telegram\\Send\\Main',  | 
                                                        |
| 120 | - 'getEventSend'  | 
                                                        |
| 121 | - );  | 
                                                        |
| 122 | - }  | 
                                                        |
| 114 | + $eventManager = EventManager::getInstance();  | 
                                                        |
| 115 | + $eventManager->unRegisterEventHandler(  | 
                                                        |
| 116 | + 'main',  | 
                                                        |
| 117 | + 'OnBeforeEventSend',  | 
                                                        |
| 118 | + $this->MODULE_ID,  | 
                                                        |
| 119 | + 'Telegram\\Send\\Main',  | 
                                                        |
| 120 | + 'getEventSend'  | 
                                                        |
| 121 | + );  | 
                                                        |
| 122 | + }  | 
                                                        |
| 123 | 123 | |
| 124 | - /**  | 
                                                        |
| 125 | - * Удаление файлов  | 
                                                        |
| 126 | - * @return bool|void  | 
                                                        |
| 127 | - */  | 
                                                        |
| 128 | - public function UnInstallFiles()  | 
                                                        |
| 129 | -    { | 
                                                        |
| 130 | -        DeleteDirFilesEx("/bitrix/admin/telegram_main.php"); | 
                                                        |
| 131 | -        DeleteDirFilesEx("/bitrix/js/telegram.send/"); | 
                                                        |
| 132 | - }  | 
                                                        |
| 124 | + /**  | 
                                                        |
| 125 | + * Удаление файлов  | 
                                                        |
| 126 | + * @return bool|void  | 
                                                        |
| 127 | + */  | 
                                                        |
| 128 | + public function UnInstallFiles()  | 
                                                        |
| 129 | +	{ | 
                                                        |
| 130 | +		DeleteDirFilesEx("/bitrix/admin/telegram_main.php"); | 
                                                        |
| 131 | +		DeleteDirFilesEx("/bitrix/js/telegram.send/"); | 
                                                        |
| 132 | + }  | 
                                                        |
| 133 | 133 | |
| 134 | - /**  | 
                                                        |
| 135 | - * Удаление таблицы настроек  | 
                                                        |
| 136 | - *  | 
                                                        |
| 137 | - * @param array $arParams  | 
                                                        |
| 138 | - *  | 
                                                        |
| 139 | - * @return bool|void  | 
                                                        |
| 140 | - * @throws \Bitrix\Main\Db\SqlQueryException  | 
                                                        |
| 141 | - */  | 
                                                        |
| 142 | - public function UnInstallDB($arParams = [])  | 
                                                        |
| 143 | -    { | 
                                                        |
| 144 | -        Application::getConnection()->query("DELETE FROM b_option WHERE `MODULE_ID`='{$this->MODULE_ID}'"); | 
                                                        |
| 145 | - }  | 
                                                        |
| 134 | + /**  | 
                                                        |
| 135 | + * Удаление таблицы настроек  | 
                                                        |
| 136 | + *  | 
                                                        |
| 137 | + * @param array $arParams  | 
                                                        |
| 138 | + *  | 
                                                        |
| 139 | + * @return bool|void  | 
                                                        |
| 140 | + * @throws \Bitrix\Main\Db\SqlQueryException  | 
                                                        |
| 141 | + */  | 
                                                        |
| 142 | + public function UnInstallDB($arParams = [])  | 
                                                        |
| 143 | +	{ | 
                                                        |
| 144 | +		Application::getConnection()->query("DELETE FROM b_option WHERE `MODULE_ID`='{$this->MODULE_ID}'"); | 
                                                        |
| 145 | + }  | 
                                                        |
| 146 | 146 | }  | 
                                                        
@@ -2,12 +2,12 @@  | 
                                                    ||
| 2 | 2 |  defined('B_PROLOG_INCLUDED') and (B_PROLOG_INCLUDED === true) or die(); | 
                                                        
| 3 | 3 | |
| 4 | 4 |  if (file_exists(__DIR__ . '/reinstalljs')) { | 
                                                        
| 5 | - CopyDirFiles(  | 
                                                        |
| 6 | - $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/telegram.send/install/js/',  | 
                                                        |
| 7 | - $_SERVER['DOCUMENT_ROOT'] . '/bitrix/js/',  | 
                                                        |
| 8 | - true,  | 
                                                        |
| 9 | - true  | 
                                                        |
| 10 | - );  | 
                                                        |
| 5 | + CopyDirFiles(  | 
                                                        |
| 6 | + $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/telegram.send/install/js/',  | 
                                                        |
| 7 | + $_SERVER['DOCUMENT_ROOT'] . '/bitrix/js/',  | 
                                                        |
| 8 | + true,  | 
                                                        |
| 9 | + true  | 
                                                        |
| 10 | + );  | 
                                                        |
| 11 | 11 | |
| 12 | - unlink(__DIR__ . '/reinstalljs');  | 
                                                        |
| 12 | + unlink(__DIR__ . '/reinstalljs');  | 
                                                        |
| 13 | 13 | }  | 
                                                        
@@ -11,61 +11,61 @@  | 
                                                    ||
| 11 | 11 | */  | 
                                                        
| 12 | 12 | class Main  | 
                                                        
| 13 | 13 |  { | 
                                                        
| 14 | - /**  | 
                                                        |
| 15 | - * Действие после отправки письма  | 
                                                        |
| 16 | - *  | 
                                                        |
| 17 | - * @param $arFields  | 
                                                        |
| 18 | - * @param $arTemplate  | 
                                                        |
| 19 | - */  | 
                                                        |
| 20 | - public static function getEventSend(&$arFields, &$arTemplate)  | 
                                                        |
| 21 | -    { | 
                                                        |
| 22 | -        if ($arFields && $arTemplate && Config::statusModule() == 1) { | 
                                                        |
| 23 | -            if (\in_array($arTemplate['EVENT_NAME'], Config::getMail(), true)) { | 
                                                        |
| 24 | -                try { | 
                                                        |
| 25 | - $message = self::delTags($arTemplate['MESSAGE']);  | 
                                                        |
| 26 | -                    foreach ($arFields + self::getSiteParam() as $key => $field) { | 
                                                        |
| 27 | -                        $message = preg_replace('/#' . $key . '#/', $field, $message); | 
                                                        |
| 28 | - }  | 
                                                        |
| 29 | - (new Sending)->processMessage($message);  | 
                                                        |
| 30 | -                } catch (\Exception $e) { | 
                                                        |
| 31 | - Debug::writeToFile($e->getMessage(), 'getEventSend', 'telegram-log');  | 
                                                        |
| 32 | - }  | 
                                                        |
| 33 | - }  | 
                                                        |
| 34 | - }  | 
                                                        |
| 35 | - }  | 
                                                        |
| 14 | + /**  | 
                                                        |
| 15 | + * Действие после отправки письма  | 
                                                        |
| 16 | + *  | 
                                                        |
| 17 | + * @param $arFields  | 
                                                        |
| 18 | + * @param $arTemplate  | 
                                                        |
| 19 | + */  | 
                                                        |
| 20 | + public static function getEventSend(&$arFields, &$arTemplate)  | 
                                                        |
| 21 | +	{ | 
                                                        |
| 22 | +		if ($arFields && $arTemplate && Config::statusModule() == 1) { | 
                                                        |
| 23 | +			if (\in_array($arTemplate['EVENT_NAME'], Config::getMail(), true)) { | 
                                                        |
| 24 | +				try { | 
                                                        |
| 25 | + $message = self::delTags($arTemplate['MESSAGE']);  | 
                                                        |
| 26 | +					foreach ($arFields + self::getSiteParam() as $key => $field) { | 
                                                        |
| 27 | +						$message = preg_replace('/#' . $key . '#/', $field, $message); | 
                                                        |
| 28 | + }  | 
                                                        |
| 29 | + (new Sending)->processMessage($message);  | 
                                                        |
| 30 | +				} catch (\Exception $e) { | 
                                                        |
| 31 | + Debug::writeToFile($e->getMessage(), 'getEventSend', 'telegram-log');  | 
                                                        |
| 32 | + }  | 
                                                        |
| 33 | + }  | 
                                                        |
| 34 | + }  | 
                                                        |
| 35 | + }  | 
                                                        |
| 36 | 36 | |
| 37 | - /**  | 
                                                        |
| 38 | - * Удаление html тегов из письма  | 
                                                        |
| 39 | - *  | 
                                                        |
| 40 | - * @param $text  | 
                                                        |
| 41 | - *  | 
                                                        |
| 42 | - * @return mixed  | 
                                                        |
| 43 | - */  | 
                                                        |
| 44 | - public static function delTags($text)  | 
                                                        |
| 45 | -    { | 
                                                        |
| 46 | -        return str_replace(' ', ' ', preg_replace('/\s{2,}/', "\n", strip_tags($text))); | 
                                                        |
| 47 | - }  | 
                                                        |
| 37 | + /**  | 
                                                        |
| 38 | + * Удаление html тегов из письма  | 
                                                        |
| 39 | + *  | 
                                                        |
| 40 | + * @param $text  | 
                                                        |
| 41 | + *  | 
                                                        |
| 42 | + * @return mixed  | 
                                                        |
| 43 | + */  | 
                                                        |
| 44 | + public static function delTags($text)  | 
                                                        |
| 45 | +	{ | 
                                                        |
| 46 | +		return str_replace(' ', ' ', preg_replace('/\s{2,}/', "\n", strip_tags($text))); | 
                                                        |
| 47 | + }  | 
                                                        |
| 48 | 48 | |
| 49 | - /**  | 
                                                        |
| 50 | - * Получение стандартных полей письма  | 
                                                        |
| 51 | - * @return array  | 
                                                        |
| 52 | - */  | 
                                                        |
| 53 | - public static function getSiteParam():array  | 
                                                        |
| 54 | -    { | 
                                                        |
| 55 | - $defaultParam = [];  | 
                                                        |
| 56 | - $getParam = SiteTable::getList([  | 
                                                        |
| 57 | - 'select' => ['EMAIL', 'NAME', 'SERVER_NAME'],  | 
                                                        |
| 58 | - 'filter' => ['ACTIVE' => 'Y']  | 
                                                        |
| 59 | - ]);  | 
                                                        |
| 60 | - $siteParam = $getParam->fetch();  | 
                                                        |
| 61 | -        if ($siteParam) { | 
                                                        |
| 62 | - $defaultParam = [  | 
                                                        |
| 63 | - 'DEFAULT_EMAIL_FROM' => $siteParam['EMAIL'],  | 
                                                        |
| 64 | - 'SITE_NAME' => $siteParam['NAME'],  | 
                                                        |
| 65 | - 'SERVER_NAME' => $siteParam['SERVER_NAME']  | 
                                                        |
| 66 | - ];  | 
                                                        |
| 67 | - }  | 
                                                        |
| 49 | + /**  | 
                                                        |
| 50 | + * Получение стандартных полей письма  | 
                                                        |
| 51 | + * @return array  | 
                                                        |
| 52 | + */  | 
                                                        |
| 53 | + public static function getSiteParam():array  | 
                                                        |
| 54 | +	{ | 
                                                        |
| 55 | + $defaultParam = [];  | 
                                                        |
| 56 | + $getParam = SiteTable::getList([  | 
                                                        |
| 57 | + 'select' => ['EMAIL', 'NAME', 'SERVER_NAME'],  | 
                                                        |
| 58 | + 'filter' => ['ACTIVE' => 'Y']  | 
                                                        |
| 59 | + ]);  | 
                                                        |
| 60 | + $siteParam = $getParam->fetch();  | 
                                                        |
| 61 | +		if ($siteParam) { | 
                                                        |
| 62 | + $defaultParam = [  | 
                                                        |
| 63 | + 'DEFAULT_EMAIL_FROM' => $siteParam['EMAIL'],  | 
                                                        |
| 64 | + 'SITE_NAME' => $siteParam['NAME'],  | 
                                                        |
| 65 | + 'SERVER_NAME' => $siteParam['SERVER_NAME']  | 
                                                        |
| 66 | + ];  | 
                                                        |
| 67 | + }  | 
                                                        |
| 68 | 68 | |
| 69 | - return $defaultParam;  | 
                                                        |
| 70 | - }  | 
                                                        |
| 69 | + return $defaultParam;  | 
                                                        |
| 70 | + }  | 
                                                        |
| 71 | 71 | } //  | 
                                                        
@@ -10,116 +10,116 @@  | 
                                                    ||
| 10 | 10 | */  | 
                                                        
| 11 | 11 | class Sending  | 
                                                        
| 12 | 12 |  { | 
                                                        
| 13 | - private $apiKey;  | 
                                                        |
| 14 | - private $chatId;  | 
                                                        |
| 15 | - private $arUpdates;  | 
                                                        |
| 16 | - private $apiBaseUri = 'https://api.telegram.org/bot';  | 
                                                        |
| 13 | + private $apiKey;  | 
                                                        |
| 14 | + private $chatId;  | 
                                                        |
| 15 | + private $arUpdates;  | 
                                                        |
| 16 | + private $apiBaseUri = 'https://api.telegram.org/bot';  | 
                                                        |
| 17 | 17 | |
| 18 | - /**  | 
                                                        |
| 19 | - * Sending constructor.  | 
                                                        |
| 20 | - */  | 
                                                        |
| 21 | - public function __construct()  | 
                                                        |
| 22 | -    { | 
                                                        |
| 23 | - $this->apiKey = Config::getToken();  | 
                                                        |
| 24 | - $this->chatId = Config::getUser();  | 
                                                        |
| 25 | - }  | 
                                                        |
| 18 | + /**  | 
                                                        |
| 19 | + * Sending constructor.  | 
                                                        |
| 20 | + */  | 
                                                        |
| 21 | + public function __construct()  | 
                                                        |
| 22 | +	{ | 
                                                        |
| 23 | + $this->apiKey = Config::getToken();  | 
                                                        |
| 24 | + $this->chatId = Config::getUser();  | 
                                                        |
| 25 | + }  | 
                                                        |
| 26 | 26 | |
| 27 | - /**  | 
                                                        |
| 28 | - * Отправка сообщения  | 
                                                        |
| 29 | - *  | 
                                                        |
| 30 | - * @param $message  | 
                                                        |
| 31 | - */  | 
                                                        |
| 32 | - public function processMessage($message)  | 
                                                        |
| 33 | -    { | 
                                                        |
| 34 | -        foreach ($this->chatId as $key => $value) { | 
                                                        |
| 35 | -            $this->apiRequest('sendMessage', ['chat_id' => $key, 'text' => $message]); | 
                                                        |
| 36 | - }  | 
                                                        |
| 37 | - }  | 
                                                        |
| 27 | + /**  | 
                                                        |
| 28 | + * Отправка сообщения  | 
                                                        |
| 29 | + *  | 
                                                        |
| 30 | + * @param $message  | 
                                                        |
| 31 | + */  | 
                                                        |
| 32 | + public function processMessage($message)  | 
                                                        |
| 33 | +	{ | 
                                                        |
| 34 | +		foreach ($this->chatId as $key => $value) { | 
                                                        |
| 35 | +			$this->apiRequest('sendMessage', ['chat_id' => $key, 'text' => $message]); | 
                                                        |
| 36 | + }  | 
                                                        |
| 37 | + }  | 
                                                        |
| 38 | 38 | |
| 39 | - /**  | 
                                                        |
| 40 | - * Подготовка curl запроса  | 
                                                        |
| 41 | - *  | 
                                                        |
| 42 | - * @param $method  | 
                                                        |
| 43 | - * @param bool $parameters  | 
                                                        |
| 44 | - *  | 
                                                        |
| 45 | - * @return mixed  | 
                                                        |
| 46 | - */  | 
                                                        |
| 47 | - public function apiRequest($method, $parameters = false)  | 
                                                        |
| 48 | -    { | 
                                                        |
| 49 | - $handle = curl_init();  | 
                                                        |
| 50 | - $options = [  | 
                                                        |
| 51 | - CURLOPT_URL => $this->apiBaseUri . $this->apiKey . '/' . $method . '?' . http_build_query($parameters),  | 
                                                        |
| 52 | - CURLOPT_RETURNTRANSFER => true,  | 
                                                        |
| 53 | - CURLOPT_FOLLOWLOCATION => 1,  | 
                                                        |
| 54 | - CURLOPT_CONNECTTIMEOUT => 5,  | 
                                                        |
| 55 | - CURLOPT_TIMEOUT => 30,  | 
                                                        |
| 56 | - CURLOPT_POST => true,  | 
                                                        |
| 57 | - CURLOPT_FRESH_CONNECT => true,  | 
                                                        |
| 58 | - CURLOPT_UNRESTRICTED_AUTH => true,  | 
                                                        |
| 59 | - ];  | 
                                                        |
| 39 | + /**  | 
                                                        |
| 40 | + * Подготовка curl запроса  | 
                                                        |
| 41 | + *  | 
                                                        |
| 42 | + * @param $method  | 
                                                        |
| 43 | + * @param bool $parameters  | 
                                                        |
| 44 | + *  | 
                                                        |
| 45 | + * @return mixed  | 
                                                        |
| 46 | + */  | 
                                                        |
| 47 | + public function apiRequest($method, $parameters = false)  | 
                                                        |
| 48 | +	{ | 
                                                        |
| 49 | + $handle = curl_init();  | 
                                                        |
| 50 | + $options = [  | 
                                                        |
| 51 | + CURLOPT_URL => $this->apiBaseUri . $this->apiKey . '/' . $method . '?' . http_build_query($parameters),  | 
                                                        |
| 52 | + CURLOPT_RETURNTRANSFER => true,  | 
                                                        |
| 53 | + CURLOPT_FOLLOWLOCATION => 1,  | 
                                                        |
| 54 | + CURLOPT_CONNECTTIMEOUT => 5,  | 
                                                        |
| 55 | + CURLOPT_TIMEOUT => 30,  | 
                                                        |
| 56 | + CURLOPT_POST => true,  | 
                                                        |
| 57 | + CURLOPT_FRESH_CONNECT => true,  | 
                                                        |
| 58 | + CURLOPT_UNRESTRICTED_AUTH => true,  | 
                                                        |
| 59 | + ];  | 
                                                        |
| 60 | 60 | |
| 61 | -        if (Config::statusProxy()) { | 
                                                        |
| 62 | - $proxy = Config::proxyData();  | 
                                                        |
| 61 | +		if (Config::statusProxy()) { | 
                                                        |
| 62 | + $proxy = Config::proxyData();  | 
                                                        |
| 63 | 63 | |
| 64 | - //TODO: why not work?  | 
                                                        |
| 65 | -            //if (filter_var($proxy['url'], FILTER_VALIDATE_IP)) { | 
                                                        |
| 66 | - // $options[CURLOPT_PROXYTYPE] = CURLPROXY_SOCKS5;  | 
                                                        |
| 67 | -            //} else { | 
                                                        |
| 68 | - // $options[CURLOPT_PROXYTYPE] = CURLPROXY_SOCKS5_HOSTNAME;  | 
                                                        |
| 69 | - //}  | 
                                                        |
| 64 | + //TODO: why not work?  | 
                                                        |
| 65 | +			//if (filter_var($proxy['url'], FILTER_VALIDATE_IP)) { | 
                                                        |
| 66 | + // $options[CURLOPT_PROXYTYPE] = CURLPROXY_SOCKS5;  | 
                                                        |
| 67 | +			//} else { | 
                                                        |
| 68 | + // $options[CURLOPT_PROXYTYPE] = CURLPROXY_SOCKS5_HOSTNAME;  | 
                                                        |
| 69 | + //}  | 
                                                        |
| 70 | 70 | |
| 71 | - $options += [  | 
                                                        |
| 72 | - CURLOPT_PROXYTYPE => CURLPROXY_SOCKS5_HOSTNAME,  | 
                                                        |
| 73 | - CURLOPT_PROXY => $proxy['url'],  | 
                                                        |
| 74 | - CURLOPT_PROXYPORT => $proxy['port'],  | 
                                                        |
| 75 | - CURLOPT_PROXYUSERNAME => $proxy['user'],  | 
                                                        |
| 76 | - CURLOPT_PROXYPASSWORD => $proxy['pass'],  | 
                                                        |
| 77 | - ];  | 
                                                        |
| 78 | - }  | 
                                                        |
| 71 | + $options += [  | 
                                                        |
| 72 | + CURLOPT_PROXYTYPE => CURLPROXY_SOCKS5_HOSTNAME,  | 
                                                        |
| 73 | + CURLOPT_PROXY => $proxy['url'],  | 
                                                        |
| 74 | + CURLOPT_PROXYPORT => $proxy['port'],  | 
                                                        |
| 75 | + CURLOPT_PROXYUSERNAME => $proxy['user'],  | 
                                                        |
| 76 | + CURLOPT_PROXYPASSWORD => $proxy['pass'],  | 
                                                        |
| 77 | + ];  | 
                                                        |
| 78 | + }  | 
                                                        |
| 79 | 79 | |
| 80 | - curl_setopt_array($handle, $options);  | 
                                                        |
| 80 | + curl_setopt_array($handle, $options);  | 
                                                        |
| 81 | 81 | |
| 82 | - return $this->execCurlRequest($handle);  | 
                                                        |
| 83 | - }  | 
                                                        |
| 82 | + return $this->execCurlRequest($handle);  | 
                                                        |
| 83 | + }  | 
                                                        |
| 84 | 84 | |
| 85 | - /**  | 
                                                        |
| 86 | - * Отправка curl запроса  | 
                                                        |
| 87 | - *  | 
                                                        |
| 88 | - * @param $handle  | 
                                                        |
| 89 | - *  | 
                                                        |
| 90 | - * @return mixed  | 
                                                        |
| 91 | - */  | 
                                                        |
| 92 | - public function execCurlRequest($handle)  | 
                                                        |
| 93 | -    { | 
                                                        |
| 94 | - $response = curl_exec($handle);  | 
                                                        |
| 95 | -        if ((int)curl_getinfo($handle, CURLINFO_HTTP_CODE) === 200) { | 
                                                        |
| 96 | - $response = json_decode($response, true)['result'];  | 
                                                        |
| 97 | -        } else { | 
                                                        |
| 98 | - Debug::writeToFile(curl_getinfo($handle), 'execCurlRequest', 'telegram-log');  | 
                                                        |
| 99 | - curl_close($handle);  | 
                                                        |
| 100 | - }  | 
                                                        |
| 85 | + /**  | 
                                                        |
| 86 | + * Отправка curl запроса  | 
                                                        |
| 87 | + *  | 
                                                        |
| 88 | + * @param $handle  | 
                                                        |
| 89 | + *  | 
                                                        |
| 90 | + * @return mixed  | 
                                                        |
| 91 | + */  | 
                                                        |
| 92 | + public function execCurlRequest($handle)  | 
                                                        |
| 93 | +	{ | 
                                                        |
| 94 | + $response = curl_exec($handle);  | 
                                                        |
| 95 | +		if ((int)curl_getinfo($handle, CURLINFO_HTTP_CODE) === 200) { | 
                                                        |
| 96 | + $response = json_decode($response, true)['result'];  | 
                                                        |
| 97 | +		} else { | 
                                                        |
| 98 | + Debug::writeToFile(curl_getinfo($handle), 'execCurlRequest', 'telegram-log');  | 
                                                        |
| 99 | + curl_close($handle);  | 
                                                        |
| 100 | + }  | 
                                                        |
| 101 | 101 | |
| 102 | - return $response;  | 
                                                        |
| 103 | - }  | 
                                                        |
| 102 | + return $response;  | 
                                                        |
| 103 | + }  | 
                                                        |
| 104 | 104 | |
| 105 | - /**  | 
                                                        |
| 106 | - * Обновление входящих запросов  | 
                                                        |
| 107 | - *  | 
                                                        |
| 108 | - * @param int $offset  | 
                                                        |
| 109 | - * @param int $limit  | 
                                                        |
| 110 | - *  | 
                                                        |
| 111 | - * @return mixed  | 
                                                        |
| 112 | - */  | 
                                                        |
| 113 | - public function updatesUser($offset = 0, $limit = 100)  | 
                                                        |
| 114 | -    { | 
                                                        |
| 115 | - $paramRequest = ['offset' => $offset, 'limit' => $limit];  | 
                                                        |
| 116 | -        $this->arUpdates = $this->apiRequest('getUpdates', $paramRequest); | 
                                                        |
| 117 | -        if (\count($this->arUpdates) >= 1) { | 
                                                        |
| 118 | - $lastElementId = $this->arUpdates[\count($this->arUpdates) - 1]['update_id'] + 1;  | 
                                                        |
| 119 | - $paramRequest = ['offset' => $lastElementId, 'limit' => '1'];  | 
                                                        |
| 120 | -            $this->apiRequest('getUpdates', $paramRequest); | 
                                                        |
| 121 | - }  | 
                                                        |
| 105 | + /**  | 
                                                        |
| 106 | + * Обновление входящих запросов  | 
                                                        |
| 107 | + *  | 
                                                        |
| 108 | + * @param int $offset  | 
                                                        |
| 109 | + * @param int $limit  | 
                                                        |
| 110 | + *  | 
                                                        |
| 111 | + * @return mixed  | 
                                                        |
| 112 | + */  | 
                                                        |
| 113 | + public function updatesUser($offset = 0, $limit = 100)  | 
                                                        |
| 114 | +	{ | 
                                                        |
| 115 | + $paramRequest = ['offset' => $offset, 'limit' => $limit];  | 
                                                        |
| 116 | +		$this->arUpdates = $this->apiRequest('getUpdates', $paramRequest); | 
                                                        |
| 117 | +		if (\count($this->arUpdates) >= 1) { | 
                                                        |
| 118 | + $lastElementId = $this->arUpdates[\count($this->arUpdates) - 1]['update_id'] + 1;  | 
                                                        |
| 119 | + $paramRequest = ['offset' => $lastElementId, 'limit' => '1'];  | 
                                                        |
| 120 | +			$this->apiRequest('getUpdates', $paramRequest); | 
                                                        |
| 121 | + }  | 
                                                        |
| 122 | 122 | |
| 123 | - return $this->arUpdates;  | 
                                                        |
| 124 | - }  | 
                                                        |
| 123 | + return $this->arUpdates;  | 
                                                        |
| 124 | + }  | 
                                                        |
| 125 | 125 | } //  | 
                                                        
@@ -92,7 +92,7 @@  | 
                                                    ||
| 92 | 92 | public function execCurlRequest($handle)  | 
                                                        
| 93 | 93 |      { | 
                                                        
| 94 | 94 | $response = curl_exec($handle);  | 
                                                        
| 95 | -        if ((int)curl_getinfo($handle, CURLINFO_HTTP_CODE) === 200) { | 
                                                        |
| 95 | +        if ((int) curl_getinfo($handle, CURLINFO_HTTP_CODE) === 200) { | 
                                                        |
| 96 | 96 | $response = json_decode($response, true)['result'];  | 
                                                        
| 97 | 97 |          } else { | 
                                                        
| 98 | 98 | Debug::writeToFile(curl_getinfo($handle), 'execCurlRequest', 'telegram-log');  | 
                                                        
@@ -12,214 +12,214 @@  | 
                                                    ||
| 12 | 12 | */  | 
                                                        
| 13 | 13 | class Config  | 
                                                        
| 14 | 14 |  { | 
                                                        
| 15 | - public static $module_id = 'telegram.send';  | 
                                                        |
| 16 | - public static $request;  | 
                                                        |
| 17 | - public static $response = [  | 
                                                        |
| 18 | - 'updates' => false,  | 
                                                        |
| 19 | - 'message' => false  | 
                                                        |
| 20 | - ];  | 
                                                        |
| 21 | -  | 
                                                        |
| 22 | - /**  | 
                                                        |
| 23 | - * Request  | 
                                                        |
| 24 | - */  | 
                                                        |
| 25 | - public static function processRequest()  | 
                                                        |
| 26 | -    { | 
                                                        |
| 27 | - self::$request = Context::getCurrent()->getRequest();  | 
                                                        |
| 28 | -        $funcName = self::$request->getPost('funcName'); | 
                                                        |
| 29 | -        if ($funcName) { | 
                                                        |
| 30 | - self::$funcName();  | 
                                                        |
| 31 | - }  | 
                                                        |
| 32 | - }  | 
                                                        |
| 33 | -  | 
                                                        |
| 34 | - /**  | 
                                                        |
| 35 | - * Получение всех почтовых шаблонов  | 
                                                        |
| 36 | - * @return array  | 
                                                        |
| 37 | - */  | 
                                                        |
| 38 | - public static function getMailTemplates():array  | 
                                                        |
| 39 | -    { | 
                                                        |
| 40 | - $getRow = EventTypeTable::getList([  | 
                                                        |
| 41 | - 'select' => ['ID', 'EVENT_NAME', 'NAME'],  | 
                                                        |
| 42 | - 'filter' => ['=LID' => LANGUAGE_ID],  | 
                                                        |
| 43 | - 'order' => ['EVENT_NAME' => 'ASC']  | 
                                                        |
| 44 | - ]);  | 
                                                        |
| 45 | -  | 
                                                        |
| 46 | - return $getRow->fetchAll();  | 
                                                        |
| 47 | - }  | 
                                                        |
| 48 | -  | 
                                                        |
| 49 | - /**  | 
                                                        |
| 50 | - * Получение входящих запросов  | 
                                                        |
| 51 | - */  | 
                                                        |
| 52 | - public static function getUpdates()  | 
                                                        |
| 53 | -    { | 
                                                        |
| 54 | - $arReturn = [];  | 
                                                        |
| 55 | - $arUpdates = (new Sending)->updatesUser()[0];  | 
                                                        |
| 56 | -        if ($arUpdates['message']['text'] === '/start' && $arUpdates['message']['chat']['id']) { | 
                                                        |
| 57 | - $arUsers = self::getUser();  | 
                                                        |
| 58 | -            if (!array_key_exists($arUpdates['message']['chat']['id'], $arUsers)) { | 
                                                        |
| 59 | - $arReturn = $arUpdates['message']['chat'];  | 
                                                        |
| 60 | - }  | 
                                                        |
| 61 | - }  | 
                                                        |
| 62 | -        if (!$arReturn) { | 
                                                        |
| 63 | -            self::$response['message'] = self::setNote('Входящих запросов нет', 'ERROR'); | 
                                                        |
| 64 | - }  | 
                                                        |
| 65 | - self::$response['updates'] = $arReturn;  | 
                                                        |
| 66 | - self::sendResponse();  | 
                                                        |
| 67 | - }  | 
                                                        |
| 68 | -  | 
                                                        |
| 69 | - /**  | 
                                                        |
| 70 | - * Добавленные пользователи  | 
                                                        |
| 71 | - * @return mixed  | 
                                                        |
| 72 | - */  | 
                                                        |
| 73 | - public static function getUser()  | 
                                                        |
| 74 | -    { | 
                                                        |
| 75 | - return unserialize(Option::get(self::$module_id, 'user'));  | 
                                                        |
| 76 | - }  | 
                                                        |
| 77 | -  | 
                                                        |
| 78 | - /**  | 
                                                        |
| 79 | - * Генерация уведомления  | 
                                                        |
| 80 | - *  | 
                                                        |
| 81 | - * @param $message  | 
                                                        |
| 82 | - * @param $type "ERROR"|"OK"|"PROGRESS"  | 
                                                        |
| 83 | - *  | 
                                                        |
| 84 | - * @return string  | 
                                                        |
| 85 | - */  | 
                                                        |
| 86 | - public static function setNote($message, $type):string  | 
                                                        |
| 87 | -    { | 
                                                        |
| 88 | - return (new \CAdminMessage(['MESSAGE' => $message, 'TYPE' => $type]))->Show();  | 
                                                        |
| 89 | - }  | 
                                                        |
| 90 | -  | 
                                                        |
| 91 | - /**  | 
                                                        |
| 92 | - * Отправка json ответа  | 
                                                        |
| 93 | - */  | 
                                                        |
| 94 | - public static function sendResponse()  | 
                                                        |
| 95 | -    { | 
                                                        |
| 96 | -        header('Content-Type: application/json'); | 
                                                        |
| 97 | - die(json_encode(self::$response));  | 
                                                        |
| 98 | - }  | 
                                                        |
| 99 | -  | 
                                                        |
| 100 | - /**  | 
                                                        |
| 101 | - * Добавление пользователя  | 
                                                        |
| 102 | - */  | 
                                                        |
| 103 | - public static function setUser()  | 
                                                        |
| 104 | -    { | 
                                                        |
| 105 | -        $fields = self::$request->getPost('fields'); | 
                                                        |
| 106 | -        if ($fields) { | 
                                                        |
| 107 | - $savedUser = self::getUser();  | 
                                                        |
| 108 | -            if (!array_key_exists($fields['id'], $savedUser)) { | 
                                                        |
| 109 | - $newUser = [  | 
                                                        |
| 110 | - $fields['id'] => [  | 
                                                        |
| 111 | - 'nickname' => $fields['nickname'],  | 
                                                        |
| 112 | - 'username' => $fields['username']  | 
                                                        |
| 113 | - ]  | 
                                                        |
| 114 | - ];  | 
                                                        |
| 115 | -                if ($savedUser) { | 
                                                        |
| 116 | - $newUser += $savedUser;  | 
                                                        |
| 117 | - }  | 
                                                        |
| 118 | -                self::setOption('user', $newUser); | 
                                                        |
| 119 | -                self::$response['message'] = self::setNote('Пользователь добавлен', 'OK'); | 
                                                        |
| 120 | -            } else { | 
                                                        |
| 121 | -                self::$response['message'] = self::setNote('Пользователь уже существует', 'ERROR'); | 
                                                        |
| 122 | - }  | 
                                                        |
| 123 | - }  | 
                                                        |
| 124 | - self::sendResponse();  | 
                                                        |
| 125 | - }  | 
                                                        |
| 126 | -  | 
                                                        |
| 127 | - /**  | 
                                                        |
| 128 | - * Запись данных в базу  | 
                                                        |
| 129 | - *  | 
                                                        |
| 130 | - * @param $name  | 
                                                        |
| 131 | - * @param $option  | 
                                                        |
| 132 | - * @param bool $serialize  | 
                                                        |
| 133 | - */  | 
                                                        |
| 134 | - public static function setOption($name, $option, $serialize = true)  | 
                                                        |
| 135 | -    { | 
                                                        |
| 136 | - Option::set(self::$module_id, $name, $serialize ? serialize($option) : $option);  | 
                                                        |
| 137 | - }  | 
                                                        |
| 138 | -  | 
                                                        |
| 139 | - /**  | 
                                                        |
| 140 | - * Удаление пользователя  | 
                                                        |
| 141 | - */  | 
                                                        |
| 142 | - public static function deleteUser()  | 
                                                        |
| 143 | -    { | 
                                                        |
| 144 | -        $fields = self::$request->getPost('fields'); | 
                                                        |
| 145 | -        if ($fields) { | 
                                                        |
| 146 | - $savedUser = self::getUser();  | 
                                                        |
| 147 | -            if (array_key_exists($fields['id'], $savedUser)) { | 
                                                        |
| 148 | - unset($savedUser[$fields['id']]);  | 
                                                        |
| 149 | -                self::setOption('user', $savedUser); | 
                                                        |
| 150 | -                self::$response['message'] = self::setNote('Пользователь удален', 'OK'); | 
                                                        |
| 151 | -            } else { | 
                                                        |
| 152 | -                self::$response['message'] = self::setNote('Этот пользователь уже удален', 'ERROR'); | 
                                                        |
| 153 | - }  | 
                                                        |
| 154 | - }  | 
                                                        |
| 155 | - self::sendResponse();  | 
                                                        |
| 156 | - }  | 
                                                        |
| 157 | -  | 
                                                        |
| 158 | - /**  | 
                                                        |
| 159 | - * Сохранение настроек  | 
                                                        |
| 160 | - */  | 
                                                        |
| 161 | - public static function saveConfig()  | 
                                                        |
| 162 | -    { | 
                                                        |
| 163 | -        $fields = self::$request->getPost('fields'); | 
                                                        |
| 164 | -        if ($fields) { | 
                                                        |
| 165 | -            foreach ($fields as $field => $value) { | 
                                                        |
| 166 | -                if (\is_array($value)) { | 
                                                        |
| 167 | - self::setOption($field, $value);  | 
                                                        |
| 168 | -                } else { | 
                                                        |
| 169 | - self::setOption($field, $value, false);  | 
                                                        |
| 170 | - }  | 
                                                        |
| 171 | - }  | 
                                                        |
| 172 | - }  | 
                                                        |
| 173 | -        if ($fields['module_on'] === '1') { | 
                                                        |
| 174 | -            self::$response['message'] = self::setNote('Настройки сохранены', 'OK'); | 
                                                        |
| 175 | -        } else { | 
                                                        |
| 176 | -            self::$response['message'] = self::setNote('Модуль отключен', 'ERROR'); | 
                                                        |
| 177 | - }  | 
                                                        |
| 178 | - self::sendResponse();  | 
                                                        |
| 179 | - }  | 
                                                        |
| 180 | -  | 
                                                        |
| 181 | - /**  | 
                                                        |
| 182 | - * Активность модуля  | 
                                                        |
| 183 | - * @return string  | 
                                                        |
| 184 | - */  | 
                                                        |
| 185 | - public static function statusModule():string  | 
                                                        |
| 186 | -    { | 
                                                        |
| 187 | - return Option::get(self::$module_id, 'module_on');  | 
                                                        |
| 188 | - }  | 
                                                        |
| 189 | -  | 
                                                        |
| 190 | - /**  | 
                                                        |
| 191 | - * Токен бота  | 
                                                        |
| 192 | - * @return string  | 
                                                        |
| 193 | - */  | 
                                                        |
| 194 | - public static function getToken():string  | 
                                                        |
| 195 | -    { | 
                                                        |
| 196 | - return Option::get(self::$module_id, 'token');  | 
                                                        |
| 197 | - }  | 
                                                        |
| 198 | -  | 
                                                        |
| 199 | - /**  | 
                                                        |
| 200 | - * Почтовые шаблоны  | 
                                                        |
| 201 | - * @return mixed  | 
                                                        |
| 202 | - */  | 
                                                        |
| 203 | - public static function getMail()  | 
                                                        |
| 204 | -    { | 
                                                        |
| 205 | - return unserialize(Option::get(self::$module_id, 'mail'));  | 
                                                        |
| 206 | - }  | 
                                                        |
| 207 | -  | 
                                                        |
| 208 | - /**  | 
                                                        |
| 209 | - * Активность прокси  | 
                                                        |
| 210 | - * @return mixed  | 
                                                        |
| 211 | - */  | 
                                                        |
| 212 | - public static function statusProxy()  | 
                                                        |
| 213 | -    { | 
                                                        |
| 214 | - return Option::get(self::$module_id, 'proxy_on');  | 
                                                        |
| 215 | - }  | 
                                                        |
| 216 | -  | 
                                                        |
| 217 | - /**  | 
                                                        |
| 218 | - * Данные прокси  | 
                                                        |
| 219 | - * @return mixed  | 
                                                        |
| 220 | - */  | 
                                                        |
| 221 | - public static function proxyData()  | 
                                                        |
| 222 | -    { | 
                                                        |
| 223 | - return unserialize(Option::get(self::$module_id, 'proxy'));  | 
                                                        |
| 224 | - }  | 
                                                        |
| 15 | + public static $module_id = 'telegram.send';  | 
                                                        |
| 16 | + public static $request;  | 
                                                        |
| 17 | + public static $response = [  | 
                                                        |
| 18 | + 'updates' => false,  | 
                                                        |
| 19 | + 'message' => false  | 
                                                        |
| 20 | + ];  | 
                                                        |
| 21 | +  | 
                                                        |
| 22 | + /**  | 
                                                        |
| 23 | + * Request  | 
                                                        |
| 24 | + */  | 
                                                        |
| 25 | + public static function processRequest()  | 
                                                        |
| 26 | +	{ | 
                                                        |
| 27 | + self::$request = Context::getCurrent()->getRequest();  | 
                                                        |
| 28 | +		$funcName = self::$request->getPost('funcName'); | 
                                                        |
| 29 | +		if ($funcName) { | 
                                                        |
| 30 | + self::$funcName();  | 
                                                        |
| 31 | + }  | 
                                                        |
| 32 | + }  | 
                                                        |
| 33 | +  | 
                                                        |
| 34 | + /**  | 
                                                        |
| 35 | + * Получение всех почтовых шаблонов  | 
                                                        |
| 36 | + * @return array  | 
                                                        |
| 37 | + */  | 
                                                        |
| 38 | + public static function getMailTemplates():array  | 
                                                        |
| 39 | +	{ | 
                                                        |
| 40 | + $getRow = EventTypeTable::getList([  | 
                                                        |
| 41 | + 'select' => ['ID', 'EVENT_NAME', 'NAME'],  | 
                                                        |
| 42 | + 'filter' => ['=LID' => LANGUAGE_ID],  | 
                                                        |
| 43 | + 'order' => ['EVENT_NAME' => 'ASC']  | 
                                                        |
| 44 | + ]);  | 
                                                        |
| 45 | +  | 
                                                        |
| 46 | + return $getRow->fetchAll();  | 
                                                        |
| 47 | + }  | 
                                                        |
| 48 | +  | 
                                                        |
| 49 | + /**  | 
                                                        |
| 50 | + * Получение входящих запросов  | 
                                                        |
| 51 | + */  | 
                                                        |
| 52 | + public static function getUpdates()  | 
                                                        |
| 53 | +	{ | 
                                                        |
| 54 | + $arReturn = [];  | 
                                                        |
| 55 | + $arUpdates = (new Sending)->updatesUser()[0];  | 
                                                        |
| 56 | +		if ($arUpdates['message']['text'] === '/start' && $arUpdates['message']['chat']['id']) { | 
                                                        |
| 57 | + $arUsers = self::getUser();  | 
                                                        |
| 58 | +			if (!array_key_exists($arUpdates['message']['chat']['id'], $arUsers)) { | 
                                                        |
| 59 | + $arReturn = $arUpdates['message']['chat'];  | 
                                                        |
| 60 | + }  | 
                                                        |
| 61 | + }  | 
                                                        |
| 62 | +		if (!$arReturn) { | 
                                                        |
| 63 | +			self::$response['message'] = self::setNote('Входящих запросов нет', 'ERROR'); | 
                                                        |
| 64 | + }  | 
                                                        |
| 65 | + self::$response['updates'] = $arReturn;  | 
                                                        |
| 66 | + self::sendResponse();  | 
                                                        |
| 67 | + }  | 
                                                        |
| 68 | +  | 
                                                        |
| 69 | + /**  | 
                                                        |
| 70 | + * Добавленные пользователи  | 
                                                        |
| 71 | + * @return mixed  | 
                                                        |
| 72 | + */  | 
                                                        |
| 73 | + public static function getUser()  | 
                                                        |
| 74 | +	{ | 
                                                        |
| 75 | + return unserialize(Option::get(self::$module_id, 'user'));  | 
                                                        |
| 76 | + }  | 
                                                        |
| 77 | +  | 
                                                        |
| 78 | + /**  | 
                                                        |
| 79 | + * Генерация уведомления  | 
                                                        |
| 80 | + *  | 
                                                        |
| 81 | + * @param $message  | 
                                                        |
| 82 | + * @param $type "ERROR"|"OK"|"PROGRESS"  | 
                                                        |
| 83 | + *  | 
                                                        |
| 84 | + * @return string  | 
                                                        |
| 85 | + */  | 
                                                        |
| 86 | + public static function setNote($message, $type):string  | 
                                                        |
| 87 | +	{ | 
                                                        |
| 88 | + return (new \CAdminMessage(['MESSAGE' => $message, 'TYPE' => $type]))->Show();  | 
                                                        |
| 89 | + }  | 
                                                        |
| 90 | +  | 
                                                        |
| 91 | + /**  | 
                                                        |
| 92 | + * Отправка json ответа  | 
                                                        |
| 93 | + */  | 
                                                        |
| 94 | + public static function sendResponse()  | 
                                                        |
| 95 | +	{ | 
                                                        |
| 96 | +		header('Content-Type: application/json'); | 
                                                        |
| 97 | + die(json_encode(self::$response));  | 
                                                        |
| 98 | + }  | 
                                                        |
| 99 | +  | 
                                                        |
| 100 | + /**  | 
                                                        |
| 101 | + * Добавление пользователя  | 
                                                        |
| 102 | + */  | 
                                                        |
| 103 | + public static function setUser()  | 
                                                        |
| 104 | +	{ | 
                                                        |
| 105 | +		$fields = self::$request->getPost('fields'); | 
                                                        |
| 106 | +		if ($fields) { | 
                                                        |
| 107 | + $savedUser = self::getUser();  | 
                                                        |
| 108 | +			if (!array_key_exists($fields['id'], $savedUser)) { | 
                                                        |
| 109 | + $newUser = [  | 
                                                        |
| 110 | + $fields['id'] => [  | 
                                                        |
| 111 | + 'nickname' => $fields['nickname'],  | 
                                                        |
| 112 | + 'username' => $fields['username']  | 
                                                        |
| 113 | + ]  | 
                                                        |
| 114 | + ];  | 
                                                        |
| 115 | +				if ($savedUser) { | 
                                                        |
| 116 | + $newUser += $savedUser;  | 
                                                        |
| 117 | + }  | 
                                                        |
| 118 | +				self::setOption('user', $newUser); | 
                                                        |
| 119 | +				self::$response['message'] = self::setNote('Пользователь добавлен', 'OK'); | 
                                                        |
| 120 | +			} else { | 
                                                        |
| 121 | +				self::$response['message'] = self::setNote('Пользователь уже существует', 'ERROR'); | 
                                                        |
| 122 | + }  | 
                                                        |
| 123 | + }  | 
                                                        |
| 124 | + self::sendResponse();  | 
                                                        |
| 125 | + }  | 
                                                        |
| 126 | +  | 
                                                        |
| 127 | + /**  | 
                                                        |
| 128 | + * Запись данных в базу  | 
                                                        |
| 129 | + *  | 
                                                        |
| 130 | + * @param $name  | 
                                                        |
| 131 | + * @param $option  | 
                                                        |
| 132 | + * @param bool $serialize  | 
                                                        |
| 133 | + */  | 
                                                        |
| 134 | + public static function setOption($name, $option, $serialize = true)  | 
                                                        |
| 135 | +	{ | 
                                                        |
| 136 | + Option::set(self::$module_id, $name, $serialize ? serialize($option) : $option);  | 
                                                        |
| 137 | + }  | 
                                                        |
| 138 | +  | 
                                                        |
| 139 | + /**  | 
                                                        |
| 140 | + * Удаление пользователя  | 
                                                        |
| 141 | + */  | 
                                                        |
| 142 | + public static function deleteUser()  | 
                                                        |
| 143 | +	{ | 
                                                        |
| 144 | +		$fields = self::$request->getPost('fields'); | 
                                                        |
| 145 | +		if ($fields) { | 
                                                        |
| 146 | + $savedUser = self::getUser();  | 
                                                        |
| 147 | +			if (array_key_exists($fields['id'], $savedUser)) { | 
                                                        |
| 148 | + unset($savedUser[$fields['id']]);  | 
                                                        |
| 149 | +				self::setOption('user', $savedUser); | 
                                                        |
| 150 | +				self::$response['message'] = self::setNote('Пользователь удален', 'OK'); | 
                                                        |
| 151 | +			} else { | 
                                                        |
| 152 | +				self::$response['message'] = self::setNote('Этот пользователь уже удален', 'ERROR'); | 
                                                        |
| 153 | + }  | 
                                                        |
| 154 | + }  | 
                                                        |
| 155 | + self::sendResponse();  | 
                                                        |
| 156 | + }  | 
                                                        |
| 157 | +  | 
                                                        |
| 158 | + /**  | 
                                                        |
| 159 | + * Сохранение настроек  | 
                                                        |
| 160 | + */  | 
                                                        |
| 161 | + public static function saveConfig()  | 
                                                        |
| 162 | +	{ | 
                                                        |
| 163 | +		$fields = self::$request->getPost('fields'); | 
                                                        |
| 164 | +		if ($fields) { | 
                                                        |
| 165 | +			foreach ($fields as $field => $value) { | 
                                                        |
| 166 | +				if (\is_array($value)) { | 
                                                        |
| 167 | + self::setOption($field, $value);  | 
                                                        |
| 168 | +				} else { | 
                                                        |
| 169 | + self::setOption($field, $value, false);  | 
                                                        |
| 170 | + }  | 
                                                        |
| 171 | + }  | 
                                                        |
| 172 | + }  | 
                                                        |
| 173 | +		if ($fields['module_on'] === '1') { | 
                                                        |
| 174 | +			self::$response['message'] = self::setNote('Настройки сохранены', 'OK'); | 
                                                        |
| 175 | +		} else { | 
                                                        |
| 176 | +			self::$response['message'] = self::setNote('Модуль отключен', 'ERROR'); | 
                                                        |
| 177 | + }  | 
                                                        |
| 178 | + self::sendResponse();  | 
                                                        |
| 179 | + }  | 
                                                        |
| 180 | +  | 
                                                        |
| 181 | + /**  | 
                                                        |
| 182 | + * Активность модуля  | 
                                                        |
| 183 | + * @return string  | 
                                                        |
| 184 | + */  | 
                                                        |
| 185 | + public static function statusModule():string  | 
                                                        |
| 186 | +	{ | 
                                                        |
| 187 | + return Option::get(self::$module_id, 'module_on');  | 
                                                        |
| 188 | + }  | 
                                                        |
| 189 | +  | 
                                                        |
| 190 | + /**  | 
                                                        |
| 191 | + * Токен бота  | 
                                                        |
| 192 | + * @return string  | 
                                                        |
| 193 | + */  | 
                                                        |
| 194 | + public static function getToken():string  | 
                                                        |
| 195 | +	{ | 
                                                        |
| 196 | + return Option::get(self::$module_id, 'token');  | 
                                                        |
| 197 | + }  | 
                                                        |
| 198 | +  | 
                                                        |
| 199 | + /**  | 
                                                        |
| 200 | + * Почтовые шаблоны  | 
                                                        |
| 201 | + * @return mixed  | 
                                                        |
| 202 | + */  | 
                                                        |
| 203 | + public static function getMail()  | 
                                                        |
| 204 | +	{ | 
                                                        |
| 205 | + return unserialize(Option::get(self::$module_id, 'mail'));  | 
                                                        |
| 206 | + }  | 
                                                        |
| 207 | +  | 
                                                        |
| 208 | + /**  | 
                                                        |
| 209 | + * Активность прокси  | 
                                                        |
| 210 | + * @return mixed  | 
                                                        |
| 211 | + */  | 
                                                        |
| 212 | + public static function statusProxy()  | 
                                                        |
| 213 | +	{ | 
                                                        |
| 214 | + return Option::get(self::$module_id, 'proxy_on');  | 
                                                        |
| 215 | + }  | 
                                                        |
| 216 | +  | 
                                                        |
| 217 | + /**  | 
                                                        |
| 218 | + * Данные прокси  | 
                                                        |
| 219 | + * @return mixed  | 
                                                        |
| 220 | + */  | 
                                                        |
| 221 | + public static function proxyData()  | 
                                                        |
| 222 | +	{ | 
                                                        |
| 223 | + return unserialize(Option::get(self::$module_id, 'proxy'));  | 
                                                        |
| 224 | + }  | 
                                                        |
| 225 | 225 | } //  |