assign trainers to user; add email to jwt token

This commit is contained in:
Roland Schneider
2021-10-04 18:13:32 +02:00
parent 439fb12b6e
commit 7a55ca9ff3
21 changed files with 671 additions and 350 deletions

View File

@@ -1,5 +1,8 @@
<?php
use backend\models\UserUpdate;
use common\models\Account;
use common\models\Trainer;
use yii\helpers\Html;
use yii\widgets\ActiveForm;
use yii\grid\GridView;
@@ -8,11 +11,13 @@ use common\components\RoleDefinition;
use common\models\User;
/* @var $this yii\web\View */
/* @var $model common\models\User */
/* @var $model UserUpdate */
/* @var $form yii\widgets\ActiveForm */
/* @var $trainers Trainer[] */
/* @var $accounts Account[] */
?>
<?php
<?php
$roleOptions = RoleDefinition::roleLabels();
asort($roleOptions);
@@ -32,10 +37,11 @@ asort($roleOptions);
<?= $form->field($model, 'password_repeat')->passwordInput() ?>
<?= $form->field($model, 'role')->dropDownList($roleOptions) ?>
<?php
<?php
$selectedAccounts = $model->selected_accounts;
$selectedTrainers = $model->selected_trainers;
?>
<h3>Engedélyezett kasszák</h3>
@@ -52,7 +58,7 @@ asort($roleOptions);
'checkboxOptions' => function ($model, $key, $index, $column) use ($selectedAccounts){
$result = [];
$result['value'] = $model->id_account ;
if ( isset($selectedAccounts) ){
if ( is_array($selectedAccounts) ){
if ( array_search($model->id_account , $selectedAccounts ) !== false){
@@ -60,15 +66,47 @@ asort($roleOptions);
}
}
}
return $result;
}
],
[ 'attribute' => 'name' ],
],
])?>
<h3>Engedélyezett edzők</h3>
<?php echo GridView::widget([
'dataProvider' => new ArrayDataProvider( [
'allModels' => $trainers,
'sort' => false,
'pagination' => false,
]),
'columns' => [
[
'class' => 'yii\grid\CheckboxColumn',
'name' => (new ReflectionClass( $model->classname() ))->getShortName() . '[selected_trainers]',
'checkboxOptions' => function ($model, $key, $index, $column) use ($selectedTrainers){
$result = [];
$result['value'] = $model->id ;
if ( isset($selectedTrainers) ){
if ( is_array($selectedTrainers) ){
if ( array_search($model->id , $selectedTrainers ) !== false){
$result['checked'] = 'checked' ;
}
}
}
return $result;
}
],
[ 'attribute' => 'name' ],
],
])?>
<div class="form-group">
<?= Html::submitButton($model->isNewRecord ? Yii::t('app', 'Mentés') : Yii::t('app', 'Mentés'), ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?>
<?= Html::submitButton( Yii::t('app', 'Mentés'), ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?>
</div>
<?php ActiveForm::end(); ?>