More compact page headers / streamlined new page design for all pages

This commit is contained in:
Bernd Bestel
2020-10-31 18:37:10 +01:00
parent 18617dc9fb
commit 7b32d1d8a4
68 changed files with 433 additions and 368 deletions

View File

@@ -136,7 +136,7 @@
- Fixed (again) that CORS was broken
### General & other improvements/fixes
- UI refresh / style improvements (thanks @zsarnett)
- UI refresh / style improvements (thanks @zsarnett for the idea and initial work on this)
- The data path (previously fixed to the `data` folder) is now configurable, making it possible to run multiple grocy instances from the same directory (with different `config.php` files / different database, etc.) (thanks @fgrsnau)
- Via an environment variable `GROCY_DATAPATH` (higher priority)
- Via an FastCGI parameter `GROCY_DATAPATH` (lower priority)

View File

@@ -474,12 +474,6 @@ canvas.drawingBuffer {
cursor: pointer;
}
#info-current-stock {
font-size: 1.5em;
font-weight: 500;
line-height: 1.2;
}
.related-links .btn {
font-size: 14px;
}

View File

@@ -7,7 +7,7 @@
<div class="row">
<div class="col-xs-12 col-md-6 text-center">
<h2 class="title">@yield('title')</h2>
<hr>
<ul class="nav nav-tabs justify-content-center mt-3">
<li class="nav-item">
<a class="nav-link active"

View File

@@ -13,9 +13,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">

View File

@@ -10,6 +10,10 @@
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
<div class="related-links">
<a class="btn btn-primary responsive-button permission-MASTER_DATA_EDIT"
href="{{ $U('/battery/new') }}">
{{ $__t('Add') }}
</a>
<a class="btn btn-outline-secondary"
href="{{ $U('/userfields?entity=batteries') }}">
{{ $__t('Configure userfields') }}
@@ -18,18 +22,12 @@
</div>
</div>
</div>
<hr>
<div class="row mt-3">
<div class="col-xs-12 col-md-2 col-xl-1">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3 permission-MASTER_DATA_EDIT"
href="{{ $U('/battery/new') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>

View File

@@ -11,10 +11,11 @@
</div>
</div>
<hr>
<div class="row my-3">
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>
@@ -25,9 +26,9 @@
</div>
</div>
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-filter"></i></span>
<span class="input-group-text"><i class="fas fa-filter"></i>&nbsp;{{ $__t('Battery') }}</span>
</div>
<select class="form-control"
id="battery-filter">
@@ -40,7 +41,7 @@
</div>
</div>
<div class="row">
<div class="row mt-2">
<div class="col">
<table id="batteries-journal-table"
class="table table-sm table-striped dt-responsive">

View File

@@ -21,20 +21,21 @@
</a>
</div>
</div>
<hr>
<p id="info-due-batteries"
<div class="border-top border-bottom my-2 py-1">
<div id="info-due-batteries"
data-status-filter="duesoon"
data-next-x-days="{{ $nextXDays }}"
class="warning-message status-filter-message responsive-button mr-2"></p>
<p id="info-overdue-batteries"
class="warning-message status-filter-message responsive-button mr-2"></div>
<div id="info-overdue-batteries"
data-status-filter="overdue"
class="error-message status-filter-message responsive-button"></p>
class="error-message status-filter-message responsive-button"></div>
</div>
</div>
</div>
<div class="row mt-3">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>
@@ -45,9 +46,9 @@
</div>
</div>
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-filter"></i></span>
<span class="input-group-text"><i class="fas fa-filter"></i>&nbsp;{{ $__t('Status') }}</span>
</div>
<select class="form-control"
id="status-filter">

View File

@@ -8,9 +8,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<h4 class="mt-2">{{ $__t('Batteries overview') }}</h4>

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">

View File

@@ -8,7 +8,9 @@
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-4 pb-3">
<h2 class="title">@yield('title')</h2>
<hr>
<hr class="my-2 py-1">
<form id="batterytracking-form"
novalidate>

View File

@@ -30,7 +30,8 @@
</div>
</div>
</div>
<hr>
<hr class="my-2 py-1">
<script>
var fullcalendarEventSources = {!! json_encode(array($fullcalendarEventSources)) !!}

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<script>

View File

@@ -10,6 +10,10 @@
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
<div class="related-links">
<a class="btn btn-primary responsive-button"
href="{{ $U('/chore/new') }}">
{{ $__t('Add') }}
</a>
<a class="btn btn-outline-secondary"
href="{{ $U('/userfields?entity=chores') }}">
{{ $__t('Configure userfields') }}
@@ -18,18 +22,12 @@
</div>
</div>
</div>
<hr>
<div class="row mt-3">
<div class="col-xs-12 col-md-2 col-xl-1">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3"
href="{{ $U('/chore/new') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>

View File

@@ -11,10 +11,11 @@
</div>
</div>
<hr>
<div class="row my-3">
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>
@@ -25,9 +26,9 @@
</div>
</div>
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-filter"></i></span>
<span class="input-group-text"><i class="fas fa-filter"></i>&nbsp;{{ $__t('Chore') }}</span>
</div>
<select class="form-control"
id="chore-filter">
@@ -40,7 +41,7 @@
</div>
</div>
<div class="row">
<div class="row mt-2">
<div class="col">
<table id="chores-journal-table"
class="table table-sm table-striped dt-responsive">

View File

@@ -21,25 +21,26 @@
</a>
</div>
</div>
<hr>
<p id="info-due-chores"
<div class="border-top border-bottom my-2 py-1">
<div id="info-due-chores"
data-status-filter="duesoon"
data-next-x-days="{{ $nextXDays }}"
class="warning-message status-filter-message responsive-message mr-2"></p>
<p id="info-overdue-chores"
class="warning-message status-filter-message responsive-message mr-2"></div>
<div id="info-overdue-chores"
data-status-filter="overdue"
class="error-message status-filter-message responsive-button mr-2"></p>
class="error-message status-filter-message responsive-button mr-2"></div>
@if(GROCY_FEATURE_FLAG_CHORES_ASSIGNMENTS)
<p id="info-assigned-to-me-chores"
<div id="info-assigned-to-me-chores"
data-user-filter="xx{{ GROCY_USER_ID }}xx"
class="normal-message user-filter-message responsive-button"></p>
class="normal-message user-filter-message responsive-button"></div>
@endif
</div>
</div>
</div>
<div class="row mt-3">
<div class="col-xs-12 col-md-6 col-xl-3 d-flex align-items-end">
<div class="input-group mb-3">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>
@@ -50,10 +51,9 @@
</div>
</div>
<div class="col-xs-12 col-md-6 col-xl-3">
<label for="status-filter">{{ $__t('Status') }}</label>
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-filter"></i></span>
<span class="input-group-text"><i class="fas fa-filter"></i>&nbsp;{{ $__t('Status') }}</span>
</div>
<select class="form-control"
id="status-filter">
@@ -65,10 +65,9 @@
</div>
@if(GROCY_FEATURE_FLAG_CHORES_ASSIGNMENTS)
<div class="col-xs-12 col-md-6 col-xl-3">
<label for="user-filter">{{ $__t('Assignment') }}</label>
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-filter"></i></span>
<span class="input-group-text"><i class="fas fa-filter"></i>&nbsp;{{ $__t('Assignment') }}</span>
</div>
<select class="form-control"
id="user-filter">

View File

@@ -8,9 +8,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<h4 class="mt-2">{{ $__t('Chores overview') }}</h4>

View File

@@ -8,7 +8,9 @@
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-4 pb-3">
<h2 class="title">@yield('title')</h2>
<hr>
<hr class="my-2 py-1">
<form id="choretracking-form"
novalidate>

View File

@@ -32,7 +32,8 @@
@endif
</div>
</div>
<hr>
<hr class="my-2 py-1">
<form id="consume-form"
novalidate>

View File

@@ -7,20 +7,20 @@
@section('content')
<div class="row">
<div class="col-xs-12 col-md-4 pb-3">
<div class="title-related-links border-bottom mb-2 py-1">
<h2 class="title">@yield('title')</h2>
<hr>
<div class="row">
<div class="col-xs-12 col-md-4 col-xl-3">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3"
<div class="related-links">
<a class="btn btn-primary responsive-button"
href="{{ $U('/equipment/new') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
<div class="input-group mb-3">
<div class="row">
<div class="col">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>
@@ -29,6 +29,8 @@
class="form-control"
placeholder="{{ $__t('Search') }}">
</div>
</div>
</div>
<table id="equipment-table"
class="table table-striped dt-responsive">

View File

@@ -12,11 +12,12 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<div class="row">
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<script>
Grocy.EditMode = '{{ $mode }}';

View File

@@ -8,7 +8,9 @@
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-4 pb-3">
<h2 class="title">@yield('title')</h2>
<hr>
<hr class="my-2 py-1">
<form id="inventory-form"
novalidate>

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<script>

View File

@@ -10,6 +10,10 @@
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
<div class="related-links">
<a class="btn btn-primary responsive-button"
href="{{ $U('/location/new') }}">
{{ $__t('Add') }}
</a>
<a class="btn btn-outline-secondary"
href="{{ $U('/userfields?entity=locations') }}">
{{ $__t('Configure userfields') }}
@@ -18,18 +22,12 @@
</div>
</div>
</div>
<hr>
<div class="row mt-3">
<div class="col-xs-12 col-md-2 col-xl-1">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3"
href="{{ $U('/location/new') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>

View File

@@ -7,7 +7,9 @@
<div class="row">
<div class="col-lg-6 offset-lg-3 col-xs-12">
<h2 class="text-center">@yield('title')</h2>
<hr>
<hr class="my-2 py-1">
<form method="post"
action="{{ $U('/login') }}"
id="login-form"

View File

@@ -16,21 +16,23 @@
@section('content')
<div class="row">
<div class="col">
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
</div>
</div>
<hr>
<div class="row mt-3">
<div class="col-xs-12 col-md-2 col-xl-1">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3"
<div class="related-links">
<a class="btn btn-primary responsive-button"
href="{{ $U('/manageapikeys/new') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>

View File

@@ -31,7 +31,8 @@
<h2 class="title">@yield('title')</h2>
</div>
</div>
<hr>
<hr class="my-2 py-1">
<div class="row">
<div class="col">

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
@@ -38,7 +40,7 @@
value="{{ $product->id }}">
<div class="form-group">
<label for="name">{{ $__t('Barcode') }}<i class="fas fa-barcode"></i></label>
<label for="name">{{ $__t('Barcode') }}&nbsp;<i class="fas fa-barcode"></i></label>
<div class="input-group">
<input type="text"
class="form-control barcodescanner-input"

View File

@@ -25,9 +25,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<script>

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<script>

View File

@@ -10,6 +10,10 @@
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
<div class="related-links">
<a class="btn btn-primary responsive-button show-as-dialog-link"
href="{{ $U('/productgroup/new?embedded') }}">
{{ $__t('Add') }}
</a>
<a class="btn btn-outline-secondary"
href="{{ $U('/userfields?entity=product_groups') }}">
{{ $__t('Configure userfields') }}
@@ -18,15 +22,9 @@
</div>
</div>
</div>
<hr>
<div class="row mt-3">
<div class="col-xs-12 col-md-2 col-xl-1">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3 show-as-dialog-link"
href="{{ $U('/productgroup/new?embedded') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">

View File

@@ -10,31 +10,28 @@
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
<div class="related-links">
<a class="btn btn-outline-secondary mb-1"
<a class="btn btn-primary responsive-button"
href="{{ $U('/product/new') }}">
{{ $__t('Add') }}
</a>
<a class="btn btn-outline-secondary"
href="{{ $U('/userfields?entity=products') }}">
{{ $__t('Configure userfields') }}
</a>
<a class="btn btn-outline-secondary mb-1"
<a class="btn btn-outline-secondary"
href="{{ $U('/stocksettings#productpresets') }}">
{{ $__t('Presets for new products') }}
</a>
</div>
</div>
<hr>
</div>
</div>
<div class="row mt-3">
<div class="col-xs-12 col-md-2 col-xl-1">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3"
href="{{ $U('/product/new') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>
@@ -45,9 +42,9 @@
</div>
</div>
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-filter"></i></span>
<span class="input-group-text"><i class="fas fa-filter"></i>&nbsp;{{ $__t('Product group') }}</span>
</div>
<select class="form-control"
id="product-group-filter">

View File

@@ -10,7 +10,7 @@
@section('content')
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-4 pb-3">
<div class="col-xs-12 col-md-6 col-xl-4">
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
<div class="related-links">
@@ -32,7 +32,8 @@
@endif
</div>
</div>
<hr>
<hr class="my-2 py-1">
<form id="purchase-form"
novalidate>

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<script>

View File

@@ -13,9 +13,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<form id="quantityunitpluraltesting-form"

View File

@@ -10,6 +10,10 @@
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
<div class="related-links">
<a class="btn btn-primary responsive-button"
href="{{ $U('/quantityunit/new') }}">
{{ $__t('Add') }}
</a>
<a class="btn btn-outline-secondary"
href="{{ $U('/userfields?entity=quantity_units') }}">
{{ $__t('Configure userfields') }}
@@ -18,18 +22,12 @@
</div>
</div>
</div>
<hr>
<div class="row mt-3">
<div class="col-xs-12 col-md-2 col-xl-1">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3"
href="{{ $U('/quantityunit/new') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>

View File

@@ -22,7 +22,7 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
<script>
Grocy.EditMode = '{{ $mode }}';
Grocy.QuantityUnits = {!! json_encode($quantityunits) !!};
@@ -43,6 +43,8 @@
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-7 pb-3">
<form id="recipe-form"

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-5 pb-3">
<h3 class="text-muted">{{ $__t('Recipe') }} <strong>{{ $recipe->name }}</strong></h3>

View File

@@ -11,24 +11,20 @@
</script>
<div class="row">
<div class="col-xs-12 col-md-6 pb-3 d-print-none">
<div>
<div class="col-xs-12 col-md-6 d-print-none">
<div class="title-related-links border-bottom mb-2 py-1">
<h2 class="title">@yield('title')</h2>
</div>
<hr>
<div class="row">
<div class="col-xs-12 col-md-4 col-xl-2">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3"
<div class="related-links">
<a class="btn btn-primary responsive-button"
href="{{ $U('/recipe/new') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-6">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>
@@ -40,9 +36,9 @@
</div>
<div class="col-xs-12 col-md-6 col-xl-6">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-filter"></i></span>
<span class="input-group-text"><i class="fas fa-filter"></i>&nbsp;{{ $__t('Status') }}</span>
</div>
<select class="form-control"
id="status-filter">
@@ -55,7 +51,7 @@
</div>
</div>
<ul class="nav nav-tabs mt-3 mb-1 grocy-tabs">
<ul class="nav nav-tabs grocy-tabs">
<li class="nav-item">
<a class="nav-link active"
id="list-tab"

View File

@@ -8,9 +8,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<h4 class="mt-2">{{ $__t('Recipe card') }}</h4>

View File

@@ -58,12 +58,11 @@
href="#">
{{ $__t('Print') }}
</a>
<!--<div class="dropdown d-inline-block">
<button class="btn btn-outline-dark responsive-button dropdown-toggle" data-toggle="dropdown"><i class="fas fa-file-export"></i> {{ $__t('Output') }}</button>
<div class="dropdown-menu">
<a id="print-shopping-list-button" class="dropdown-item" href="#"><i class="fas fa-print"></i> {{ $__t('Print') }}</a>
</div>
</div>-->
<a id="shopping-list-compact-view-button"
class="btn btn-outline-dark btn-sm responsive-button switch-view-mode-button"
href="#">
{{ $__t('Compact view') }}
</a>
</div>
</div>
@else
@@ -73,14 +72,10 @@
value="1">
@endif
</div>
<hr>
<p data-status-filter="belowminstockamount"
class="normal-message status-filter-message responsive-button @if(!GROCY_FEATURE_FLAG_STOCK) d-none @endif">{{ $__n(count($missingProducts), '%s product is below defined min. stock amount', '%s products are below defined min. stock amount') }}</p>
</div>
</div>
<div class="row mt-3 d-print-none hide-on-fullscreen-card">
<div class="col-md-12 mb-2">
<div class="border-top border-bottom my-2 py-1">
<div data-status-filter="belowminstockamount"
class="normal-message status-filter-message responsive-button @if(!GROCY_FEATURE_FLAG_STOCK) d-none @endif">{{ $__n(count($missingProducts), '%s product is below defined min. stock amount', '%s products are below defined min. stock amount') }}</div>
<div class="float-right">
<a class="btn btn-primary responsive-button btn-sm mb-1 show-as-dialog-link"
href="{{ $U('/shoppinglistitem/new?embedded&list=' . $selectedShoppingListId) }}">
{{ $__t('Add item') }}
@@ -106,8 +101,13 @@
{{ $__t('Add expired products') }}
</a>
</div>
</div>
</div>
</div>
<div class="row d-print-none hide-on-fullscreen-card">
<div class="col-xs-12 col-md-5">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>
@@ -118,9 +118,9 @@
</div>
</div>
<div class="col-xs-12 col-md-4 col-lg-5">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-filter"></i></span>
<span class="input-group-text"><i class="fas fa-filter"></i>&nbsp;{{ $__t('Status') }}</span>
</div>
<select class="form-control"
id="status-filter">
@@ -131,13 +131,6 @@
</select>
</div>
</div>
<div class="col-xs-12 col-md-3 col-lg-2 mb-3">
<a id="shopping-list-compact-view-button"
class="btn btn-outline-dark responsive-button switch-view-mode-button w-100"
href="#">
{{ $__t('Compact view') }}
</a>
</div>
</div>
<div id="shoppinglist-main"

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<script>

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-4 pb-3">
<script>

View File

@@ -8,9 +8,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<h4 class="mt-2">{{ $__t('Shopping list') }}</h4>

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<script>

View File

@@ -10,6 +10,10 @@
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
<div class="related-links">
<a class="btn btn-primary responsive-button"
href="{{ $U('/shoppinglocation/new') }}">
{{ $__t('Add') }}
</a>
<a class="btn btn-outline-secondary"
href="{{ $U('/userfields?entity=shoppinglocations') }}">
{{ $__t('Configure userfields') }}
@@ -18,19 +22,12 @@
</div>
</div>
</div>
<hr>
<div class="row mt-3">
<div class="col-xs-12 col-md-2 col-xl-1">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3"
href="{{ $U('/shoppinglocation/new') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>

View File

@@ -17,14 +17,19 @@
<div class="col">
<h2 class="title">@yield('title')</h2>
</div>
<div class="col">
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
@include('components.productpicker', array(
'products' => $products,
'disallowAllProductWorkflows' => true
))
</div>
</div>
<hr>
<div class="row">
<div class="col">
<table id="stockentries-table"

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-4 pb-3">

View File

@@ -14,10 +14,12 @@
</a>
</div>
</div>
<hr>
<div class="row my-3">
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>
@@ -28,9 +30,9 @@
</div>
</div>
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-filter"></i></span>
<span class="input-group-text"><i class="fas fa-filter"></i>&nbsp;{{ $__t('Product') }}</span>
</div>
<select class="form-control"
id="product-filter">
@@ -43,7 +45,7 @@
</div>
</div>
<div class="row">
<div class="row mt-2">
<div class="col">
<table id="stock-journal-table"
class="table table-sm table-striped dt-responsive">

View File

@@ -10,7 +10,9 @@
<h2 class="title">@yield('title')</h2>
</div>
</div>
<hr>
<hr class="my-2 py-1">
<div class="row">
<div class="col">
<table id="journal-summary-table"

View File

@@ -17,7 +17,11 @@
<div class="row">
<div class="col">
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
<h2 class="title">
@yield('title')
<span id="info-current-stock"
class="text-muted small"></span>
</h2>
<div class="related-links">
<a class="btn btn-outline-dark responsive-button"
href="{{ $U('/stockjournal') }}">
@@ -35,31 +39,32 @@
@endif
</div>
</div>
<div id="info-current-stock"
class="text-muted"></div>
<hr>
<div class="border-top border-bottom my-2 py-1">
@if (GROCY_FEATURE_FLAG_STOCK_BEST_BEFORE_DATE_TRACKING)
<p id="info-expiring-products"
<div id="info-expiring-products"
data-next-x-days="{{ $nextXDays }}"
data-status-filter="expiring"
class="warning-message status-filter-message responsive-button mr-2"></p>
<p id="info-expired-products"
class="warning-message status-filter-message responsive-button mr-2"></div>
<div id="info-expired-products"
data-status-filter="expired"
class="error-message status-filter-message responsive-button mr-2"></p>
class="error-message status-filter-message responsive-button mr-2"></div>
@endif
<p id="info-missing-products"
<div id="info-missing-products"
data-status-filter="belowminstockamount"
class="normal-message status-filter-message responsive-button"></p>
class="normal-message status-filter-message responsive-button"></div>
<div class="float-right">
<a id="clear-filter-button"
class="btn btn-sm btn-outline-info float-right"
class="btn btn-sm btn-outline-info"
href="#">
{{ $__t('Clear filter') }}
</a>
</div>
</div>
</div>
</div>
<div class="row mt-3">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>
@@ -71,7 +76,7 @@
</div>
@if(GROCY_FEATURE_FLAG_STOCK_LOCATION_TRACKING)
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-filter"></i>&nbsp;{{ $__t('Location') }}</span>
</div>
@@ -86,7 +91,7 @@
</div>
@endif
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-filter"></i>&nbsp;{{ $__t('Product group') }}</span>
</div>
@@ -100,7 +105,7 @@
</div>
</div>
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-filter"></i>&nbsp;{{ $__t('Status') }}</span>
</div>

View File

@@ -8,9 +8,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<div id="productpresets">

View File

@@ -10,6 +10,10 @@
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
<div class="related-links">
<a class="btn btn-primary responsive-button"
href="{{ $U('/taskcategory/new') }}">
{{ $__t('Add') }}
</a>
<a class="btn btn-outline-secondary"
href="{{ $U('/userfields?entity=task_categories') }}">
{{ $__t('Configure userfields') }}
@@ -18,18 +22,12 @@
</div>
</div>
</div>
<hr>
<div class="row mt-3">
<div class="col-xs-12 col-md-2 col-xl-1">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3"
href="{{ $U('/taskcategory/new') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<script>

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<script>

View File

@@ -19,29 +19,30 @@
@section('content')
<div class="row">
<div class="col">
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
<hr>
<p id="info-due-tasks"
data-status-filter="duesoon"
data-next-x-days="{{ $nextXDays }}"
class="warning-message status-filter-message responsive-button mr-2"></p>
<p id="info-overdue-tasks"
data-status-filter="overdue"
class="error-message status-filter-message responsive-button"></p>
</div>
</div>
<div class="row mt-3">
<div class="col-xs-12 col-md-2 col-xl-1">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3"
<div class="related-links">
<a class="btn btn-primary responsive-button"
href="{{ $U('/task/new') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
<div class="border-top border-bottom my-2 py-1">
<div id="info-due-tasks"
data-status-filter="duesoon"
data-next-x-days="{{ $nextXDays }}"
class="warning-message status-filter-message responsive-button mr-2"></div>
<div id="info-overdue-tasks"
data-status-filter="overdue"
class="error-message status-filter-message responsive-button"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>
@@ -52,9 +53,9 @@
</div>
</div>
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-filter"></i></span>
<span class="input-group-text"><i class="fas fa-filter"></i>&nbsp;{{ $__t('Status') }}</span>
</div>
<select class="form-control"
id="status-filter">
@@ -65,7 +66,7 @@
</div>
</div>
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="form-check custom-control form-control-lg custom-checkbox pt-0">
<div class="form-check custom-control custom-checkbox">
<input class="form-check-input custom-control-input"
type="checkbox"
id="show-done-tasks">

View File

@@ -8,9 +8,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">

View File

@@ -8,7 +8,8 @@
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-4 pb-3">
<h2 class="title">@yield('title')</h2>
<hr>
<hr class="my-2 py-1">
<form id="transfer-form"
novalidate>

View File

@@ -7,21 +7,23 @@
@section('content')
<div class="row">
<div class="col">
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
</div>
</div>
<hr>
<div class="row mt-3">
<div class="col-xs-12 col-md-2 col-xl-1">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3"
<div class="related-links">
<a class="btn btn-primary responsive-button"
href="{{ $U('/userentity/new') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<script>

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<script>

View File

@@ -7,22 +7,23 @@
@section('content')
<div class="row">
<div class="col">
<h2h2 class="title">@yield('title')</h2h2>
</div>
</div>
<hr>
<div class="row mt-3">
<div class="col-xs-12 col-md-2 col-xl-1">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3"
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
<div class="related-links">
<a class="btn btn-primary responsive-button"
href="{{ $U('/userfield/new') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>
@@ -33,9 +34,9 @@
</div>
</div>
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-filter"></i></span>
<span class="input-group-text"><i class="fas fa-filter"></i>&nbsp;{{ $__t('Entity') }}</span>
</div>
<select class="form-control"
id="entity-filter">

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<script>

View File

@@ -12,9 +12,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">
<script>

View File

@@ -8,29 +8,29 @@
<div class="row">
<div class="col">
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
<h2 class="title">
@yield('title')
<span class="text-muted small">{{ $userentity->description }}</span>
</h2>
<div class="related-links">
<a class="btn btn-primary responsive-button"
href="{{ $U('/userobject/' . $userentity->name . '/new') }}">
{{ $__t('Add') }}
</a>
<a class="btn btn-outline-secondary d-print-none"
href="{{ $U('/userfields?entity=' . 'userentity-' . $userentity->name) }}">
{{ $__t('Configure fields') }}
</a>
</div>
</div>
<h5 class="text-muted">{{ $userentity->description }}</h5>
</div>
</div>
<hr>
<div class="row mt-3">
<div class="col-xs-12 col-md-2 col-xl-1">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3"
href="{{ $U('/userobject/' . $userentity->name . '/new') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>

View File

@@ -16,8 +16,10 @@
<h2 class="title">@yield('title')</h2>
</div>
</div>
<hr>
<div class="row mt-3">
<hr class="my-2 py-1">
<div class="row">
<div class="col">
<ul>
@foreach($permissions as $perm)

View File

@@ -7,21 +7,23 @@
@section('content')
<div class="row">
<div class="col">
<div class="title-related-links">
<h2 class="title">@yield('title')</h2>
</div>
</div>
<hr>
<div class="row mt-3">
<div class="col-xs-12 col-md-2 col-xl-1">
<a class="btn btn-primary btn-sm responsive-button w-100 mb-3"
<div class="related-links">
<a class="btn btn-primary responsive-button"
href="{{ $U('/user/new') }}">
{{ $__t('Add') }}
</a>
</div>
</div>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-xs-12 col-md-6 col-xl-3">
<div class="input-group mb-3">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-search"></i></span>
</div>

View File

@@ -8,9 +8,11 @@
<div class="row">
<div class="col">
<h2 class="title">@yield('title')</h2>
<hr>
</div>
</div>
<hr class="my-2 py-1">
<div class="row">
<div class="col-lg-6 col-xs-12">