Allow user specific themes (#10799)

* allow user specific themes

* add missing newline

* use global function getDefinitions

* some fixes

* .

* travis fix

* .

* Optimize preference loading
Aka, don't run multiple sql queries per page load, now it is 0-1 queries (for preferences)

* Add a default option for user preferences

* Remove unused code

* more
This commit is contained in:
SourceDoctor
2019-11-14 19:40:38 +01:00
committed by Tony Murray
parent b89d80dc02
commit a9212faa83
6 changed files with 126 additions and 45 deletions

View File

@@ -68,10 +68,22 @@
</select>
</div>
</div>
<div class="form-group">
<label for="site_style" class="col-sm-4 control-label">@lang('CSS Style')</label>
<div class="col-sm-4">
<select class="form-control ajax-select" name="site_style" data-pref="site_style" data-previous="{{ $site_style }}">
<option value="default">@lang('Default') ({{ $site_style_default }})</option>
@foreach($site_styles as $style => $descr)
<option value="{{ $style }}" @if($style == $site_style) selected @endif>{{ $descr }}</option>
@endforeach
</select>
</div>
</div>
<div class="form-group">
<label for="locale" class="col-sm-4 control-label">@lang('Language')</label>
<div class="col-sm-4">
<select class="form-control ajax-select" name="locale" data-pref="locale" data-previous="{{ $locale }}">
<option value="default">@lang('Default') ({{ $locale_default }})</option>
@foreach($locales as $lang => $descr)
<option value="{{ $lang }}" @if($lang == $locale) selected @endif>{{ $descr }}</option>
@endforeach
@@ -218,6 +230,9 @@
if (pref === 'locale') {
location.reload();
}
if (pref === 'site_style') {
location.reload();
}
$this.data('previous', value);
$this.closest('.form-group').addClass('has-success');