@section('body')
<div class="container small">
- <div class="grid left-focus v-center no-row-gap">
- <div class="py-m">
- @include('settings.navbar', ['selected' => 'settings'])
- </div>
- <div class="text-right p-m">
- <a target="_blank" rel="noopener noreferrer" href="https://github.com/BookStackApp/BookStack/releases">
- BookStack @if(strpos($version, 'v') !== 0) version @endif {{ $version }}
- </a>
- </div>
- </div>
+ @include('settings.navbar-with-version', ['selected' => 'settings'])
<div class="card content-wrap auto-height">
- <h2 class="list-heading">{{ trans('settings.app_features_security') }}</h2>
+ <h2 id="features" class="list-heading">{{ trans('settings.app_features_security') }}</h2>
<form action="{{ url("/settings") }}" method="POST">
{!! csrf_field() !!}
+ <input type="hidden" name="section" value="features">
<div class="setting-list">
</div>
<div class="card content-wrap auto-height">
- <h2 class="list-heading">{{ trans('settings.app_customization') }}</h2>
+ <h2 id="customization" class="list-heading">{{ trans('settings.app_customization') }}</h2>
<form action="{{ url("/settings") }}" method="POST" enctype="multipart/form-data">
{!! csrf_field() !!}
+ <input type="hidden" name="section" value="customization">
<div class="setting-list">
<label for="setting-app-name" class="setting-list-label">{{ trans('settings.app_name') }}</label>
<p class="small">{{ trans('settings.app_name_desc') }}</p>
</div>
- <div>
+ <div class="pt-xs">
<input type="text" value="{{ setting('app-name', 'BookStack') }}" name="setting-app-name" id="setting-app-name">
@include('components.toggle-switch', [
'name' => 'setting-app-name-header',
<label class="setting-list-label">{{ trans('settings.app_editor') }}</label>
<p class="small">{{ trans('settings.app_editor_desc') }}</p>
</div>
- <div>
+ <div class="pt-xs">
<select name="setting-app-editor" id="setting-app-editor">
<option @if(setting('app-editor') === 'wysiwyg') selected @endif value="wysiwyg">WYSIWYG</option>
<option @if(setting('app-editor') === 'markdown') selected @endif value="markdown">Markdown</option>
<label class="setting-list-label">{{ trans('settings.app_logo') }}</label>
<p class="small">{!! trans('settings.app_logo_desc') !!}</p>
</div>
- <div>
+ <div class="pt-xs">
@include('components.image-picker', [
'removeName' => 'setting-app-logo',
'removeValue' => 'none',
<label class="setting-list-label">{{ trans('settings.app_primary_color') }}</label>
<p class="small">{!! trans('settings.app_primary_color_desc') !!}</p>
</div>
- <div setting-app-color-picker class="text-m-right">
+ <div setting-app-color-picker class="text-m-right pt-xs">
<input type="color" data-default="#206ea7" data-current="{{ setting('app-color') }}" value="{{ setting('app-color') }}" name="setting-app-color" id="setting-app-color" placeholder="#206ea7">
<input type="hidden" value="{{ setting('app-color-light') }}" name="setting-app-color-light" id="setting-app-color-light">
- <br>
- <button type="button" class="text-button text-muted mt-s mx-s" setting-app-color-picker-default>{{ trans('common.default') }}</button>
- <span class="sep">|</span>
- <button type="button" class="text-button text-muted mt-s mx-s" setting-app-color-picker-reset>{{ trans('common.reset') }}</button>
+ <div class="pr-s">
+ <button type="button" class="text-button text-muted mt-s" setting-app-color-picker-default>{{ trans('common.default') }}</button>
+ <span class="sep">|</span>
+ <button type="button" class="text-button text-muted mt-s" setting-app-color-picker-reset>{{ trans('common.reset') }}</button>
+ </div>
+
</div>
</div>
<label for="setting-app-homepage" class="setting-list-label">{{ trans('settings.app_homepage') }}</label>
<p class="small">{{ trans('settings.app_homepage_desc') }}</p>
</div>
- <div>
+ <div class="pt-xs">
<select name="setting-app-homepage-type" id="setting-app-homepage-type">
<option @if(setting('app-homepage-type') === 'default') selected @endif value="default">{{ trans('common.default') }}</option>
<option @if(setting('app-homepage-type') === 'books') selected @endif value="books">{{ trans('entities.books') }}</option>
</div>
<div class="card content-wrap auto-height">
- <h2 class="list-heading">{{ trans('settings.reg_settings') }}</h2>
+ <h2 id="registration" class="list-heading">{{ trans('settings.reg_settings') }}</h2>
<form action="{{ url("/settings") }}" method="POST">
{!! csrf_field() !!}
+ <input type="hidden" name="section" value="registration">
<div class="setting-list">
<div class="grid half gap-xl">
'label' => trans('settings.reg_enable_toggle')
])
- @if(config('auth.method') === 'ldap')
- <div class="text-warn text-small mb-l">{{ trans('settings.reg_enable_ldap_warning') }}</div>
+ @if(in_array(config('auth.method'), ['ldap', 'saml2']))
+ <div class="text-warn text-small mb-l">{{ trans('settings.reg_enable_external_warning') }}</div>
@endif
<label for="setting-registration-role">{{ trans('settings.reg_default_role') }}</label>
<select id="setting-registration-role" name="setting-registration-role" @if($errors->has('setting-registration-role')) class="neg" @endif>
@foreach(\BookStack\Auth\Role::all() as $role)
- <option value="{{$role->id}}" data-role-name="{{ $role->name }}"
+ <option value="{{$role->id}}"
+ data-system-role-name="{{ $role->system_name ?? '' }}"
@if(setting('registration-role', \BookStack\Auth\Role::first()->id) == $role->id) selected @endif
>
{{ $role->display_name }}
<label for="setting-registration-restrict" class="setting-list-label">{{ trans('settings.reg_confirm_restrict_domain') }}</label>
<p class="small">{!! trans('settings.reg_confirm_restrict_domain_desc') !!}</p>
</div>
- <div>
+ <div class="pt-xs">
<input type="text" id="setting-registration-restrict" name="setting-registration-restrict" placeholder="{{ trans('settings.reg_confirm_restrict_domain_placeholder') }}" value="{{ setting('registration-restrict', '') }}">
</div>
</div>
</div>
- @include('components.image-manager', ['imageType' => 'system'])
@include('components.entity-selector-popup', ['entityTypes' => 'page'])
@stop