setTitle('Utilisateurs'); $this->addBreadcrumb($this->getTitle()); ?> $dataProvider, 'filterModel' => $searchModel, 'summary' => 'Affichage de {begin, number}-{end, number} sur {totalCount, number} {totalCount, plural, one{élément} other{éléments}}.', 'columns' => [ [ 'attribute' => 'username', 'label' => 'Nom', 'value' => function ($user) use ($userModule) { return $userModule->getUsername($user); } ], [ 'attribute' => 'type', 'label' => 'Type', 'headerOptions' => ['class' => 'column-hide-on-mobile'], 'filterOptions' => ['class' => 'column-hide-on-mobile'], 'contentOptions' => ['class' => 'column-hide-on-mobile'], 'filter' => $userModule->getTypeChoicesArray(), 'value' => function ($user) use ($userModule) { return $userModule->getTypeLabel($user['type']); } ], [ 'attribute' => 'contacts', 'header' => 'Contacts', 'format' => 'raw', 'headerOptions' => ['class' => 'column-hide-on-mobile'], 'filterOptions' => ['class' => 'column-hide-on-mobile'], 'contentOptions' => ['class' => 'column-hide-on-mobile'], 'value' => function ($user) { $html = ''; if (strlen($user['phone'])) { $html .= $user['phone']; } if (strlen($user['phone']) && strlen($user['email'])) { $html .= '
'; } if (strlen($user['email'])) { $html .= $user['email']; } return $html; } ], [ 'attribute' => 'producers', 'label' => 'Profils', 'format' => 'raw', 'contentOptions' => ['class' => 'column-hide-on-mobile align-center'], 'value' => function ($user) use ($userProducerModule) { $html = ''; $userProducersArray = $userProducerModule->getRepository()->findUserProducersByUser($user); foreach($userProducersArray as $userProducer) { $html .= ' '.$userProducer->producer->name.' '; } return $html; } ], [ 'class' => 'yii\grid\ActionColumn', 'template' => '{problemReceivingEmails} {switch}', 'headerOptions' => ['class' => 'column-actions'], 'contentOptions' => ['class' => 'column-actions'], 'buttons' => [ 'view' => function ($url, $user) { return Html::a('', Yii::$app->urlManager->createUrl(['user/view', 'id' => $user->id]), [ 'title' => 'Voir', 'class' => 'btn btn-default' ]); }, 'update' => function ($url, $user) { return Html::a('', Yii::$app->urlManager->createUrl(['user/update', 'id' => $user->id]), [ 'title' => 'Modifier', 'class' => 'btn btn-default' ]); }, 'problemReceivingEmails' => function($url, $model) use ($userModule, $userCurrent) { if(!$model->getProblemReceivingEmails()) { return Html::a('', Yii::$app->urlManager->createUrl(['user-admin/report-problem-receiving-emails', 'id' => $model->id]), [ 'title' => 'Signaler comme ayant des problèmes de réception des emails', 'class' => 'btn btn-default', ]); } }, 'switch' => function($url, $model) use ($userModule, $userCurrent) { if($userModule->getAuthorizationChecker()->isGrantedAsAdministrator($userCurrent)) { return Html::a('', Yii::$app->urlManager->createUrl(['user/switch-identity', 'id' => $model->id]), [ 'title' => 'Prendre la main', 'class' => 'btn btn-default' ]); } } ], ], ], ]); ?>