/
mikopbx
/
ModuleTelegramProvider
Обзор
Документация
Войти
/
mikopbx
/
ModuleTelegramProvider
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
master
Setup/PbxExtensionSetup.php
112 строк
3 KB
apor
Поправил ID продукта
28 янв 2022, 13:09
28 янв 2022, 13:09
c2f1bc0
Код
Авторство
О чём код?
<?php /** * Copyright © MIKO LLC - All Rights Reserved * Unauthorized copying of this file, via any medium is strictly prohibited * Proprietary and confidential * Written by Alexey Portnov, 5 2019 */ namespace Modules\ModuleTelegramProvider\Setup; use MikoPBX\Common\Models\PbxSettings; use MikoPBX\Modules\Setup\PbxExtensionSetupBase; use Modules\ModuleTelegramProvider\Models\ModuleTelegramProvider; /** * Class PbxExtensionSetup * Module installer and uninstaller * * @package Modules\ModuleTelegramProvider\Setup */ class PbxExtensionSetup extends PbxExtensionSetupBase { /** * PbxExtensionSetup constructor. * * @param string $moduleUniqueID - the unique module identifier */ public function __construct(string $moduleUniqueID) { parent::__construct($moduleUniqueID); } /** * Creates database structure according to models annotations * * If it necessary, it fills some default settings, and change sidebar menu item representation for this module * * After installation it registers module on PbxExtensionModules model * * * @return bool result of installation */ public function installDB(): bool { $result = $this->createSettingsTableByModelsAnnotations(); if ($result) { $result = $this->registerNewModule(); } if ($result) { $result = $this->addToSidebar(); $settings = ModuleTelegramProvider::findFirst(); if ($settings === null) { // Создадим пустую запись $settings = new ModuleTelegramProvider(); $settings->save(); } unset($settings); } return $result; } /** * Create folders on PBX system and apply rights * * @return bool result of installation */ public function installFiles(): bool { return parent::installFiles(); } /** * Unregister module on PbxExtensionModules, * Makes data backup if $keepSettings is true * * Before delete module we can do some soft delete changes, f.e. change forwarding rules i.e. * * @param $keepSettings bool creates backup folder with module settings * * @return bool uninstall result */ public function unInstallDB($keepSettings = false): bool { return parent::unInstallDB($keepSettings); } /** * Выполняет активацию триалов, проверку лицензионного клчюча * * @return bool результат активации лицензии */ public function activateLicense(): bool { $lic = PbxSettings::getValueByKey('PBXLicense'); if (empty($lic)) { $this->messages[] = 'License key not found...'; return false; } // Получение пробной лицензии. Продукт "Bitrix24Integration". $this->license->addtrial('96'); return true; } }