My Account: Extracted/tweaked profile text, removed old index

This commit is contained in:
Dan Brown 2023-10-18 17:53:58 +01:00
parent c1b01639c1
commit 03c44b3992
No known key found for this signature in database
GPG Key ID: 46D9F943C24A2EF9
7 changed files with 26 additions and 97 deletions

View File

@ -31,6 +31,8 @@ class ApiDocsController extends ApiController
/**
* Redirect to the API docs page.
* Required as a controller method, instead of the Route::redirect helper,
* to ensure the URL is generated correctly.
*/
public function redirect()
{

View File

@ -26,15 +26,13 @@ class UserAccountController extends Controller
}
/**
* Show the overview for user preferences.
* Redirect the root my-account path to the main/first category.
* Required as a controller method, instead of the Route::redirect helper,
* to ensure the URL is generated correctly.
*/
public function index()
public function redirect()
{
$mfaMethods = user()->mfaValues->groupBy('method');
return view('users.account.index', [
'mfaMethods' => $mfaMethods,
]);
return redirect('/my-account/profile');
}
/**

View File

@ -52,6 +52,7 @@ return [
'filter_clear' => 'Clear Filter',
'download' => 'Download',
'open_in_tab' => 'Open in Tab',
'open' => 'Open',
// Sort Options
'sort_options' => 'Sort Options',

View File

@ -35,5 +35,12 @@ return [
'auth_change_password_success' => 'Password has been updated!',
'profile' => 'Profile Details',
'profile_overview_desc' => 'Manage your user profile details including preferred language and authentication options.',
'profile_desc' => 'Manage the details of your account which represents you to other users, in addition to details that are used for communication and system personalisation.',
'profile_view_public' => 'View Public Profile',
'profile_name_desc' => 'Configure your display name which will be visible to other users in the system through the activity you perform, and content you own.',
'profile_email_desc' => 'This email will be used for notifications and, depending on active system authentication, system access.',
'profile_email_no_permission' => 'Unfortunately you don\'t have permission to change your email address. If you want to change this, you\'d need to ask an administrator to change this for you.',
'profile_avatar_desc' => 'Select an image which will be used to represent yourself to others in the system. Ideally this image should be square and about 256px in width and height.',
'profile_admin_options' => 'Administrator Options',
'profile_admin_options_desc' => 'Additional administrator-level options, like those to manage role assignments, can be found for your user account in the "Settings > Users" area of the application.',
];

View File

@ -1,62 +0,0 @@
@extends('layouts.simple')
@section('body')
<div class="container small my-xl">
<section class="card content-wrap auto-height items-center justify-space-between gap-m flex-container-row wrap">
<div class="flex min-width-m">
<h2 class="list-heading">{{ trans('preferences.shortcuts_interface') }}</h2>
<p class="text-muted">{{ trans('preferences.shortcuts_overview_desc') }}</p>
</div>
<div class="text-right">
<a href="{{ url('/my-account/shortcuts') }}" class="button outline">{{ trans('common.manage') }}</a>
</div>
</section>
@if(!user()->isGuest() && userCan('receive-notifications'))
<section class="card content-wrap auto-height items-center justify-space-between gap-m flex-container-row wrap">
<div class="flex min-width-m">
<h2 class="list-heading">{{ trans('preferences.notifications') }}</h2>
<p class="text-muted">{{ trans('preferences.notifications_desc') }}</p>
</div>
<div class="text-right">
<a href="{{ url('/my-account/notifications') }}" class="button outline">{{ trans('common.manage') }}</a>
</div>
</section>
@endif
@if(!user()->isGuest())
<section class="card content-wrap auto-height items-center justify-space-between gap-m flex-container-row wrap">
<div class="flex min-width-m">
<h2 class="list-heading">{{ trans('settings.users_edit_profile') }}</h2>
<p class="text-muted">{{ trans('preferences.profile_overview_desc') }}</p>
</div>
<div class="text-right">
<a href="{{ user()->getEditUrl() }}" class="button outline">{{ trans('common.manage') }}</a>
</div>
</section>
@endif
@if(!user()->isGuest())
<section class="card content-wrap auto-height items-center flex-container-row gap-m gap-x-l wrap justify-space-between">
<div class="flex-min-width-m">
<h2 class="list-heading">{{ trans('settings.users_mfa') }}</h2>
<p class="text-muted">{{ trans('settings.users_mfa_desc') }}</p>
<p class="text-muted">
@if ($mfaMethods->count() > 0)
<span class="text-pos">@icon('check-circle')</span>
@else
<span class="text-neg">@icon('cancel')</span>
@endif
{{ trans_choice('settings.users_mfa_x_methods', $mfaMethods->count()) }}
</p>
</div>
<div class="text-right">
<a href="{{ url('/mfa/setup') }}"
class="button outline">{{ trans('common.manage') }}</a>
</div>
</section>
@endif
</div>
@stop

View File

@ -10,24 +10,18 @@
<div class="flex-container-row gap-l items-center wrap justify-space-between">
<h1 class="list-heading">{{ trans('preferences.profile') }}</h1>
<div>
<a href="{{ user()->getProfileUrl() }}" class="button outline">View Public Profile</a>
<a href="{{ user()->getProfileUrl() }}" class="button outline">{{ trans('preferences.profile_view_public') }}</a>
</div>
</div>
<p class="text-muted text-small mb-none">
Manage the details of your account that represent you to other users, in addition to
details that are used for communication and system personalisation.
</p>
<p class="text-muted text-small mb-none">{{ trans('preferences.profile_desc') }}</p>
<div class="setting-list">
<div class="flex-container-row gap-l items-center wrap">
<div class="flex">
<label class="setting-list-label" for="name">{{ trans('auth.name') }}</label>
<p class="text-small mb-none">
Configure your display name which will be visible to other users in the system
within the activity you perform, and content you own.
</p>
<p class="text-small mb-none">{{ trans('preferences.profile_name_desc') }}</p>
</div>
<div class="flex stretch-inputs">
@include('form.text', ['name' => 'name'])
@ -38,19 +32,14 @@
<div class="flex-container-row gap-l items-center wrap">
<div class="flex">
<label class="setting-list-label" for="email">{{ trans('auth.email') }}</label>
<p class="text-small mb-none">
This email will be used for notifications and, depending on active system authentication, system access.
</p>
<p class="text-small mb-none">{{ trans('preferences.profile_email_desc') }}</p>
</div>
<div class="flex stretch-inputs">
@include('form.text', ['name' => 'email', 'disabled' => !userCan('users-manage')])
</div>
</div>
@if(!userCan('users-manage'))
<p class="text-small text-muted">
Unfortunately you don't have permission to change your email address.
If you want to change this, you'd need to ask an administrator to change this for you.
</p>
<p class="text-small text-muted">{{ trans('preferences.profile_email_no_permission') }}</p>
@endif
</div>
@ -58,10 +47,7 @@
<div>
<label for="user-avatar"
class="setting-list-label">{{ trans('settings.users_avatar') }}</label>
<p class="text-small">
Select an image which will be used to represent yourself to others
in the system. Ideally this image should be square and about 256px in width and height.
</p>
<p class="text-small">{{ trans('preferences.profile_avatar_desc') }}</p>
</div>
<div>
@include('form.image-picker', [
@ -92,14 +78,11 @@
<section class="card content-wrap auto-height">
<div class="flex-container-row gap-l items-center wrap">
<div class="flex">
<h2 class="list-heading">Administrator Options</h2>
<p class="text-small">
Additional administrator-level options, like role options, can be found for your user account in the
<nobr>"Settings > Users"</nobr> area of the application.
</p>
<h2 class="list-heading">{{ trans('preferences.profile_admin_options') }}</h2>
<p class="text-small">{{ trans('preferences.profile_admin_options_desc') }}</p>
</div>
<div class="text-m-right">
<a class="button outline" href="{{ user()->getEditUrl() }}">Open</a>
<a class="button outline" href="{{ user()->getEditUrl() }}">{{ trans('common.open') }}</a>
</div>
</div>
</section>

View File

@ -233,7 +233,7 @@ Route::middleware('auth')->group(function () {
Route::delete('/settings/users/{id}', [UserControllers\UserController::class, 'destroy']);
// User Account
Route::get('/my-account', [UserControllers\UserAccountController::class, 'index']);
Route::get('/my-account', [UserControllers\UserAccountController::class, 'redirect']);
Route::get('/my-account/profile', [UserControllers\UserAccountController::class, 'showProfile']);
Route::put('/my-account/profile', [UserControllers\UserAccountController::class, 'updateProfile']);
Route::get('/my-account/shortcuts', [UserControllers\UserAccountController::class, 'showShortcuts']);