2017-08-27 00:17:04 +08:00
|
|
|
@extends('simple-layout')
|
2015-08-09 03:05:30 +08:00
|
|
|
|
2019-02-03 21:45:45 +08:00
|
|
|
@section('body')
|
|
|
|
<div class="container small">
|
2019-02-02 23:49:57 +08:00
|
|
|
|
2019-02-03 21:45:45 +08:00
|
|
|
<div class="py-m">
|
|
|
|
@include('settings.navbar', ['selected' => 'users'])
|
|
|
|
</div>
|
2017-08-27 00:17:04 +08:00
|
|
|
|
2019-08-25 22:44:51 +08:00
|
|
|
<section class="card content-wrap">
|
2021-01-17 21:41:43 +08:00
|
|
|
<h1 class="list-heading">{{ $user->id === user()->id ? trans('settings.users_edit_profile') : trans('settings.users_edit') }}</h1>
|
2019-08-04 21:26:39 +08:00
|
|
|
<form action="{{ url("/settings/users/{$user->id}") }}" method="post" enctype="multipart/form-data">
|
2019-02-03 21:45:45 +08:00
|
|
|
{!! csrf_field() !!}
|
|
|
|
<input type="hidden" name="_method" value="PUT">
|
2015-08-09 03:05:30 +08:00
|
|
|
|
2019-02-03 21:45:45 +08:00
|
|
|
<div class="setting-list">
|
2019-02-04 01:34:15 +08:00
|
|
|
@include('users.form', ['model' => $user, 'authMethod' => $authMethod])
|
2015-12-10 06:30:55 +08:00
|
|
|
|
2019-03-30 22:27:00 +08:00
|
|
|
<div class="grid half gap-xl">
|
2019-02-03 21:45:45 +08:00
|
|
|
<div>
|
|
|
|
<label for="user-avatar" class="setting-list-label">{{ trans('settings.users_avatar') }}</label>
|
|
|
|
<p class="small">{{ trans('settings.users_avatar_desc') }}</p>
|
2017-08-27 00:17:04 +08:00
|
|
|
</div>
|
2019-02-03 21:45:45 +08:00
|
|
|
<div>
|
|
|
|
@include('components.image-picker', [
|
|
|
|
'resizeHeight' => '512',
|
|
|
|
'resizeWidth' => '512',
|
|
|
|
'showRemove' => false,
|
2019-08-04 21:26:39 +08:00
|
|
|
'defaultImage' => url('/user_avatar.png'),
|
2019-02-03 21:45:45 +08:00
|
|
|
'currentImage' => $user->getAvatar(80),
|
|
|
|
'currentId' => $user->image_id,
|
2019-05-04 22:48:15 +08:00
|
|
|
'name' => 'profile_image',
|
2019-02-03 21:45:45 +08:00
|
|
|
'imageClass' => 'avatar large'
|
|
|
|
])
|
2017-08-27 00:17:04 +08:00
|
|
|
</div>
|
2017-03-05 23:34:54 +08:00
|
|
|
</div>
|
2019-02-03 21:45:45 +08:00
|
|
|
|
2019-03-30 22:27:00 +08:00
|
|
|
<div class="grid half gap-xl v-center">
|
2019-02-03 21:45:45 +08:00
|
|
|
<div>
|
|
|
|
<label for="user-language" class="setting-list-label">{{ trans('settings.users_preferred_language') }}</label>
|
2019-02-04 01:34:15 +08:00
|
|
|
<p class="small">
|
|
|
|
{{ trans('settings.users_preferred_language_desc') }}
|
|
|
|
</p>
|
2019-02-03 21:45:45 +08:00
|
|
|
</div>
|
|
|
|
<div>
|
|
|
|
<select name="setting[language]" id="user-language">
|
|
|
|
@foreach(trans('settings.language_select') as $lang => $label)
|
2019-03-11 05:40:02 +08:00
|
|
|
<option @if(setting()->getUser($user, 'language', config('app.default_locale')) === $lang) selected @endif value="{{ $lang }}">{{ $label }}</option>
|
2019-02-03 21:45:45 +08:00
|
|
|
@endforeach
|
|
|
|
</select>
|
|
|
|
</div>
|
2017-07-12 14:10:50 +08:00
|
|
|
</div>
|
2019-02-03 21:45:45 +08:00
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="text-right">
|
2021-01-17 21:41:43 +08:00
|
|
|
<a href="{{ url(userCan('users-manage') ? "/settings/users" : "/") }}" class="button outline">{{ trans('common.cancel') }}</a>
|
2019-02-03 21:45:45 +08:00
|
|
|
@if($authMethod !== 'system')
|
2019-08-04 21:26:39 +08:00
|
|
|
<a href="{{ url("/settings/users/{$user->id}/delete") }}" class="button outline">{{ trans('settings.users_delete') }}</a>
|
2019-02-03 21:45:45 +08:00
|
|
|
@endif
|
2019-08-25 19:40:04 +08:00
|
|
|
<button class="button" type="submit">{{ trans('common.save') }}</button>
|
2019-02-03 21:45:45 +08:00
|
|
|
</div>
|
|
|
|
</form>
|
2019-08-25 22:44:51 +08:00
|
|
|
</section>
|
2021-07-15 03:06:41 +08:00
|
|
|
|
|
|
|
<section class="card content-wrap auto-height">
|
|
|
|
<h2 class="list-heading">Multi-Factor Authentication</h2>
|
|
|
|
<p>
|
|
|
|
Setup multi-factor authentication as an extra layer of security
|
|
|
|
for your user account.
|
|
|
|
</p>
|
|
|
|
<div class="grid half gap-xl v-center pb-s">
|
|
|
|
<div>
|
|
|
|
@if ($mfaMethods->count() > 0)
|
|
|
|
<span class="text-pos">@icon('check-circle')</span>
|
|
|
|
@else
|
|
|
|
<span class="text-neg">@icon('cancel')</span>
|
|
|
|
@endif
|
|
|
|
{{ $mfaMethods->count() }} {{ $mfaMethods->count() === 1 ? 'method' : 'methods' }} configured
|
|
|
|
</div>
|
|
|
|
<div class="text-m-right">
|
|
|
|
@if($user->id === user()->id)
|
|
|
|
<a href="{{ url('/mfa/setup') }}" class="button outline">Configure Methods</a>
|
|
|
|
@endif
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</section>
|
2015-08-29 22:03:42 +08:00
|
|
|
|
2021-01-17 21:41:43 +08:00
|
|
|
@if(user()->id === $user->id && count($activeSocialDrivers) > 0)
|
2019-08-25 22:44:51 +08:00
|
|
|
<section class="card content-wrap auto-height">
|
2019-02-03 21:45:45 +08:00
|
|
|
<h2 class="list-heading">{{ trans('settings.users_social_accounts') }}</h2>
|
|
|
|
<p class="text-muted">{{ trans('settings.users_social_accounts_info') }}</p>
|
|
|
|
<div class="container">
|
|
|
|
<div class="grid third">
|
|
|
|
@foreach($activeSocialDrivers as $driver => $enabled)
|
|
|
|
<div class="text-center mb-m">
|
2019-08-25 22:44:51 +08:00
|
|
|
<div role="presentation">@icon('auth/'. $driver, ['style' => 'width: 56px;height: 56px;'])</div>
|
2019-02-03 21:45:45 +08:00
|
|
|
<div>
|
|
|
|
@if($user->hasSocialAccount($driver))
|
2021-06-15 05:37:58 +08:00
|
|
|
<form action="{{ url("/login/service/{$driver}/detach") }}" method="POST">
|
|
|
|
{{ csrf_field() }}
|
|
|
|
<button aria-label="{{ trans('settings.users_social_disconnect') }} - {{ $driver }}"
|
|
|
|
class="button small outline">{{ trans('settings.users_social_disconnect') }}</button>
|
|
|
|
</form>
|
2019-02-03 21:45:45 +08:00
|
|
|
@else
|
2019-08-25 22:44:51 +08:00
|
|
|
<a href="{{ url("/login/service/{$driver}") }}" aria-label="{{ trans('settings.users_social_connect') }} - {{ $driver }}"
|
|
|
|
class="button small outline">{{ trans('settings.users_social_connect') }}</a>
|
2019-02-03 21:45:45 +08:00
|
|
|
@endif
|
2017-08-27 00:17:04 +08:00
|
|
|
</div>
|
2019-02-03 21:45:45 +08:00
|
|
|
</div>
|
|
|
|
@endforeach
|
2015-09-05 03:40:36 +08:00
|
|
|
</div>
|
2017-08-27 00:17:04 +08:00
|
|
|
</div>
|
2019-08-25 22:44:51 +08:00
|
|
|
</section>
|
2015-09-05 03:40:36 +08:00
|
|
|
@endif
|
2019-12-29 21:02:26 +08:00
|
|
|
|
2021-01-17 21:41:43 +08:00
|
|
|
@if((user()->id === $user->id && userCan('access-api')) || userCan('users-manage'))
|
2020-01-18 22:03:11 +08:00
|
|
|
@include('users.api-tokens.list', ['user' => $user])
|
2019-12-29 21:02:26 +08:00
|
|
|
@endif
|
2015-08-09 03:05:30 +08:00
|
|
|
</div>
|
|
|
|
|
2019-03-11 05:40:02 +08:00
|
|
|
@stop
|