Use twig to render profile setting page
This commit is contained in:
parent
0c3ff73454
commit
27331b4cf6
|
@ -4,6 +4,7 @@ use Carbon\Carbon;
|
||||||
use Engelsystem\Models\Room;
|
use Engelsystem\Models\Room;
|
||||||
use Engelsystem\Models\User\User;
|
use Engelsystem\Models\User\User;
|
||||||
use Engelsystem\Models\Worklog;
|
use Engelsystem\Models\Worklog;
|
||||||
|
use Engelsystem\Renderer\Renderer;
|
||||||
use Illuminate\Support\Collection;
|
use Illuminate\Support\Collection;
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
|
|
||||||
|
@ -37,81 +38,84 @@ function User_settings_view(
|
||||||
$enable_dect = config('enable_dect');
|
$enable_dect = config('enable_dect');
|
||||||
$enable_planned_arrival = config('enable_planned_arrival');
|
$enable_planned_arrival = config('enable_planned_arrival');
|
||||||
|
|
||||||
return page_with_title(settings_title(), [
|
/** @var Renderer $renderer */
|
||||||
msg(),
|
$renderer = app(Renderer::class);
|
||||||
div('row', [
|
return $renderer->render(
|
||||||
div('col-md-3 settings-menu', [
|
'pages/settings/settings.twig',
|
||||||
'<ul class="nav nav-pills nav-stacked">',
|
[
|
||||||
'<li class="active"><a href="' . url('/user-settings') . '">' . __('settings.profile') . '</a></li>',
|
'title' => 'settings.profile',
|
||||||
'<li><a href="' . url('/settings/password') . '">' . __('settings.password') . '</a></li>',
|
'content' =>
|
||||||
'<li><a href="' . url('/settings/oauth') . '">' . __('settings.oauth') . '</a></li>',
|
msg()
|
||||||
'</ul>'
|
. div('row', [
|
||||||
]),
|
div('col-md-9', [
|
||||||
div('col-md-9', [
|
form([
|
||||||
heading(__('settings.profile'), 2),
|
form_info('', __('Here you can change your user details.')),
|
||||||
form([
|
form_info(entry_required() . ' = ' . __('Entry required!')),
|
||||||
form_info('', __('Here you can change your user details.')),
|
form_text('nick', __('Nick'), $user_source->name, true),
|
||||||
form_info(entry_required() . ' = ' . __('Entry required!')),
|
$enable_pronoun
|
||||||
form_text('nick', __('Nick'), $user_source->name, true),
|
? form_text('pronoun', __('Pronoun'), $personalData->pronoun, false, 15)
|
||||||
$enable_pronoun
|
. form_info('', __('Will be shown on your profile page and in angel lists.'))
|
||||||
? form_text('pronoun', __('Pronoun'), $personalData->pronoun, false, 15)
|
: '',
|
||||||
. form_info('', __('Will be shown on your profile page and in angel lists.'))
|
$enable_user_name ? form_text('lastname', __('Last name'), $personalData->last_name) : '',
|
||||||
: '',
|
$enable_user_name ? form_text('prename', __('First name'), $personalData->first_name) : '',
|
||||||
$enable_user_name ? form_text('lastname', __('Last name'), $personalData->last_name) : '',
|
$enable_planned_arrival ? form_date(
|
||||||
$enable_user_name ? form_text('prename', __('First name'), $personalData->first_name) : '',
|
'planned_arrival_date',
|
||||||
$enable_planned_arrival ? form_date(
|
__('Planned date of arrival') . ' ' . entry_required(),
|
||||||
'planned_arrival_date',
|
$personalData->planned_arrival_date
|
||||||
__('Planned date of arrival') . ' ' . entry_required(),
|
? $personalData->planned_arrival_date->getTimestamp()
|
||||||
$personalData->planned_arrival_date ? $personalData->planned_arrival_date->getTimestamp() : '',
|
: '',
|
||||||
$buildup_start_date,
|
$buildup_start_date,
|
||||||
$teardown_end_date
|
$teardown_end_date
|
||||||
) : '',
|
) : '',
|
||||||
$enable_planned_arrival ? form_date(
|
$enable_planned_arrival ? form_date(
|
||||||
'planned_departure_date',
|
'planned_departure_date',
|
||||||
__('Planned date of departure'),
|
__('Planned date of departure'),
|
||||||
$personalData->planned_departure_date ? $personalData->planned_departure_date->getTimestamp() : '',
|
$personalData->planned_departure_date
|
||||||
$buildup_start_date,
|
? $personalData->planned_departure_date->getTimestamp()
|
||||||
$teardown_end_date
|
: '',
|
||||||
) : '',
|
$buildup_start_date,
|
||||||
$enable_dect ? form_text('dect', __('DECT'), $user_source->contact->dect) : '',
|
$teardown_end_date
|
||||||
form_text('mobile', __('Mobile'), $user_source->contact->mobile),
|
) : '',
|
||||||
form_text('mail', __('E-Mail') . ' ' . entry_required(), $user_source->email),
|
$enable_dect ? form_text('dect', __('DECT'), $user_source->contact->dect) : '',
|
||||||
form_checkbox(
|
form_text('mobile', __('Mobile'), $user_source->contact->mobile),
|
||||||
'email_shiftinfo',
|
form_text('mail', __('E-Mail') . ' ' . entry_required(), $user_source->email),
|
||||||
__(
|
form_checkbox(
|
||||||
'The %s is allowed to send me an email (e.g. when my shifts change)',
|
'email_shiftinfo',
|
||||||
[config('app_name')]
|
__(
|
||||||
),
|
'The %s is allowed to send me an email (e.g. when my shifts change)',
|
||||||
$user_source->settings->email_shiftinfo
|
[config('app_name')]
|
||||||
),
|
),
|
||||||
form_checkbox(
|
$user_source->settings->email_shiftinfo
|
||||||
'email_by_human_allowed',
|
),
|
||||||
__('Humans are allowed to send me an email (e.g. for ticket vouchers)'),
|
form_checkbox(
|
||||||
$user_source->settings->email_human
|
'email_by_human_allowed',
|
||||||
),
|
__('Humans are allowed to send me an email (e.g. for ticket vouchers)'),
|
||||||
$enable_tshirt_size ? form_select(
|
$user_source->settings->email_human
|
||||||
'tshirt_size',
|
),
|
||||||
__('Shirt size'),
|
$enable_tshirt_size ? form_select(
|
||||||
$tshirt_sizes,
|
'tshirt_size',
|
||||||
$personalData->shirt_size,
|
__('Shirt size'),
|
||||||
__('Please select...')
|
$tshirt_sizes,
|
||||||
) : '',
|
$personalData->shirt_size,
|
||||||
form_info('', __('Please visit the angeltypes page to manage your angeltypes.')),
|
__('Please select...')
|
||||||
form_submit('submit', __('Save'))
|
) : '',
|
||||||
]),
|
form_info('', __('Please visit the angeltypes page to manage your angeltypes.')),
|
||||||
form([
|
form_submit('submit', __('Save'))
|
||||||
form_info(__('Here you can choose your color settings:')),
|
]),
|
||||||
form_select('theme', __('Color settings:'), $themes, $user_source->settings->theme),
|
form([
|
||||||
form_submit('submit_theme', __('Save'))
|
form_info(__('Here you can choose your color settings:')),
|
||||||
]),
|
form_select('theme', __('Color settings:'), $themes, $user_source->settings->theme),
|
||||||
form([
|
form_submit('submit_theme', __('Save'))
|
||||||
form_info(__('Here you can choose your language:')),
|
]),
|
||||||
form_select('language', __('Language:'), $locales, $user_source->settings->language),
|
form([
|
||||||
form_submit('submit_language', __('Save'))
|
form_info(__('Here you can choose your language:')),
|
||||||
]),
|
form_select('language', __('Language:'), $locales, $user_source->settings->language),
|
||||||
])
|
form_submit('submit_language', __('Save'))
|
||||||
])
|
]),
|
||||||
], true);
|
])
|
||||||
|
])
|
||||||
|
]
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
{% block title %}{{ __('settings.oauth') }}{% endblock %}
|
{% block title %}{{ __('settings.oauth') }}{% endblock %}
|
||||||
|
|
||||||
{% block container_title %}
|
{% block container_title %}
|
||||||
<h2 id="oauth-settings-title">{{ block('title') }}</h2>
|
<h1 id="oauth-settings-title">{{ __('settings.settings') }} <small>{{ block('title') }}</small></h1>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
{% block row_content %}
|
{% block row_content %}
|
||||||
|
|
|
@ -1,11 +1,14 @@
|
||||||
{% extends 'layouts/app.twig' %}
|
{% extends 'layouts/app.twig' %}
|
||||||
{% import 'macros/base.twig' as m %}
|
{% import 'macros/base.twig' as m %}
|
||||||
|
|
||||||
{% block title %}{{ __('settings') }}{% endblock %}
|
{% block title %}{{ __(title|default(__('settings.settings'))) }}{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<div class="container user-settings">
|
<div class="container user-settings">
|
||||||
<h1>{{ __('settings.settings') }}</h1>
|
{% block container_title %}
|
||||||
|
<h1>{{ __('settings.settings') }} <small>{{ block('title') }}</small></h1>
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-3 settings-menu">
|
<div class="col-md-3 settings-menu">
|
||||||
<ul class="nav nav-pills nav-stacked">
|
<ul class="nav nav-pills nav-stacked">
|
||||||
|
@ -22,13 +25,10 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-9">
|
<div class="col-md-9">
|
||||||
{% block container_title %}
|
|
||||||
<h2>{{ block('title') }}</h2>
|
|
||||||
{% endblock %}
|
|
||||||
|
|
||||||
{% include 'layouts/parts/messages.twig' %}
|
{% include 'layouts/parts/messages.twig' %}
|
||||||
|
|
||||||
{% block row_content %}
|
{% block row_content %}
|
||||||
|
{{ content|raw }}
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -210,6 +210,10 @@ class LegacyMiddleware implements MiddlewareInterface
|
||||||
return response($content, (int)$page);
|
return response($content, (int)$page);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (strpos($content, '<html') !== false) {
|
||||||
|
return response($content);
|
||||||
|
}
|
||||||
|
|
||||||
return response(
|
return response(
|
||||||
view(
|
view(
|
||||||
'layouts/app',
|
'layouts/app',
|
||||||
|
|
Loading…
Reference in New Issue