%PDF- %PDF-
Direktori : /home/vacivi36/intranet.vacivitta.com.br/protected/modules/jitsi-meet/models/ |
Current File : /home/vacivi36/intranet.vacivitta.com.br/protected/modules/jitsi-meet/models/SettingsForm.php |
<?php namespace humhubContrib\modules\jitsiMeet\models; use Yii; use yii\base\Model; class SettingsForm extends Model { public $jitsiDomain; public $menuTitle; public $roomPrefix; public $jitsiAppID; public $jitsiAppSecret; public $enableJwt; /** * @inheritdoc */ public function rules() { return [ ['jitsiDomain', 'string'], [['menuTitle', 'jitsiAppID', 'jitsiAppSecret', 'roomPrefix'], 'string'], ['enableJwt', 'boolean'], [['jitsiAppID', 'jitsiAppSecret'], 'required', 'when' => function($model) { return $model->enableJwt; }, 'whenClient' => "function (attribute, value) { return $('#settingsform-enablejwt').is(':checked'); }"] ]; } public function attributeHints() { return [ 'jitsiDomain' => Yii::t('JitsiMeetModule.base', 'Default is meet.jit.si without "https://" prefix.'), 'jitsiAppID' => Yii::t('JitsiMeetModule.base', 'Application ID shared with a private Jitsi server used to generate JWT token for authentication. Default: empty, no JWT token authentication will be used.'), 'jitsiAppSecret' => Yii::t('JitsiMeetModule.base', 'Application secret shared with a private Jitsi server used to sign JWT token for authentication. Default: empty, needed if JWT token should be generated.'), 'menuTitle' => Yii::t('JitsiMeetModule.base', 'Default: Jitsi Meet'), 'roomPrefix' => Yii::t('JitsiMeetModule.base', 'Default: empty, useful for public Jitsi server'), 'enableJwt' => Yii::t('JitsiMeetModule.base', 'Enable JWT Authentication'), ]; } /** * @inheritdoc */ public function init() { $this->menuTitle = Yii::$app->getModule('jitsi-meet')->settings->get('menuTitle'); if (empty($this->menuTitle)) { $this->menuTitle = 'Jitsi Meet'; } $this->jitsiDomain = Yii::$app->getModule('jitsi-meet')->settings->get('jitsiDomain'); if (empty($this->jitsiDomain)) { $this->jitsiDomain = 'meet.jit.si'; } $this->jitsiAppID = Yii::$app->getModule('jitsi-meet')->settings->get('jitsiAppID'); if (empty($this->jitsiAppID)) { $this->jitsiAppID = ''; } $this->jitsiAppSecret = Yii::$app->getModule('jitsi-meet')->settings->get('jitsiAppSecret'); if (empty($this->jitsiAppSecret)) { $this->jitsiAppSecret = ''; } $this->roomPrefix = Yii::$app->getModule('jitsi-meet')->settings->get('roomPrefix'); if (empty($this->roomPrefix)) { $this->roomPrefix = ''; } $this->enableJwt = Yii::$app->getModule('jitsi-meet')->settings->get('enableJwt'); if (empty($this->enableJwt)) { $this->enableJwt = 0; } } /** * @inheritdoc */ public function save() { Yii::$app->getModule('jitsi-meet')->settings->set('menuTitle', $this->menuTitle); Yii::$app->getModule('jitsi-meet')->settings->set('jitsiDomain', $this->jitsiDomain); Yii::$app->getModule('jitsi-meet')->settings->set('jitsiAppID', $this->jitsiAppID); Yii::$app->getModule('jitsi-meet')->settings->set('jitsiAppSecret', $this->jitsiAppSecret); Yii::$app->getModule('jitsi-meet')->settings->set('enableJwt', $this->enableJwt); $this->roomPrefix = ucwords(preg_replace("/[^A-Za-z0-9]/", '', $this->roomPrefix)); Yii::$app->getModule('jitsi-meet')->settings->set('roomPrefix', $this->roomPrefix); return true; } }