print template

This commit is contained in:
batuhanbas
2019-12-25 19:09:04 +03:00
parent c6dbb977b9
commit 76367a31ec
16 changed files with 1133 additions and 285 deletions

View File

@@ -1,282 +0,0 @@
@extends('layouts.print')
@section('title', trans_choice('general.invoices', 1) . ': ' . $invoice->invoice_number)
@section('content')
<div class="mt-6">
<div class="row mx--4">
<div class="col-md-7 border-bottom-1">
<div class="table-responsive mt-2">
<table class="table table-borderless">
<tbody>
<tr>
<th>
<img src="{{ $logo }}" alt="{{ setting('company.name') }}"/>
</th>
</tr>
</tbody>
</table>
</div>
</div>
<div class="col-md-5 border-bottom-1">
<div class="table-responsive">
<table class="table table-borderless">
<tbody>
<tr>
<th>
{{ setting('company.name') }}
</th>
</tr>
<tr>
<th>
{!! nl2br(setting('company.address')) !!}
</th>
</tr>
<tr>
<th>
@if (setting('company.tax_number'))
{{ trans('general.tax_number') }}: {{ setting('company.tax_number') }}
@endif
</th>
</tr>
<tr>
<th>
@if (setting('company.phone'))
{{ setting('company.phone') }}
@endif
</th>
</tr>
<tr>
<th>
{{ setting('company.email') }}
</th>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="row">
<div class="col-md-7">
<div class="table-responsive">
<table class="table table-borderless">
<tbody>
<tr>
<th>
{{ trans('invoices.bill_to') }}
@stack('name_input_start')
<strong class="d-block">{{ $invoice->contact_name }}</strong>
@stack('name_input_end')
</th>
</tr>
<tr>
<th>
@stack('address_input_start')
{!! nl2br($invoice->contact_address) !!}
@stack('address_input_end')
</th>
</tr>
<tr>
<th>
@stack('tax_number_input_start')
@if ($invoice->contact_tax_number)
{{ trans('general.tax_number') }}: {{ $invoice->contact_tax_number }}<br>
@endif
@stack('tax_number_input_end')
</th>
</tr>
<tr>
<th>
@stack('phone_input_start')
@if ($invoice->contact_phone)
{{ $invoice->contact_phone }}
@endif
@stack('phone_input_end')
</th>
</tr>
<tr>
<th>
@stack('email_start')
{{ $invoice->contact_email }}
@stack('email_input_end')
</th>
</tr>
</tbody>
</table>
</div>
</div>
<div class="col-md-5">
<div class="table-responsive">
<table class="table table-borderless">
<tbody>
@stack('invoice_number_input_start')
<tr>
<th>{{ trans('invoices.invoice_number') }}:</th>
<td class="text-right">{{ $invoice->invoice_number }}</td>
</tr>
@stack('invoice_number_input_end')
@stack('order_number_input_start')
@if ($invoice->order_number)
<tr>
<th>{{ trans('invoices.order_number') }}:</th>
<td class="text-right">{{ $invoice->order_number }}</td>
</tr>
@endif
@stack('order_number_input_end')
@stack('invoiced_at_input_start')
<tr>
<th>{{ trans('invoices.invoice_date') }}:</th>
<td class="text-right">@date($invoice->invoiced_at)</td>
</tr>
@stack('invoiced_at_input_end')
@stack('due_at_input_start')
<tr>
<th>{{ trans('invoices.payment_due') }}:</th>
<td class="text-right">@date($invoice->due_at)</td>
</tr>
@stack('due_at_input_end')
</tbody>
</table>
</div>
</div>
</div>
<div class="row show-table">
<div class="col-md-12">
<div class="table-responsive">
<table class="table table-striped">
<tbody>
<tr class="row">
@stack('name_th_start')
<th class="col-xs-4 col-sm-3 pl-5">{{ trans_choice($text_override['items'], 2) }}</th>
@stack('name_th_end')
@stack('quantity_th_start')
<th class="col-xs-4 col-sm-3 text-center">{{ trans($text_override['quantity']) }}</th>
@stack('quantity_th_end')
@stack('price_th_start')
<th class="col-sm-3 text-center d-none d-sm-block pl-5">{{ trans($text_override['price']) }}</th>
@stack('price_th_end')
@stack('total_th_start')
<th class="col-xs-4 col-sm-3 text-right pr-5">{{ trans('invoices.total') }}</th>
@stack('total_th_end')
</tr>
@foreach($invoice->items as $item)
<tr class="row">
@stack('name_td_start')
<td class="col-xs-4 col-sm-3 pl-5">
{{ $item->name }}
@if ($item->desc)
<br><small>{!! $item->desc !!}</small>
@endif
</td>
@stack('name_td_end')
@stack('quantity_td_start')
<td class="col-xs-4 col-sm-3 text-center">{{ $item->quantity }}</td>
@stack('quantity_td_end')
@stack('price_td_start')
<td class="col-sm-3 text-center d-none d-sm-block pl-5">@money($item->price, $invoice->currency_code, true)</td>
@stack('price_td_end')
@stack('total_td_start')
<td class="col-xs-4 col-sm-3 text-right pr-5">@money($item->total, $invoice->currency_code, true)</td>
@stack('total_td_end')
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
<div class="row mt-5">
<div class="col-md-7">
<div class="table-responsive">
@stack('notes_input_start')
@if ($invoice->notes)
<table class="table table-borderless">
<tbody>
<tr>
<th>
<p class="form-control-label">{{ trans_choice('general.notes', 2) }}</p>
<p class="form-control text-muted">{{ $invoice->notes }}</p>
</th>
</tr>
</tbody>
</table>
@endif
@stack('notes_input_end')
</div>
</div>
<div class="col-md-5">
<div class="table-responsive">
<table class="table">
<tbody>
@foreach ($invoice->totals as $total)
@if ($total->code != 'total')
@stack($total->code . '_td_start')
<tr>
<th>
{{ trans($total->title) }}:
</th>
<td class="text-right">
@money($total->amount, $invoice->currency_code, true)
</td>
</tr>
@stack($total->code . '_td_end')
@else
@if ($invoice->paid)
<tr>
<th>
{{ trans('invoices.paid') }}:
</th>
<td class="text-right">
- @money($invoice->paid, $invoice->currency_code, true)
</td>
</tr>
@endif
@stack('grand_total_td_start')
<tr>
<th>
{{ trans($total->name) }}:
</th>
<td class="text-right">
@money($total->amount - $invoice->paid, $invoice->currency_code, true)
</td>
</tr>
@stack('grand_total_td_end')
@endif
@endforeach
</tbody>
</table>
</div>
</div>
</div>
@if ($invoice->footer)
<div class="row">
<div class="col-md-12">
<div class="table-responsive">
<table class="table table-borderless">
<tbody>
<tr>
<th>
{!! $invoice->footer !!}
</th>
</tr>
</tbody>
</table>
</div>
</div>
</div>
@endif
</div>
@endsection

View File

@@ -0,0 +1,265 @@
@extends('layouts.print')
@section('title', trans_choice('general.invoices', 1) . ': ' . $invoice->invoice_number)
@section('content')
<div class="row">
<div class="col-md-7">
<img class="mt-4" src="{{ $logo }}" alt="{{ setting('company.name') }}"/>
</div>
<div class="col-md-5 text-right">
<p class="mb-0 mt-4 font-weight-600">
{{ setting('company.name') }}
</p>
<p class="mb-0">
{!! nl2br(setting('company.address')) !!}
</p>
<p class="mb-0">
@if (setting('company.tax_number'))
{{ trans('general.tax_number') }}: {{ setting('company.tax_number') }}
@endif
</p>
<p class="mb-0 mt-3">
@if (setting('company.phone'))
{{ setting('company.phone') }}
@endif
</p>
<p class="mb-0">
{{ setting('company.email') }}
</p>
</div>
</div>
<div class="row my-4">
<div class="col-md-4">
<hr class="bg-default invoice-classic-line mb-1 mt-5">
<hr class="bg-default invoice-classic-line my-0">
</div>
<div class="col-md-4 text-center">
<div class="invoice-classic-frame">
<div class="invoice-classic-inline-frame">
@stack('invoice_number_input_start')
<p class="mt-4">
<b>{{ trans('invoices.invoice_number') }}:</b>
{{ $invoice->invoice_number }}
</p>
@stack('invoice_number_input_end')
</div>
</div>
</div>
<div class="col-md-4">
<hr class="bg-default invoice-classic-line mb-1 mt-5">
<hr class="bg-default invoice-classic-line my-0">
</div>
</div>
<div class="row mb-4">
<div class="col-md-7">
<h4>{{ trans('invoices.bill_to') }}</h4>
@stack('name_input_start')
<strong class="d-block">{{ $invoice->contact_name }}</strong>
@stack('name_input_end')
@stack('address_input_start')
<p class="mb-0">
{!! nl2br($invoice->contact_address) !!}
</p>
@stack('address_input_end')
@stack('tax_number_input_start')
<p class="mb-0">
@if ($invoice->contact_tax_number)
{{ trans('general.tax_number') }}: {{ $invoice->contact_tax_number }}<br>
@endif
</p>
@stack('tax_number_input_end')
@stack('phone_input_start')
<p class="mb-0 mt-3">
@if ($invoice->contact_phone)
{{ $invoice->contact_phone }}
@endif
</p>
@stack('phone_input_end')
@stack('email_start')
<p class="mb-0">
{{ $invoice->contact_email }}
</p>
@stack('email_input_end')
</div>
<div class="col-md-5 text-right">
@stack('order_number_input_start')
@if ($invoice->order_number)
<p>
<b>{{ trans('invoices.order_number') }}:</b>
{{ $invoice->order_number }}
</p>
@endif
@stack('order_number_input_end')
@stack('invoiced_at_input_start')
<p>
<b>{{ trans('invoices.invoice_date') }}:</b>
@date($invoice->invoiced_at)
</p>
@stack('invoiced_at_input_end')
@stack('due_at_input_start')
<p>
<b>{{ trans('invoices.payment_due') }}:</b>
@date($invoice->due_at)
</p>
@stack('due_at_input_end')
@foreach ($invoice->totals as $total)
@if ($total->code == 'total')
<p class="bg-light border-radius-5 float-right text-center w-50">
<b>{{ trans($total->name) }}:</b>
@money($total->amount - $invoice->paid, $invoice->currency_code, true)
</p>
@endif
@endforeach
</div>
</div>
<div class="row show-table">
<div class="col-md-12">
<div class="table-responsive">
<table class="table table-borderless">
<tbody>
<tr class="row border-dashed">
@stack('name_th_start')
<th class="col-xs-4 col-sm-3 pl-5">{{ trans_choice($text_override['items'], 2) }}</th>
@stack('name_th_end')
@stack('quantity_th_start')
<th class="col-xs-4 col-sm-3 text-center">{{ trans($text_override['quantity']) }}</th>
@stack('quantity_th_end')
@stack('price_th_start')
<th class="col-sm-3 text-center d-none d-sm-block pl-5">{{ trans($text_override['price']) }}</th>
@stack('price_th_end')
@stack('total_th_start')
<th class="col-xs-4 col-sm-3 text-right pr-5">{{ trans('invoices.total') }}</th>
@stack('total_th_end')
</tr>
@foreach($invoice->items as $item)
<tr class="row border-dashed">
@stack('name_td_start')
<td class="col-xs-4 col-sm-3 pl-5">
{{ $item->name }}
@if ($item->desc)
<br><small>{!! $item->desc !!}</small>
@endif
</td>
@stack('name_td_end')
@stack('quantity_td_start')
<td class="col-xs-4 col-sm-3 text-center">{{ $item->quantity }}</td>
@stack('quantity_td_end')
@stack('price_td_start')
<td class="col-sm-3 text-center d-none d-sm-block pl-5">@money($item->price, $invoice->currency_code, true)</td>
@stack('price_td_end')
@stack('total_td_start')
<td class="col-xs-4 col-sm-3 text-right pr-5">@money($item->total, $invoice->currency_code, true)</td>
@stack('total_td_end')
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
<div class="row mt-3">
<div class="col-md-7">
<div class="table-responsive">
@stack('notes_input_start')
@if ($invoice->notes)
<table class="table table-borderless">
<tbody>
<tr>
<th>
<p class="form-control-label">{{ trans_choice('general.notes', 2) }}</p>
<p class="form-control text-muted">{{ $invoice->notes }}</p>
</th>
</tr>
</tbody>
</table>
@endif
@stack('notes_input_end')
</div>
</div>
<div class="col-md-5">
<div class="table-responsive">
<table class="table table-borderless border-dashed">
<tbody>
@foreach ($invoice->totals as $total)
@if ($total->code != 'total')
@stack($total->code . '_td_start')
<tr class="border-dashed">
<th>
{{ trans($total->title) }}:
</th>
<td class="text-right">
@money($total->amount, $invoice->currency_code, true)
</td>
</tr>
@stack($total->code . '_td_end')
@else
@if ($invoice->paid)
<tr class="border-dashed">
<th>
{{ trans('invoices.paid') }}:
</th>
<td class="text-right">
- @money($invoice->paid, $invoice->currency_code, true)
</td>
</tr>
@endif
@stack('grand_total_td_start')
<tr class="border-dashed">
<th>
{{ trans($total->name) }}:
</th>
<td class="text-right">
@money($total->amount - $invoice->paid, $invoice->currency_code, true)
</td>
</tr>
@stack('grand_total_td_end')
@endif
@endforeach
</tbody>
</table>
</div>
</div>
</div>
@if ($invoice->footer)
<div class="row">
<div class="col-md-12">
<div class="table-responsive">
<table class="table table-borderless mb-0">
<tbody>
<tr>
<th>
{!! $invoice->footer !!}
</th>
</tr>
</tbody>
</table>
</div>
</div>
</div>
@endif
@endsection

View File

@@ -0,0 +1,280 @@
@extends('layouts.print')
@section('title', trans_choice('general.invoices', 1) . ': ' . $invoice->invoice_number)
@section('content')
<div class="row mx--4">
<div class="col-md-7 border-bottom-1">
<div class="table-responsive mt-4">
<table class="table table-borderless">
<tbody>
<tr>
<th>
<img src="{{ $logo }}" alt="{{ setting('company.name') }}"/>
</th>
</tr>
</tbody>
</table>
</div>
</div>
<div class="col-md-5 border-bottom-1">
<div class="table-responsive">
<table class="table table-borderless">
<tbody>
<tr>
<th>
{{ setting('company.name') }}
</th>
</tr>
<tr>
<th>
{!! nl2br(setting('company.address')) !!}
</th>
</tr>
<tr>
<th>
@if (setting('company.tax_number'))
{{ trans('general.tax_number') }}: {{ setting('company.tax_number') }}
@endif
</th>
</tr>
<tr>
<th>
@if (setting('company.phone'))
{{ setting('company.phone') }}
@endif
</th>
</tr>
<tr>
<th>
{{ setting('company.email') }}
</th>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="row">
<div class="col-md-7">
<div class="table-responsive">
<table class="table table-borderless">
<tbody>
<tr>
<th>
{{ trans('invoices.bill_to') }}
@stack('name_input_start')
<strong class="d-block">{{ $invoice->contact_name }}</strong>
@stack('name_input_end')
</th>
</tr>
<tr>
<th>
@stack('address_input_start')
{!! nl2br($invoice->contact_address) !!}
@stack('address_input_end')
</th>
</tr>
<tr>
<th>
@stack('tax_number_input_start')
@if ($invoice->contact_tax_number)
{{ trans('general.tax_number') }}: {{ $invoice->contact_tax_number }}<br>
@endif
@stack('tax_number_input_end')
</th>
</tr>
<tr>
<th>
@stack('phone_input_start')
@if ($invoice->contact_phone)
{{ $invoice->contact_phone }}
@endif
@stack('phone_input_end')
</th>
</tr>
<tr>
<th>
@stack('email_start')
{{ $invoice->contact_email }}
@stack('email_input_end')
</th>
</tr>
</tbody>
</table>
</div>
</div>
<div class="col-md-5">
<div class="table-responsive">
<table class="table table-borderless">
<tbody>
@stack('invoice_number_input_start')
<tr>
<th>{{ trans('invoices.invoice_number') }}:</th>
<td class="text-right">{{ $invoice->invoice_number }}</td>
</tr>
@stack('invoice_number_input_end')
@stack('order_number_input_start')
@if ($invoice->order_number)
<tr>
<th>{{ trans('invoices.order_number') }}:</th>
<td class="text-right">{{ $invoice->order_number }}</td>
</tr>
@endif
@stack('order_number_input_end')
@stack('invoiced_at_input_start')
<tr>
<th>{{ trans('invoices.invoice_date') }}:</th>
<td class="text-right">@date($invoice->invoiced_at)</td>
</tr>
@stack('invoiced_at_input_end')
@stack('due_at_input_start')
<tr>
<th>{{ trans('invoices.payment_due') }}:</th>
<td class="text-right">@date($invoice->due_at)</td>
</tr>
@stack('due_at_input_end')
</tbody>
</table>
</div>
</div>
</div>
<div class="row show-table">
<div class="col-md-12">
<div class="table-responsive">
<table class="table">
<tbody>
<tr class="row bg-default text-white">
@stack('name_th_start')
<th class="col-xs-4 col-sm-3 pl-5 text-white">{{ trans_choice($text_override['items'], 2) }}</th>
@stack('name_th_end')
@stack('quantity_th_start')
<th class="col-xs-4 col-sm-3 text-center text-white">{{ trans($text_override['quantity']) }}</th>
@stack('quantity_th_end')
@stack('price_th_start')
<th class="col-sm-3 text-center d-none d-sm-block pl-5 text-white">{{ trans($text_override['price']) }}</th>
@stack('price_th_end')
@stack('total_th_start')
<th class="col-xs-4 col-sm-3 text-right pr-5 text-white">{{ trans('invoices.total') }}</th>
@stack('total_th_end')
</tr>
@foreach($invoice->items as $item)
<tr class="row">
@stack('name_td_start')
<td class="col-xs-4 col-sm-3 pl-5">
{{ $item->name }}
@if ($item->desc)
<br><small>{!! $item->desc !!}</small>
@endif
</td>
@stack('name_td_end')
@stack('quantity_td_start')
<td class="col-xs-4 col-sm-3 text-center">{{ $item->quantity }}</td>
@stack('quantity_td_end')
@stack('price_td_start')
<td class="col-sm-3 text-center d-none d-sm-block pl-5">@money($item->price, $invoice->currency_code, true)</td>
@stack('price_td_end')
@stack('total_td_start')
<td class="col-xs-4 col-sm-3 text-right pr-5">@money($item->total, $invoice->currency_code, true)</td>
@stack('total_td_end')
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
<div class="row mt-5">
<div class="col-md-7">
<div class="table-responsive">
@stack('notes_input_start')
@if ($invoice->notes)
<table class="table table-borderless">
<tbody>
<tr>
<th>
<p class="form-control-label">{{ trans_choice('general.notes', 2) }}</p>
<p class="form-control text-muted">{{ $invoice->notes }}</p>
</th>
</tr>
</tbody>
</table>
@endif
@stack('notes_input_end')
</div>
</div>
<div class="col-md-5">
<div class="table-responsive">
<table class="table">
<tbody>
@foreach ($invoice->totals as $total)
@if ($total->code != 'total')
@stack($total->code . '_td_start')
<tr>
<th>
{{ trans($total->title) }}:
</th>
<td class="text-right">
@money($total->amount, $invoice->currency_code, true)
</td>
</tr>
@stack($total->code . '_td_end')
@else
@if ($invoice->paid)
<tr>
<th>
{{ trans('invoices.paid') }}:
</th>
<td class="text-right">
- @money($invoice->paid, $invoice->currency_code, true)
</td>
</tr>
@endif
@stack('grand_total_td_start')
<tr>
<th>
{{ trans($total->name) }}:
</th>
<td class="text-right">
@money($total->amount - $invoice->paid, $invoice->currency_code, true)
</td>
</tr>
@stack('grand_total_td_end')
@endif
@endforeach
</tbody>
</table>
</div>
</div>
</div>
@if ($invoice->footer)
<div class="row">
<div class="col-md-12">
<div class="table-responsive">
<table class="table table-borderless">
<tbody>
<tr>
<th>
{!! $invoice->footer !!}
</th>
</tr>
</tbody>
</table>
</div>
</div>
</div>
@endif
@endsection

View File

@@ -0,0 +1,276 @@
@extends('layouts.print')
@section('title', trans_choice('general.invoices', 1) . ': ' . $invoice->invoice_number)
@section('content')
<div class="row">
<div class="col-md-7 bg-primary">
<div class="table-responsive">
<table class="table table-borderless mt-4">
<tbody>
<tr>
<th class="d-flex align-items-center">
<img src="{{ $logo }}" alt="{{ setting('company.name') }}"/>
<h3 class="ml-4 text-white">{{ setting('company.name') }}</h3>
</th>
</tr>
</tbody>
</table>
</div>
</div>
<div class="col-md-5 bg-default">
<div class="table-responsive">
<table class="table table-borderless">
<tbody>
<tr>
<th class="text-white">
{!! nl2br(setting('company.address')) !!}
</th>
</tr>
<tr>
<th class="text-white">
@if (setting('company.tax_number'))
{{ trans('general.tax_number') }}: {{ setting('company.tax_number') }}
@endif
</th>
</tr>
<tr>
<th class="text-white">
@if (setting('company.phone'))
{{ setting('company.phone') }}
@endif
</th>
</tr>
<tr>
<th class="text-white">
{{ setting('company.email') }}
</th>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="row">
<div class="col-md-7">
<div class="table-responsive">
<table class="table table-borderless">
<tbody>
<tr>
<th>
<h4>{{ trans('invoices.bill_to') }}</h4>
@stack('name_input_start')
<strong class="d-block">{{ $invoice->contact_name }}</strong>
@stack('name_input_end')
</th>
</tr>
<tr>
<td>
@stack('address_input_start')
{!! nl2br($invoice->contact_address) !!}
@stack('address_input_end')
</td>
</tr>
<tr>
<td>
@stack('tax_number_input_start')
@if ($invoice->contact_tax_number)
{{ trans('general.tax_number') }}: {{ $invoice->contact_tax_number }}<br>
@endif
@stack('tax_number_input_end')
</td>
</tr>
<tr>
<td>
@stack('phone_input_start')
@if ($invoice->contact_phone)
{{ $invoice->contact_phone }}
@endif
@stack('phone_input_end')
</td>
</tr>
<tr>
<td>
@stack('email_start')
{{ $invoice->contact_email }}
@stack('email_input_end')
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="col-md-5">
<div class="table-responsive">
<table class="table table-borderless">
<tbody>
@stack('invoice_number_input_start')
<tr>
<th>{{ trans('invoices.invoice_number') }}:</th>
<td class="text-right">{{ $invoice->invoice_number }}</td>
</tr>
@stack('invoice_number_input_end')
@stack('order_number_input_start')
@if ($invoice->order_number)
<tr>
<th>{{ trans('invoices.order_number') }}:</th>
<td class="text-right">{{ $invoice->order_number }}</td>
</tr>
@endif
@stack('order_number_input_end')
@stack('invoiced_at_input_start')
<tr>
<th>{{ trans('invoices.invoice_date') }}:</th>
<td class="text-right">@date($invoice->invoiced_at)</td>
</tr>
@stack('invoiced_at_input_end')
@stack('due_at_input_start')
<tr>
<th>{{ trans('invoices.payment_due') }}:</th>
<td class="text-right">@date($invoice->due_at)</td>
</tr>
@stack('due_at_input_end')
</tbody>
</table>
</div>
</div>
</div>
<div class="row show-table">
<div class="col-md-12">
<div class="table-responsive">
<table class="table table-borderless">
<tbody>
<tr class="row bg-default">
@stack('name_th_start')
<th class="col-xs-4 col-sm-3 pl-5 text-white">{{ trans_choice($text_override['items'], 2) }}</th>
@stack('name_th_end')
@stack('quantity_th_start')
<th class="col-xs-4 col-sm-3 text-center text-white">{{ trans($text_override['quantity']) }}</th>
@stack('quantity_th_end')
@stack('price_th_start')
<th class="col-sm-3 text-center d-none d-sm-block pl-5 text-white">{{ trans($text_override['price']) }}</th>
@stack('price_th_end')
@stack('total_th_start')
<th class="col-xs-4 col-sm-3 text-right pr-5 text-white">{{ trans('invoices.total') }}</th>
@stack('total_th_end')
</tr>
@foreach($invoice->items as $item)
<tr class="row">
@stack('name_td_start')
<td class="col-xs-4 col-sm-3 pl-5">
{{ $item->name }}
@if ($item->desc)
<br><small>{!! $item->desc !!}</small>
@endif
</td>
@stack('name_td_end')
@stack('quantity_td_start')
<td class="col-xs-4 col-sm-3 text-center">{{ $item->quantity }}</td>
@stack('quantity_td_end')
@stack('price_td_start')
<td class="col-sm-3 text-center d-none d-sm-block pl-5">@money($item->price, $invoice->currency_code, true)</td>
@stack('price_td_end')
@stack('total_td_start')
<td class="col-xs-4 col-sm-3 text-right pr-5">@money($item->total, $invoice->currency_code, true)</td>
@stack('total_td_end')
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
<div class="row mt-3">
<div class="col-md-7">
<div class="table-responsive">
@stack('notes_input_start')
@if ($invoice->notes)
<table class="table table-borderless">
<tbody>
<tr>
<th>
<p class="form-control-label">{{ trans_choice('general.notes', 2) }}</p>
<p class="form-control text-muted">{{ $invoice->notes }}</p>
</th>
</tr>
</tbody>
</table>
@endif
@stack('notes_input_end')
</div>
</div>
<div class="col-md-5">
<div class="table-responsive">
<table class="table table-borderless">
<tbody>
@foreach ($invoice->totals as $total)
@if ($total->code != 'total')
@stack($total->code . '_td_start')
<tr>
<th>
{{ trans($total->title) }}:
</th>
<td class="text-right">
@money($total->amount, $invoice->currency_code, true)
</td>
</tr>
@stack($total->code . '_td_end')
@else
@if ($invoice->paid)
<tr>
<th>
{{ trans('invoices.paid') }}:
</th>
<td class="text-right">
- @money($invoice->paid, $invoice->currency_code, true)
</td>
</tr>
@endif
@stack('grand_total_td_start')
<tr>
<th>
{{ trans($total->name) }}:
</th>
<td class="text-right">
@money($total->amount - $invoice->paid, $invoice->currency_code, true)
</td>
</tr>
@stack('grand_total_td_end')
@endif
@endforeach
</tbody>
</table>
</div>
</div>
</div>
@if ($invoice->footer)
<div class="row">
<div class="col-md-12 bg-default">
<div class="table-responsive">
<table class="table table-borderless mb-0">
<tbody>
<tr>
<th class="text-white">
{!! $invoice->footer !!}
</th>
</tr>
</tbody>
</table>
</div>
</div>
</div>
@endif
@endsection

View File

@@ -0,0 +1,48 @@
<div class="modal-body">
{!! Form::open([
'route' => 'modals.invoice-template.update',
'method' => 'PATCH',
'id' => 'template',
'@submit.prevent' => 'onSubmit',
'@keydown' => 'invoice_form.errors.clear($event.target.name)',
'files' => true,
'role' => 'form',
'class' => 'form-loading-button mb-0',
'novalidate' => true
]) !!}
<div class="row">
<div class="col-md-4 text-center px-0">
<div class="bg-print border-radius-5 print-edge choose" @click="invoice_form.template='default'">
<img src="{{ asset('public/img/print_templates/default.png') }}" class="mb-1 mt-3" height="200" alt="Default"/>
<label>
<input type="radio" name="template" value="default" v-model="invoice_form.template">
{{ trans('settings.invoice.default') }}
</label>
</div>
</div>
<div class="col-md-4 text-center px-0">
<div class="bg-print border-radius-5 print-edge choose" @click="invoice_form.template='classic'">
<img src="{{ asset('public/img/print_templates/classic.png') }}" class="mb-1 mt-3" height="200" alt="Classic"/>
<label>
<input type="radio" name="template" value="classic" v-model="invoice_form.template">
{{ trans('settings.invoice.classic') }}
</label>
</div>
</div>
<div class="col-md-4 text-center px-0">
<div class="bg-print border-radius-5 print-edge choose" @click="invoice_form.template='modern'">
<img src="{{ asset('public/img/print_templates/modern.png') }}" class="mb-1 mt-3" height="200" alt="Modern"/>
<label>
<input type="radio" name="template" value="modern" v-model="invoice_form.template">
{{ trans('settings.invoice.modern') }}
</label>
</div>
</div>
</div>
{!! Form::hidden('_template', $setting['template']) !!}
{!! Form::hidden('_prefix', 'invoice') !!}
{!! Form::close() !!}
</div>

View File

@@ -39,6 +39,16 @@
{{ Form::invoice_text('price_name', trans('settings.invoice.price_name'), 'font', $price_names, null, [], 'price_name_input', null) }}
{{ Form::invoice_text('quantity_name', trans('settings.invoice.quantity_name'), 'font', $quantity_names, null, [], 'quantity_name_input', null) }}
<div class="form-group col-md-6">
{!! Form::label('invoice_template', trans('settings.invoice.invoice_template'), ['class' => 'form-control-label']) !!}
<div class="input-group">
<a href="#" class="btn btn-block btn-outline-primary" @click="onTemplate">
<i class="fas fa-palette"></i>&nbsp; {{ trans('settings.invoice.choose_template') }}
</a>
</div>
</div>
</div>
</div>
@@ -56,6 +66,33 @@
{!! Form::close() !!}
@endsection
@push('content_content_end')
<akaunting-modal
:show="template.modal"
@cancel="template.modal = false"
:title="'{{ trans('settings.invoice.choose_template') }}'"
:message="template.html"
:button_cancel="'{{ trans('general.button.save') }}'"
:button_delete="'{{ trans('general.button.cancel') }}'">
<template #modal-body>
@include('modals.settings.template')
</template>
<template #card-footer>
<div class="float-right">
<button type="button" class="btn btn-outline-secondary" @click="closeTemplate">
<span>{{ trans('general.cancel') }}</span>
</button>
<button type="button" class="btn btn-success button-submit" @click="addTemplate">
<div class="aka-loader d-none"></div>
<span>{{ trans('general.confirm') }}</span>
</button>
</div>
</template>
</akaunting-modal>
@endpush
@push('scripts_start')
<script src="{{ asset('public/js/settings/settings.js?v=' . version('short')) }}"></script>
@endpush