re #22 added impersonation

This commit is contained in:
Antonio Ramirez
2017-07-18 23:47:23 +02:00
parent 2301ccfe45
commit d3b4161f7c
6 changed files with 122 additions and 5 deletions

View File

@ -18,6 +18,7 @@ use Da\User\Model\Profile;
use Da\User\Model\User;
use Da\User\Query\UserQuery;
use Da\User\Search\UserSearch;
use Da\User\Service\SwitchIdentityService;
use Da\User\Service\UserBlockService;
use Da\User\Service\UserConfirmationService;
use Da\User\Service\UserCreateService;
@ -80,6 +81,7 @@ class AdminController extends Controller
'delete' => ['post'],
'confirm' => ['post'],
'block' => ['post'],
'switch-identity' => ['post']
],
],
'access' => [
@ -287,4 +289,19 @@ class AdminController extends Controller
return $this->redirect(Url::previous('actions-redirect'));
}
public function actionSwitchIdentity($id = null)
{
/** @var \Da\User\Module $module */
$module = $this->module;
if (false === $module->enableSwitchIdentities) {
Yii::$app->getSession()->setFlash('danger', Yii::t('usuario', 'Switch identities is disabled.'));
return $this->redirect(['index']);
}
$this->make(SwitchIdentityService::class, [$this, 'userId' => $id])->run();
return $this->goHome();
}
}