From 24910433a145cfc2269c3c473b2a2b9a2465362c Mon Sep 17 00:00:00 2001 From: snipe Date: Thu, 15 Sep 2022 15:39:47 -0700 Subject: [PATCH 1/4] Fixed 500 when depreciation is set but no purchase_date Signed-off-by: snipe --- app/Models/Depreciable.php | 8 ++++++-- resources/lang/en/general.php | 1 + resources/views/hardware/view.blade.php | 18 ++++++++++++++---- 3 files changed, 21 insertions(+), 6 deletions(-) diff --git a/app/Models/Depreciable.php b/app/Models/Depreciable.php index 20a28af40..e22fb65a7 100644 --- a/app/Models/Depreciable.php +++ b/app/Models/Depreciable.php @@ -68,9 +68,13 @@ class Depreciable extends SnipeModel */ public function getLinearDepreciatedValue() // TODO - for testing it might be nice to have an optional $relative_to param here, defaulted to 'now' { - $months_passed = $this->purchase_date->diff(now())->m; + if ($this->purchase_date) { + $months_passed = $this->purchase_date->diff(now())->m; + } else { + return null; + } - if($months_passed >= $this->get_depreciation()->months){ + if ($months_passed >= $this->get_depreciation()->months){ //if there is a floor use it if($this->get_depreciation()->deprecation_min->isNotEmpty()) { diff --git a/resources/lang/en/general.php b/resources/lang/en/general.php index 6a2bc3508..029b74d19 100644 --- a/resources/lang/en/general.php +++ b/resources/lang/en/general.php @@ -372,6 +372,7 @@ return [ 'bulk_checkin_delete_success' => 'Your selected users have been deleted and their items have been checked in.', 'bulk_checkin_success' => 'The items for the selected users have been checked in.', 'set_to_null' => 'Delete values for this asset|Delete values for all :asset_count assets ', + 'na_no_purchase_date' => 'N/A - No purchase date provided', ]; \ No newline at end of file diff --git a/resources/views/hardware/view.blade.php b/resources/views/hardware/view.blade.php index 2e24d8a62..5aaed904b 100755 --- a/resources/views/hardware/view.blade.php +++ b/resources/views/hardware/view.blade.php @@ -519,7 +519,7 @@ @endif - @if (($asset->model) && ($asset->depreciation)) + @if (($asset->model) && ($asset->depreciation) && ($asset->purchase_date))
@@ -597,14 +597,17 @@ {{ trans('admin/hardware/form.warranty_expires') }} {!! $asset->present()->warranty_expires() < date("Y-m-d") ? '' : '' !!} +
- + @if ($asset->purchase_date) {{ Helper::getFormattedDateObject($asset->present()->warranty_expires(), 'date', false) }} - {{ Carbon::parse($asset->present()->warranty_expires())->diffForHumans() }} - + @else + {{ trans('general.na_no_purchase_date') }} + @endif
@@ -630,9 +633,13 @@
+ @if ($asset->purchase_date) {{ Helper::getFormattedDateObject($asset->depreciated_date()->format('Y-m-d'), 'date', false) }} - {{ Carbon::parse($asset->depreciated_date())->diffForHumans() }} + @else + {{ trans('general.na_no_purchase_date') }} + @endif
@@ -659,10 +666,13 @@
+ @if ($asset->purchase_date) {{ Helper::getFormattedDateObject($asset->present()->eol_date(), 'date', false) }} - {{ Carbon::parse($asset->present()->eol_date())->diffForHumans() }} - + @else + {{ trans('general.na_no_purchase_date') }} + @endif
@endif From 1885e737048ce344ac345ce856e93509f2b46d40 Mon Sep 17 00:00:00 2001 From: snipe Date: Thu, 15 Sep 2022 15:42:47 -0700 Subject: [PATCH 2/4] Ignore warning icon if no purchase date Signed-off-by: snipe --- resources/views/hardware/view.blade.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/resources/views/hardware/view.blade.php b/resources/views/hardware/view.blade.php index 5aaed904b..0ed8e10e0 100755 --- a/resources/views/hardware/view.blade.php +++ b/resources/views/hardware/view.blade.php @@ -596,7 +596,9 @@
{{ trans('admin/hardware/form.warranty_expires') }} + @if ($asset->purchase_date) {!! $asset->present()->warranty_expires() < date("Y-m-d") ? '' : '' !!} + @endif
From eb1e287c15395317fc1776d42fdb37d0cbb61234 Mon Sep 17 00:00:00 2001 From: snipe Date: Thu, 15 Sep 2022 16:08:13 -0700 Subject: [PATCH 3/4] Better handle missing files Signed-off-by: snipe --- resources/views/hardware/view.blade.php | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/resources/views/hardware/view.blade.php b/resources/views/hardware/view.blade.php index 0ed8e10e0..b5fa5c4af 100755 --- a/resources/views/hardware/view.blade.php +++ b/resources/views/hardware/view.blade.php @@ -1198,10 +1198,14 @@ @endif + @if (Storage::exists('private_uploads/assets/'.$file->filename)) {{ $file->filename }} + @else + {{ $file->filename }} + @endif - - {{ @Helper::formatFilesizeUnits(Storage::size('private_uploads/assets/'.$file->filename)) }} + + {{ @Helper::formatFilesizeUnits(Storage::exists('private_uploads/assets/'.$file->filename) ? Storage::size('private_uploads/assets/'.$file->filename) : '') }} @if ($file->note) @@ -1291,10 +1295,14 @@ @endif - {{ $file->filename }} + @if (Storage::exists('private_uploads/assetmodels/'.$file->filename)) + {{ $file->filename }} + @else + {{ $file->filename }} + @endif - - {{ Helper::formatFilesizeUnits(Storage::size('private_uploads/assetmodels/'.$file->filename)) }} + + {{ Helper::formatFilesizeUnits(@Storage::size('private_uploads/assetmodels/'.$file->filename)) }} @if ($file->note) From 62ad3fad1c4a0d26b049301977396ee9f2ffcf70 Mon Sep 17 00:00:00 2001 From: snipe Date: Thu, 15 Sep 2022 16:11:27 -0700 Subject: [PATCH 4/4] =?UTF-8?q?Remove=20DL=20button=20if=20file=20doesn?= =?UTF-8?q?=E2=80=99t=20exist?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: snipe --- resources/views/hardware/view.blade.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/views/hardware/view.blade.php b/resources/views/hardware/view.blade.php index b5fa5c4af..167ad7028 100755 --- a/resources/views/hardware/view.blade.php +++ b/resources/views/hardware/view.blade.php @@ -1213,7 +1213,7 @@ @endif - @if ($file->filename) + @if (($file->filename) && (Storage::exists('private_uploads/assets/'.$file->filename))) @@ -1310,7 +1310,7 @@ @endif - @if ($file->filename) + @if (($file->filename) && (Storage::exists('private_uploads/assetmodels/'.$file->filename)))