diff --git a/public/css/custom.css b/public/css/custom.css index 16b7d8802..feb6d3538 100644 --- a/public/css/custom.css +++ b/public/css/custom.css @@ -745,6 +745,12 @@ /*--------Height 0 Finish--------*/ +table .align-items-center td span.badge { + height: 24px; + padding-top: 8px; + font-size: 9px; +} + /*----------------RESPONSIVE START LINE----------------*/ /*--------Xs Breakpoint--------*/ @media (min-width: 304px) and (max-width: 575.98px) @@ -952,8 +958,3 @@ /*--------XL Breakpoint Finish--------*/ /*----------------RESPONSIVE END LINE----------------*/ -table .align-items-center td span.badge { - height: 24px; - padding-top: 8px; - font-size: 9px; -} diff --git a/public/img/empty_pages/bills.png b/public/img/empty_pages/bills.png new file mode 100644 index 000000000..c005a131c Binary files /dev/null and b/public/img/empty_pages/bills.png differ diff --git a/public/img/empty_pages/customers.png b/public/img/empty_pages/customers.png new file mode 100644 index 000000000..ff5185ecf Binary files /dev/null and b/public/img/empty_pages/customers.png differ diff --git a/public/img/empty_pages/invoices.png b/public/img/empty_pages/invoices.png new file mode 100644 index 000000000..39a80385f Binary files /dev/null and b/public/img/empty_pages/invoices.png differ diff --git a/public/img/empty_pages/items.png b/public/img/empty_pages/items.png new file mode 100644 index 000000000..5ea10e13b Binary files /dev/null and b/public/img/empty_pages/items.png differ diff --git a/public/img/empty_pages/payments.png b/public/img/empty_pages/payments.png new file mode 100644 index 000000000..c25269854 Binary files /dev/null and b/public/img/empty_pages/payments.png differ diff --git a/public/img/empty_pages/revenues.png b/public/img/empty_pages/revenues.png new file mode 100644 index 000000000..a755a74fa Binary files /dev/null and b/public/img/empty_pages/revenues.png differ diff --git a/public/img/empty_pages/vendors.png b/public/img/empty_pages/vendors.png new file mode 100644 index 000000000..122488e8c Binary files /dev/null and b/public/img/empty_pages/vendors.png differ diff --git a/resources/lang/en-GB/general.php b/resources/lang/en-GB/general.php index b78c47177..12dd9d599 100644 --- a/resources/lang/en-GB/general.php +++ b/resources/lang/en-GB/general.php @@ -165,4 +165,16 @@ return [ 'this_month' => 'This Month', 'last_month' => 'Last Month', ], + + 'empty' => [ + 'documentation' => 'Check out the documentation for more details.', + 'items' => 'Items can be products or services. You can use items when creating invoices and bills to have the price, tax etc fields populated.', + 'invoices' => 'Invoices can be one time or recurring. You can send them to customers and start accepting online payments.', + 'revenues' => 'Revenue is a paid income transaction. It can be an independent record (i.e. deposit) or attached to an invoice.', + 'customers' => 'Customers are required if you want to create invoices. They may also log in to Client Portal and see their balance.', + 'bills' => 'Bills can be one time or recurring. They indicate what you owe your vendors for the products or services you purchase.', + 'payments' => 'Payment is a paid expense transaction. It can be an independent record (i.e. food receipt) or attached to a bill.', + 'vendors' => 'Vendors are required if you want to create bills. You can see the balance you owe and filter reports by the vendor.', + ], + ]; diff --git a/resources/views/common/items/index.blade.php b/resources/views/common/items/index.blade.php index 35dd12caf..c89f8ae1a 100644 --- a/resources/views/common/items/index.blade.php +++ b/resources/views/common/items/index.blade.php @@ -11,99 +11,103 @@ @endsection @section('content') -
-
- {!! Form::open([ - 'route' => 'items.index', - 'role' => 'form', - 'method' => 'GET', - 'class' => 'mb-0' - ]) !!} -
- -
- - - - - - - - - - - - - - - @foreach($items as $item) - - - - - - - - +
+
@sortablelink('name', trans('general.name'), ['filter' => 'active, visible'], ['class' => 'col-aka', 'rel' => 'nofollow'])@sortablelink('sale_price', trans('items.sales_price'))@sortablelink('enabled', trans('general.enabled')){{ trans('general.actions') }}
- {{ $item->name }} - {{ $item->name }} - - {{ money($item->sale_price, setting('default.currency'), true) }} - - @if (user()->can('update-common-items')) - {{ Form::enabledGroup($item->id, $item->name, $item->enabled) }} - @else - @if ($item->enabled) - {{ trans('general.enabled') }} - @else - {{ trans('general.disabled') }} - @endif - @endif - - -
+ + + + + + + + + - @endforeach - -
@sortablelink('name', trans('general.name'), ['filter' => 'active, visible'], ['class' => 'col-aka', 'rel' => 'nofollow'])@sortablelink('sale_price', trans('items.sales_price'))@sortablelink('enabled', trans('general.enabled')){{ trans('general.actions') }}
-
+ - -
+ @else + @include('partials.admin.empty_page', ['page' => 'items', 'docs_path' => 'items']) + @endif @endsection @push('scripts_start') diff --git a/resources/views/expenses/bills/index.blade.php b/resources/views/expenses/bills/index.blade.php index fe6f462ad..f1372f246 100644 --- a/resources/views/expenses/bills/index.blade.php +++ b/resources/views/expenses/bills/index.blade.php @@ -11,88 +11,92 @@ @endsection @section('content') -
-
- {!! Form::open([ - 'url' => 'expenses/bills', - 'role' => 'form', - 'method' => 'GET', - 'class' => 'mb-0' - ]) !!} -
- -
- - - - - - - - - - - - - - - - @foreach($bills as $item) - @php $paid = $item->paid; @endphp - - - - - - - - - +
+
@sortablelink('contact_name', trans_choice('general.vendors', 1))@sortablelink('amount', trans('general.amount'))@sortablelink('bill_status_code', trans_choice('general.statuses', 1)){{ trans('general.actions') }}
{{ $item->contact_name }}@money($item->amount, $item->currency_code, true) - {{ trans('bills.status.' . $item->status->code) }} - - -
+ + + + + + + + + + - @endforeach - -
@sortablelink('contact_name', trans_choice('general.vendors', 1))@sortablelink('amount', trans('general.amount'))@sortablelink('bill_status_code', trans_choice('general.statuses', 1)){{ trans('general.actions') }}
-
+ - -
+ @else + @include('partials.admin.empty_page', ['page' => 'bills', 'docs_path' => 'expenses/bills']) + @endif @endsection @push('scripts_start') diff --git a/resources/views/expenses/payments/index.blade.php b/resources/views/expenses/payments/index.blade.php index 3ba457da7..190d32e4a 100644 --- a/resources/views/expenses/payments/index.blade.php +++ b/resources/views/expenses/payments/index.blade.php @@ -11,95 +11,99 @@ @endsection @section('content') -
-
- {!! Form::open([ - 'url' => 'expenses/payments', - 'role' => 'form', - 'method' => 'GET', - 'class' => 'mb-0' - ]) !!} -
- -
- - - - - - - - - - - - - - - @foreach($payments as $item) - @php $is_transfer = ($item->category && ($item->category->id == $transfer_cat_id)); @endphp - - - @if ($item->reconciled) - - @else - - @endif - - - - - +
+
@sortablelink('paid_at', trans('general.date'), ['filter' => 'active, visible'], ['class' => 'col-aka', 'rel' => 'nofollow'])@sortablelink('amount', trans('general.amount'))@sortablelink('contact.name', trans_choice('general.vendors', 1)){{ trans('general.actions') }}
@date($item->paid_at)@date($item->paid_at)@money($item->amount, $item->currency_code, true){{ !empty($item->contact->name) ? $item->contact->name : trans('general.na') }} - @if (!$is_transfer) - - @else - - @endif -
+ + + + + + + + + - @endforeach - -
@sortablelink('paid_at', trans('general.date'), ['filter' => 'active, visible'], ['class' => 'col-aka', 'rel' => 'nofollow'])@sortablelink('amount', trans('general.amount'))@sortablelink('contact.name', trans_choice('general.vendors', 1)){{ trans('general.actions') }}
-
+ - -
+ @else + @include('partials.admin.empty_page', ['page' => 'payments', 'docs_path' => 'expenses/payments']) + @endif @endsection @push('scripts_start') diff --git a/resources/views/expenses/vendors/index.blade.php b/resources/views/expenses/vendors/index.blade.php index 9f5ed2ec8..ab725c87d 100644 --- a/resources/views/expenses/vendors/index.blade.php +++ b/resources/views/expenses/vendors/index.blade.php @@ -11,99 +11,103 @@ @endsection @section('content') -
-
- {!! Form::open([ - 'url' => 'expenses/vendors', - 'role' => 'form', - 'method' => 'GET', - 'class' => 'mb-0' - ]) !!} -
- -
- - - - - - - - - - - - - - - @foreach($vendors as $item) - - - - - - - - +
+
@sortablelink('name', trans('general.name'), ['filter' => 'active, visible'], ['class' => 'col-aka', 'rel' => 'nofollow'])@sortablelink('email', trans('general.email'))@sortablelink('enabled', trans('general.enabled')){{ trans('general.actions') }}
- {{ $item->name }} - - {{ !empty($item->email) ? $item->email : trans('general.na') }} - - @if (user()->can('update-expenses-vendors')) - {{ Form::enabledGroup($item->id, $item->name, $item->enabled) }} - @else - @if ($item->enabled) - {{ trans('general.enabled') }} - @else - {{ trans('general.disabled') }} - @endif - @endif - - -
+ + + + + + + + + - @endforeach - -
@sortablelink('name', trans('general.name'), ['filter' => 'active, visible'], ['class' => 'col-aka', 'rel' => 'nofollow'])@sortablelink('email', trans('general.email'))@sortablelink('enabled', trans('general.enabled')){{ trans('general.actions') }}
-
+ - -
+ @else + @include('partials.admin.empty_page', ['page' => 'vendors', 'docs_path' => 'expenses/vendors']) + @endif @endsection @push('scripts_start') diff --git a/resources/views/incomes/customers/index.blade.php b/resources/views/incomes/customers/index.blade.php index 662977937..9358ec2f6 100644 --- a/resources/views/incomes/customers/index.blade.php +++ b/resources/views/incomes/customers/index.blade.php @@ -11,101 +11,105 @@ @endsection @section('content') -
-
- {!! Form::open([ - 'url' => 'incomes/customers', - 'role' => 'form', - 'method' => 'GET', - 'class' => 'mb-0' - ]) !!} -
- -
- - - - - - - - - - - - - - - @foreach($customers as $item) - - - - - - - - +
+
@sortablelink('name', trans('general.name'), ['filter' => 'active, visible'], ['class' => 'col-aka', 'rel' => 'nofollow'])@sortablelink('email', trans('general.email'))@sortablelink('enabled', trans('general.enabled')){{ trans('general.actions') }}
- {{ $item->name }} - - {{ !empty($item->email) ? $item->email : trans('general.na') }} - - @if (user()->can('update-incomes-customers')) - {{ Form::enabledGroup($item->id, $item->name, $item->enabled) }} - @else - @if ($item->enabled) - {{ trans('general.enabled') }} - @else - {{ trans('general.disabled') }} - @endif - @endif - - -
+ + + + + + + + + - @endforeach - -
@sortablelink('name', trans('general.name'), ['filter' => 'active, visible'], ['class' => 'col-aka', 'rel' => 'nofollow'])@sortablelink('email', trans('general.email'))@sortablelink('enabled', trans('general.enabled')){{ trans('general.actions') }}
-
+ - -
+ @else + @include('partials.admin.empty_page', ['page' => 'customers', 'docs_path' => 'incomes/customers']) + @endif @endsection @push('scripts_start') diff --git a/resources/views/incomes/invoices/index.blade.php b/resources/views/incomes/invoices/index.blade.php index fd5493f16..99e9f4c07 100644 --- a/resources/views/incomes/invoices/index.blade.php +++ b/resources/views/incomes/invoices/index.blade.php @@ -11,90 +11,94 @@ @endsection @section('content') -
-
- {!! Form::open([ - 'url' => 'incomes/invoices', - 'role' => 'form', - 'method' => 'GET', - 'class' => 'mb-0' - ]) !!} -
- -
- - - - - - - - - - - - - - - - @foreach($invoices as $item) - @php $paid = $item->paid; @endphp - - - - - - - - - +
+
@sortablelink('invoice_number', trans_choice('general.numbers', 1), ['filter' => 'active, visible'], ['class' => 'col-aka', 'rel' => 'nofollow'])@sortablelink('contact_name', trans_choice('general.customers', 1))@sortablelink('amount', trans('general.amount')){{ trans('general.actions') }}
{{ $item->invoice_number }}{{ $item->contact_name }}@money($item->amount, $item->currency_code, true) - -
+ + + + + + + + + + - @endforeach - -
@sortablelink('invoice_number', trans_choice('general.numbers', 1), ['filter' => 'active, visible'], ['class' => 'col-aka', 'rel' => 'nofollow'])@sortablelink('contact_name', trans_choice('general.customers', 1))@sortablelink('amount', trans('general.amount')){{ trans('general.actions') }}
-
+ - -
+ @else + @include('partials.admin.empty_page', ['page' => 'invoices', 'docs_path' => 'incomes/invoices']) + @endif @endsection @push('scripts_start') diff --git a/resources/views/incomes/revenues/index.blade.php b/resources/views/incomes/revenues/index.blade.php index 1b36973bb..122e13bef 100644 --- a/resources/views/incomes/revenues/index.blade.php +++ b/resources/views/incomes/revenues/index.blade.php @@ -11,96 +11,102 @@ @endsection @section('content') -
-
- {!! Form::open([ - 'url' => 'incomes/revenues', - 'role' => 'form', - 'method' => 'GET', - 'class' => 'mb-0' - ]) !!} -
- -
- - - - - - - - - - - - - - - @foreach($revenues as $item) - @php $is_transfer = ($item->category && ($item->category->id == $transfer_cat_id)); @endphp - - - @if ($item->reconciled) - - @else - - @endif - - - - - +
+
@sortablelink('paid_at', trans('general.date'), ['filter' => 'active, visible'], ['class' => 'col-aka', 'rel' => 'nofollow'])@sortablelink('amount', trans('general.amount'))@sortablelink('contact.name', trans_choice('general.customers', 1)){{ trans('general.actions') }}
@date($item->paid_at)@date($item->paid_at)@money($item->amount, $item->currency_code, true){{ !empty($item->contact->name) ? $item->contact->name : trans('general.na') }} - @if (!$is_transfer) - - @else - - @endif -
+ + + + + + + + + - @endforeach - -
@sortablelink('paid_at', trans('general.date'), ['filter' => 'active, visible'], ['class' => 'col-aka', 'rel' => 'nofollow'])@sortablelink('amount', trans('general.amount'))@sortablelink('contact.name', trans_choice('general.customers', 1)){{ trans('general.actions') }}
-
+ - -
+ @else + @include('partials.admin.empty_page', ['page' => 'revenues', 'docs_path' => 'incomes/revenues']) + @endif + + @endsection @push('scripts_start') diff --git a/resources/views/partials/admin/empty_page.blade.php b/resources/views/partials/admin/empty_page.blade.php new file mode 100644 index 000000000..4ec54778a --- /dev/null +++ b/resources/views/partials/admin/empty_page.blade.php @@ -0,0 +1,19 @@ +
+
+
+ +
+ @yield('title') +
+ +
+

{!! trans('general.empty.' . $page) !!} {!! trans('general.empty.documentation', ['url' => 'https://akaunting.com/docs/user-manual/' . $docs_path]) !!}

+ + + {{ trans('general.title.create', ['type' => trans_choice('general.' . $page, 1)]) }} + +
+ +
+
+