diff --git a/app/Presenters/AccessoryPresenter.php b/app/Presenters/AccessoryPresenter.php index 3ee9dc2145..5032fdb540 100644 --- a/app/Presenters/AccessoryPresenter.php +++ b/app/Presenters/AccessoryPresenter.php @@ -96,6 +96,7 @@ class AccessoryPresenter extends Presenter "searchable" => true, "sortable" => true, "title" => trans('general.purchase_cost'), + "footerFormatter" => 'sumFormatter', ], [ "field" => "order_number", "searchable" => true, diff --git a/app/Presenters/AssetPresenter.php b/app/Presenters/AssetPresenter.php index 53188aa237..ba030b05cd 100644 --- a/app/Presenters/AssetPresenter.php +++ b/app/Presenters/AssetPresenter.php @@ -139,6 +139,7 @@ class AssetPresenter extends Presenter "searchable" => true, "sortable" => true, "title" => trans('general.purchase_cost'), + "footerFormatter" => 'sumFormatter', ], [ "field" => "order_number", "searchable" => true, diff --git a/app/Presenters/ComponentPresenter.php b/app/Presenters/ComponentPresenter.php index b9493ab996..1a62db667e 100644 --- a/app/Presenters/ComponentPresenter.php +++ b/app/Presenters/ComponentPresenter.php @@ -85,6 +85,7 @@ class ComponentPresenter extends Presenter "sortable" => true, "title" => trans('general.purchase_cost'), "visible" => true, + "footerFormatter" => 'sumFormatter', ], ]; diff --git a/app/Presenters/ConsumablePresenter.php b/app/Presenters/ConsumablePresenter.php index 88e13ff58d..2b542912af 100644 --- a/app/Presenters/ConsumablePresenter.php +++ b/app/Presenters/ConsumablePresenter.php @@ -89,6 +89,7 @@ class ConsumablePresenter extends Presenter "sortable" => true, "title" => trans('general.purchase_cost'), "visible" => true, + "footerFormatter" => 'sumFormatter', ],[ "field" => "change", "searchable" => false, diff --git a/app/Presenters/LicensePresenter.php b/app/Presenters/LicensePresenter.php index 1814427c2e..fb0da5ccd8 100644 --- a/app/Presenters/LicensePresenter.php +++ b/app/Presenters/LicensePresenter.php @@ -98,6 +98,7 @@ class LicensePresenter extends Presenter "sortable" => true, "visible" => false, "title" => trans('general.purchase_cost'), + "footerFormatter" => 'sumFormatter', ], [ "field" => "purchase_order", "searchable" => true, diff --git a/resources/views/accessories/index.blade.php b/resources/views/accessories/index.blade.php index 819932dcd8..be1378156e 100755 --- a/resources/views/accessories/index.blade.php +++ b/resources/views/accessories/index.blade.php @@ -42,6 +42,7 @@ @include ('partials.bootstrap-table', [ 'exportFile' => 'accessories-export', 'search' => true, + 'showFooter' => true, 'columns' => \App\Presenters\AccessoryPresenter::dataTableLayout() ]) @stop diff --git a/resources/views/components/index.blade.php b/resources/views/components/index.blade.php index cd68175177..c49599d018 100644 --- a/resources/views/components/index.blade.php +++ b/resources/views/components/index.blade.php @@ -45,7 +45,7 @@ @stop @section('moar_scripts') -@include ('partials.bootstrap-table', ['exportFile' => 'components-export', 'search' => true, 'columns' => \App\Presenters\ComponentPresenter::dataTableLayout()]) +@include ('partials.bootstrap-table', ['exportFile' => 'components-export', 'search' => true, 'showFooter' => true, 'columns' => \App\Presenters\ComponentPresenter::dataTableLayout()]) diff --git a/resources/views/consumables/index.blade.php b/resources/views/consumables/index.blade.php index 68d0913195..feeb2367e3 100644 --- a/resources/views/consumables/index.blade.php +++ b/resources/views/consumables/index.blade.php @@ -40,5 +40,5 @@ @stop @section('moar_scripts') -@include ('partials.bootstrap-table', ['exportFile' => 'consumables-export', 'search' => true,'columns' => \App\Presenters\ConsumablePresenter::dataTableLayout()]) +@include ('partials.bootstrap-table', ['exportFile' => 'consumables-export', 'search' => true,'showFooter' => true, 'columns' => \App\Presenters\ConsumablePresenter::dataTableLayout()]) @stop diff --git a/resources/views/hardware/index.blade.php b/resources/views/hardware/index.blade.php index 18de1d12d1..1057dc380b 100755 --- a/resources/views/hardware/index.blade.php +++ b/resources/views/hardware/index.blade.php @@ -101,6 +101,7 @@ @include ('partials.bootstrap-table', [ 'exportFile' => 'assets-export', 'search' => true, + 'showFooter' => true, 'columns' => \App\Presenters\AssetPresenter::dataTableLayout() ]) diff --git a/resources/views/licenses/index.blade.php b/resources/views/licenses/index.blade.php index 683ca2eb15..d236cea3f9 100755 --- a/resources/views/licenses/index.blade.php +++ b/resources/views/licenses/index.blade.php @@ -45,6 +45,7 @@ @include ('partials.bootstrap-table', [ 'exportFile' => 'licenses-export', 'search' => true, + 'showFooter' => true, 'columns' => \App\Presenters\LicensePresenter::dataTableLayout()]) @stop diff --git a/resources/views/partials/bootstrap-table.blade.php b/resources/views/partials/bootstrap-table.blade.php index 896cb97caf..2d14246a06 100644 --- a/resources/views/partials/bootstrap-table.blade.php +++ b/resources/views/partials/bootstrap-table.blade.php @@ -38,6 +38,9 @@ $('.snipe-table').bootstrapTable({ cookie: true, cookieExpire: '2y', showExport: true, + @if (isset($showFooter)) + showFooter: true, + @endif showColumns: true, trimOnSearch: false, @@ -202,7 +205,7 @@ $('.snipe-table').bootstrapTable({ } - // This handles + // This handles the icons and display of polymorphic entries function polymorphicItemFormatter(value) { var item_destination = ''; @@ -419,6 +422,15 @@ $('.snipe-table').bootstrapTable({ } } + function sumFormatter(data) { + var field = this.field; + var total_sum = data.reduce(function(sum, row) { + return (sum) + (parseFloat(row[field]) || 0); + }, 0); + return total_sum.toFixed(2); + } + + $(function () { $('#bulkEdit').click(function () { var selectedIds = $('.snipe-table').bootstrapTable('getSelections'); @@ -429,7 +441,9 @@ $('.snipe-table').bootstrapTable({ }); }); - // This is necessary to make the bootstrap tooltips work inside of the wenzhixin/bootstrap-table formatters + + // This is necessary to make the bootstrap tooltips work inside of the + // wenzhixin/bootstrap-table formatters $(function() { $('#table').on('post-body.bs.table', function () { $('[data-tooltip="true"]').tooltip({ @@ -439,4 +453,6 @@ $('.snipe-table').bootstrapTable({ }); + + diff --git a/resources/views/reports/asset_maintenances.blade.php b/resources/views/reports/asset_maintenances.blade.php index 27226254ef..e84d3d81f7 100644 --- a/resources/views/reports/asset_maintenances.blade.php +++ b/resources/views/reports/asset_maintenances.blade.php @@ -33,7 +33,7 @@