%PDF- %PDF-
Direktori : /home/vacivi36/intranet.vacivitta.com.br/protected/humhub/modules/marketplace/models/ |
Current File : /home/vacivi36/intranet.vacivitta.com.br/protected/humhub/modules/marketplace/models/Licence.php |
<?php /** * @link https://www.humhub.org/ * @copyright Copyright (c) 2020 HumHub GmbH & Co. KG * @license https://www.humhub.com/licences */ namespace humhub\modules\marketplace\models; use humhub\modules\marketplace\components\LicenceManager; use Yii; use yii\base\Model; class Licence extends Model { /** * Licence types */ const LICENCE_TYPE_CE = 'community'; const LICENCE_TYPE_PRO = 'pro'; /** * @var string the licence type */ public $type; /** * @var string the licence key */ public $licenceKey; /** * @var string name of the licensee */ public $licencedTo; /** * @var int the number of maximum users */ public $maxUsers; /** * @inheritdoc */ public function init() { $this->type = static::LICENCE_TYPE_CE; parent::init(); } /** * @inheritdoc */ public function rules() { return [ ['licenceKey', 'safe'], ['licenceKey', 'trim'], ]; } /** * @inheritdoc */ public function attributeLabels() { return [ 'licenceKey' => Yii::t('MarketplaceModule.base', 'Licence key'), ]; } /** * Registers the licence * * @return bool */ public function register() { $result = LicenceManager::request('v1/pro/register', ['licenceKey' => $this->licenceKey]); if (empty($result) || !is_array($result) || !isset($result['status'])) { $this->addError('licenceKey', Yii::t('MarketplaceModule.base', 'Could not connect to licence server!')); return false; } if ($result['status'] === 'ok') { return true; } LicenceManager::remove(); $this->addError('licenceKey', Yii::t('MarketplaceModule.base', 'Could not update licence. Error: ') . $result['message']); return false; } }