Upgrade to Laravel 5.8 and AdminLTE3

This commit is contained in:
Deon George
2019-06-02 15:35:48 +10:00
parent 5a036cdc64
commit 41d6a07196
135 changed files with 20724 additions and 103787 deletions

View File

@@ -0,0 +1,45 @@
@if ($o->accounts->count() > 2)
<div class="col-sm-2">
<div class="info-box">
<span class="info-box-icon bg-primary elevation-1"><i class="fa fa-user"></i></span>
<div class="info-box-content">
<span class="info-box-text">Linked Accounts</span>
<span class="info-box-number">{{ number_format($o->accounts->count()) }}</span>
</div>
</div>
</div>
@endif
<div class="col-sm-3">
<div class="info-box">
<span class="info-box-icon bg-info"><i class="fa fa-clone"></i></span>
<div class="info-box-content">
<span class="info-box-text">Active Services</span>
<span class="info-box-number">{{ $o->services_active->count() }} <small>/{{ $o->services->count() }}</small></span>
</div>
</div>
</div>
<div class="col-sm-2">
<div class="info-box">
<span class="info-box-icon bg-danger"><i class="fa fa-dollar"></i></span>
<div class="info-box-content">
<span class="info-box-text">Account Balance</span>
<span class="info-box-number"><small>$</small> {{ number_format($o->invoices_due->sum('due'),2) }}</span>
</div>
</div>
</div>
<div class="col-sm-2">
<div class="info-box">
<span class="info-box-icon bg-dark"><i class="fa fa-hashtag"></i></span>
<div class="info-box-content">
<span class="info-box-text">Invoices Due</span>
<span class="info-box-number">{{ $o->invoices_due->count() }}</span>
</div>
</div>
</div>

View File

@@ -0,0 +1,67 @@
<div class="card card-dark card-outline">
<div class="card-header">
<h4 class="card-title">Invoices Due</h4>
</div>
<div class="card-body">
@if ($user->invoices_due->count())
<table class="table table-striped table-hover" id="invoices" style="width: 100%;">
<thead>
<tr>
<th>Invoice</th>
<th>Total</th>
<th>Due</th>
<th>Date Date</th>
</tr>
</thead>
<tfoot>
<tr>
<th>Count {{ $user->invoices_due->count() }}</th>
{{-- @todo Number format should configured by currency --}}
<th class="right">{{ number_format($user->invoices_due->sum('total'),2) }}</th>
<th class="right">{{ number_format($user->invoices_due->sum('due'),2) }}</th>
<th>&nbsp;</th>
</tr>
</tfoot>
</table>
@else
<p>No invoices due</p>
@endif
</div>
</div>
@section('page-scripts')
@css('https://cdn.datatables.net/1.10.19/css/jquery.dataTables.min.css','jq-dt-css','jquery');
@js('https://cdn.datatables.net/1.10.19/js/jquery.dataTables.min.js','jq-dt-js','jquery');
@css('https://cdn.datatables.net/responsive/2.2.1/css/responsive.dataTables.min.css','dt-responsive-css','jq-dt-css')
@js('https://cdn.datatables.net/responsive/2.2.1/js/dataTables.responsive.min.js','dt-responsive-js','jq-dt-js')
@css('https://cdn.datatables.net/rowgroup/1.0.2/css/rowGroup.dataTables.min.css','dt-rowgroup-css','jq-dt-css')
@js('https://cdn.datatables.net/rowgroup/1.0.2/js/dataTables.rowGroup.min.js','dt-rowgroup-js','jq-dt-js')
@css('/plugin/dataTables/dataTables.bootstrap4.css','dt-bootstrap4-css','jq-dt-css')
@js('/plugin/dataTables/dataTables.bootstrap4.js','dt-bootstrap4-js','jq-dt-js')
<script type="text/javascript">
$(document).ready(function() {
$('#invoices').DataTable( {
responsive: true,
ajax: {
url: "/api/u/invoices"
},
columns: [
{ data: "invoice_id_url" },
{ data: "total" },
{ data: "due" },
{ data: "date_due" }
],
language: {
emptyTable: "No Invoices Due"
},
order: [3, 'asc']
});
$('#invoices tbody').on('click','tr', function () {
$(this).toggleClass('selected');
});
});
</script>
@append

View File

@@ -0,0 +1,61 @@
<div class="card card-primary card-outline">
<div class="card-header">
<h4 class="card-title">Payment History</h4>
<div class="card-tools">
<button type="button" class="btn btn-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
<button type="button" class="btn btn-tool" data-widget="remove"><i class="fa fa-remove"></i></button>
</div>
</div>
<div class="card-body">
@if ($user->payment_history->count())
<table class="table table-bordered table-striped table-hover" id="payments" style="width: 100%;">
<thead>
<tr>
<th>ID</th>
<th>Date</th>
<th>Amount</th>
</tr>
</thead>
</table>
@else
<p>No payments recorded</p>
@endif
</div>
</div>
@section('page-scripts')
@css('https://cdn.datatables.net/1.10.19/css/jquery.dataTables.min.css','jq-dt-css','jquery');
@js('https://cdn.datatables.net/1.10.19/js/jquery.dataTables.min.js','jq-dt-js','jquery');
@css('https://cdn.datatables.net/responsive/2.2.1/css/responsive.dataTables.min.css','dt-responsive-css','jq-dt-css')
@js('https://cdn.datatables.net/responsive/2.2.1/js/dataTables.responsive.min.js','dt-responsive-js','jq-dt-js')
@css('https://cdn.datatables.net/rowgroup/1.0.2/css/rowGroup.dataTables.min.css','dt-rowgroup-css','jq-dt-css')
@js('https://cdn.datatables.net/rowgroup/1.0.2/js/dataTables.rowGroup.min.js','dt-rowgroup-js','jq-dt-js')
@css('/plugin/dataTables/dataTables.bootstrap4.css','dt-bootstrap4-css','jq-dt-css')
@js('/plugin/dataTables/dataTables.bootstrap4.js','dt-bootstrap4-js','jq-dt-js')
<script type="text/javascript">
$(document).ready(function() {
$('#payments').DataTable( {
responsive: true,
ajax: {
url: "/api/u/payments"
},
columns: [
{ data: "payment_id_url" },
{ data: "date_paid" },
{ data: "total" },
],
language: {
emptyTable: "No Payments On File"
},
order: [0, 'desc']
});
$('#payments tbody').on('click','tr', function () {
$(this).toggleClass('selected');
});
});
</script>
@append

View File

@@ -0,0 +1,78 @@
<div class="card card-info card-outline">
<div class="card-header">
<h4 class="card-title">Services</h4>
</div>
<div class="card-body">
@if ($user->services_active->count())
<table class="table table-striped table-hover" id="services" style="width: 100%;">
<thead>
<tr>
<th>ID</th>
<th>Category</th>
<th>Service</th>
<th>Product</th>
<th>Status</th>
<th>Next Invoice</th>
</tr>
</thead>
<tfoot>
<tr>
<th>Count {{ $user->services_active->count() }}</th>
<th colspan="5">&nbsp;</th>
</tr>
</tfoot>
</table>
@else
<p>No services active</p>
@endif
</div>
</div>
@section('page-scripts')
@css('https://cdn.datatables.net/1.10.19/css/jquery.dataTables.min.css','jq-dt-css','jquery');
@js('https://cdn.datatables.net/1.10.19/js/jquery.dataTables.min.js','jq-dt-js','jquery');
@css('https://cdn.datatables.net/responsive/2.2.1/css/responsive.dataTables.min.css','dt-responsive-css','jq-dt-css')
@js('https://cdn.datatables.net/responsive/2.2.1/js/dataTables.responsive.min.js','dt-responsive-js','jq-dt-js')
@css('https://cdn.datatables.net/rowgroup/1.0.2/css/rowGroup.dataTables.min.css','dt-rowgroup-css','jq-dt-css')
@js('https://cdn.datatables.net/rowgroup/1.0.2/js/dataTables.rowGroup.min.js','dt-rowgroup-js','jq-dt-js')
@css('/plugin/dataTables/dataTables.bootstrap4.css','dt-bootstrap4-css','jq-dt-css')
@js('/plugin/dataTables/dataTables.bootstrap4.js','dt-bootstrap4-js','jq-dt-js')
<script type="text/javascript">
$(document).ready(function() {
$('#services').DataTable( {
responsive: true,
ajax: {
url: "/api/u/services"
},
columns: [
{ data: "service_id_url" },
{ data: "category" },
{ data: "name" },
{ data: "product_name" },
{ data: "status" },
{ data: "next_invoice" }
],
language: {
emptyTable: "No Active Services"
},
order: [5, 'asc'],
rowGroup: {
dataSrc: 'product_name',
startRender: null,
endRender: function ( rows, group ) {
return rows.count()+' x ' + group;
},
},
orderFixed: [3, 'asc']
});
$('#services tbody').on('click','tr', function () {
$(this).toggleClass('selected');
});
});
</script>
@append