added views and Authclients
This commit is contained in:
47
lib/User/resources/views/settings/_menu.php
Normal file
47
lib/User/resources/views/settings/_menu.php
Normal file
@ -0,0 +1,47 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
* This file is part of the Dektrium project.
|
||||
*
|
||||
* (c) Dektrium project <http://github.com/dektrium>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE.md
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\widgets\Menu;
|
||||
|
||||
/** @var dektrium\user\models\User $user */
|
||||
$user = Yii::$app->user->identity;
|
||||
$networksVisible = count(Yii::$app->authClientCollection->clients) > 0;
|
||||
|
||||
?>
|
||||
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">
|
||||
<?= Html::img($user->profile->getAvatarUrl(24), [
|
||||
'class' => 'img-rounded',
|
||||
'alt' => $user->username,
|
||||
]) ?>
|
||||
<?= $user->username ?>
|
||||
</h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<?= Menu::widget([
|
||||
'options' => [
|
||||
'class' => 'nav nav-pills nav-stacked',
|
||||
],
|
||||
'items' => [
|
||||
['label' => Yii::t('user', 'Profile'), 'url' => ['/user/settings/profile']],
|
||||
['label' => Yii::t('user', 'Account'), 'url' => ['/user/settings/account']],
|
||||
[
|
||||
'label' => Yii::t('user', 'Networks'),
|
||||
'url' => ['/user/settings/networks'],
|
||||
'visible' => $networksVisible
|
||||
],
|
||||
],
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
88
lib/User/resources/views/settings/account.php
Normal file
88
lib/User/resources/views/settings/account.php
Normal file
@ -0,0 +1,88 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
* This file is part of the Dektrium project.
|
||||
*
|
||||
* (c) Dektrium project <http://github.com/dektrium>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE.md
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\widgets\ActiveForm;
|
||||
|
||||
/**
|
||||
* @var $this yii\web\View
|
||||
* @var $form yii\widgets\ActiveForm
|
||||
* @var $model dektrium\user\models\SettingsForm
|
||||
*/
|
||||
|
||||
$this->title = Yii::t('user', 'Account settings');
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
|
||||
<?= $this->render('/_alert', ['module' => Yii::$app->getModule('user')]) ?>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-3">
|
||||
<?= $this->render('_menu') ?>
|
||||
</div>
|
||||
<div class="col-md-9">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title"><?= Html::encode($this->title) ?></h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<?php $form = ActiveForm::begin([
|
||||
'id' => 'account-form',
|
||||
'options' => ['class' => 'form-horizontal'],
|
||||
'fieldConfig' => [
|
||||
'template' => "{label}\n<div class=\"col-lg-9\">{input}</div>\n<div class=\"col-sm-offset-3 col-lg-9\">{error}\n{hint}</div>",
|
||||
'labelOptions' => ['class' => 'col-lg-3 control-label'],
|
||||
],
|
||||
'enableAjaxValidation' => true,
|
||||
'enableClientValidation' => false,
|
||||
]); ?>
|
||||
|
||||
<?= $form->field($model, 'email') ?>
|
||||
|
||||
<?= $form->field($model, 'username') ?>
|
||||
|
||||
<?= $form->field($model, 'new_password')->passwordInput() ?>
|
||||
|
||||
<hr />
|
||||
|
||||
<?= $form->field($model, 'current_password')->passwordInput() ?>
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-lg-offset-3 col-lg-9">
|
||||
<?= Html::submitButton(Yii::t('user', 'Save'), ['class' => 'btn btn-block btn-success']) ?><br>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php ActiveForm::end(); ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php if ($model->module->enableAccountDelete): ?>
|
||||
<div class="panel panel-danger">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title"><?= Yii::t('user', 'Delete account') ?></h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<p>
|
||||
<?= Yii::t('user', 'Once you delete your account, there is no going back') ?>.
|
||||
<?= Yii::t('user', 'It will be deleted forever') ?>.
|
||||
<?= Yii::t('user', 'Please be certain') ?>.
|
||||
</p>
|
||||
<?= Html::a(Yii::t('user', 'Delete account'), ['delete'], [
|
||||
'class' => 'btn btn-danger',
|
||||
'data-method' => 'post',
|
||||
'data-confirm' => Yii::t('user', 'Are you sure? There is no going back'),
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif ?>
|
||||
</div>
|
||||
</div>
|
||||
72
lib/User/resources/views/settings/networks.php
Normal file
72
lib/User/resources/views/settings/networks.php
Normal file
@ -0,0 +1,72 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
* This file is part of the Dektrium project.
|
||||
*
|
||||
* (c) Dektrium project <http://github.com/dektrium>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE.md
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
use dektrium\user\widgets\Connect;
|
||||
use yii\helpers\Html;
|
||||
|
||||
/*
|
||||
* @var yii\web\View $this
|
||||
* @var yii\widgets\ActiveForm $form
|
||||
*/
|
||||
|
||||
$this->title = Yii::t('user', 'Networks');
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
|
||||
<?= $this->render('/_alert', ['module' => Yii::$app->getModule('user')]) ?>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-3">
|
||||
<?= $this->render('_menu') ?>
|
||||
</div>
|
||||
<div class="col-md-9">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
<?= Html::encode($this->title) ?>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="alert alert-info">
|
||||
<p><?= Yii::t('user', 'You can connect multiple accounts to be able to log in using them') ?>.</p>
|
||||
</div>
|
||||
<?php $auth = Connect::begin([
|
||||
'baseAuthUrl' => ['/user/security/auth'],
|
||||
'accounts' => $user->accounts,
|
||||
'autoRender' => false,
|
||||
'popupMode' => false,
|
||||
]) ?>
|
||||
<table class="table">
|
||||
<?php foreach ($auth->getClients() as $client): ?>
|
||||
<tr>
|
||||
<td style="width: 32px; vertical-align: middle">
|
||||
<?= Html::tag('span', '', ['class' => 'auth-icon ' . $client->getName()]) ?>
|
||||
</td>
|
||||
<td style="vertical-align: middle">
|
||||
<strong><?= $client->getTitle() ?></strong>
|
||||
</td>
|
||||
<td style="width: 120px">
|
||||
<?= $auth->isConnected($client) ?
|
||||
Html::a(Yii::t('user', 'Disconnect'), $auth->createClientUrl($client), [
|
||||
'class' => 'btn btn-danger btn-block',
|
||||
'data-method' => 'post',
|
||||
]) :
|
||||
Html::a(Yii::t('user', 'Connect'), $auth->createClientUrl($client), [
|
||||
'class' => 'btn btn-success btn-block',
|
||||
])
|
||||
?>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</table>
|
||||
<?php Connect::end() ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
90
lib/User/resources/views/settings/profile.php
Normal file
90
lib/User/resources/views/settings/profile.php
Normal file
@ -0,0 +1,90 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
* This file is part of the Dektrium project.
|
||||
*
|
||||
* (c) Dektrium project <http://github.com/dektrium>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE.md
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
|
||||
/**
|
||||
* @var yii\web\View $this
|
||||
* @var yii\widgets\ActiveForm $form
|
||||
* @var dektrium\user\models\Profile $profile
|
||||
*/
|
||||
|
||||
$this->title = Yii::t('user', 'Profile settings');
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
|
||||
<?= $this->render('/_alert', ['module' => Yii::$app->getModule('user')]) ?>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-3">
|
||||
<?= $this->render('_menu') ?>
|
||||
</div>
|
||||
<div class="col-md-9">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
<?= Html::encode($this->title) ?>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<?php $form = \yii\widgets\ActiveForm::begin([
|
||||
'id' => 'profile-form',
|
||||
'options' => ['class' => 'form-horizontal'],
|
||||
'fieldConfig' => [
|
||||
'template' => "{label}\n<div class=\"col-lg-9\">{input}</div>\n<div class=\"col-sm-offset-3 col-lg-9\">{error}\n{hint}</div>",
|
||||
'labelOptions' => ['class' => 'col-lg-3 control-label'],
|
||||
],
|
||||
'enableAjaxValidation' => true,
|
||||
'enableClientValidation' => false,
|
||||
'validateOnBlur' => false,
|
||||
]); ?>
|
||||
|
||||
<?= $form->field($model, 'name') ?>
|
||||
|
||||
<?= $form->field($model, 'public_email') ?>
|
||||
|
||||
<?= $form->field($model, 'website') ?>
|
||||
|
||||
<?= $form->field($model, 'location') ?>
|
||||
|
||||
<?= $form
|
||||
->field($model, 'timezone')
|
||||
->dropDownList(
|
||||
\yii\helpers\ArrayHelper::map(
|
||||
\dektrium\user\helpers\Timezone::getAll(),
|
||||
'timezone',
|
||||
'name'
|
||||
)
|
||||
); ?>
|
||||
|
||||
<?= $form
|
||||
->field($model, 'gravatar_email')
|
||||
->hint(
|
||||
\yii\helpers\Html::a(
|
||||
Yii::t('user', 'Change your avatar at Gravatar.com'),
|
||||
'http://gravatar.com'
|
||||
)
|
||||
) ?>
|
||||
|
||||
<?= $form->field($model, 'bio')->textarea() ?>
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-lg-offset-3 col-lg-9">
|
||||
<?= \yii\helpers\Html::submitButton(
|
||||
Yii::t('user', 'Save'),
|
||||
['class' => 'btn btn-block btn-success']
|
||||
) ?><br>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php \yii\widgets\ActiveForm::end(); ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Reference in New Issue
Block a user