Skip to content

Commit a7fc9ff

Browse files
authored
Merge pull request #19589 from grokability/code-cleanups
Clean up unreachable code (via phpstan)
2 parents b0c79c7 + d9a86f5 commit a7fc9ff

6 files changed

Lines changed: 64 additions & 145 deletions

File tree

app/Console/Commands/LdapTroubleshooter.php

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -627,13 +627,11 @@ private function timed_boolean_execute($function)
627627
posix_kill($parent_pid, SIGUSR2);
628628
}
629629
exit();
630-
break; // yes I know we don't need it.
631630
case -1:
632631
// couldn't fork
633632
$this->error('COULD NOT FORK - assuming failure');
634633

635634
return false;
636-
break; // I still know that we don't need it
637635
default:
638636
// we remain the 'parent', $pid is the PID of the forked process.
639637
$siginfo = [];
@@ -645,7 +643,6 @@ private function timed_boolean_execute($function)
645643

646644
return false;
647645
}
648-
break; // Yeah I get it already, shush.
649646
}
650647
}
651648

app/Helpers/Helper.php

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1642,7 +1642,6 @@ public static function isDemoMode()
16421642
{
16431643
if (config('app.lock_passwords') === true) {
16441644
return true;
1645-
Log::debug('app locked!');
16461645
}
16471646

16481647
return false;
@@ -1699,8 +1698,6 @@ public static function getUnitConversionFactor($unit)
16991698
return (1 / 72) * static::getUnitConversionFactor('in');
17001699
default:
17011700
throw new \InvalidArgumentException('Unit: '.e($unit).' is not supported');
1702-
1703-
return false;
17041701
}
17051702
}
17061703

app/Http/Controllers/ActionlogController.php

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -49,27 +49,24 @@ public function getStoredEula($filename): Response|BinaryFileResponse|RedirectRe
4949
{
5050
$filename = basename((string) $filename);
5151

52-
if ($actionlog = Actionlog::where('filename', $filename)->with('user')->with('target')->firstOrFail()) {
52+
$actionlog = Actionlog::where('filename', $filename)->with('user')->with('target')->firstOrFail();
5353

54-
$this->authorize('view', $actionlog->target);
55-
$this->authorize('view', $actionlog->user);
54+
$this->authorize('view', $actionlog->target);
55+
$this->authorize('view', $actionlog->user);
5656

57-
if (config('filesystems.default') == 's3_private') {
58-
return redirect()->away(Storage::disk('s3_private')->temporaryUrl('private_uploads/eula-pdfs/'.$filename, now()->addMinutes(5)));
59-
}
60-
61-
if (Storage::exists('private_uploads/eula-pdfs/'.$filename)) {
57+
if (config('filesystems.default') == 's3_private') {
58+
return redirect()->away(Storage::disk('s3_private')->temporaryUrl('private_uploads/eula-pdfs/'.$filename, now()->addMinutes(5)));
59+
}
6260

63-
if (request()->input('inline') == 'true') {
64-
return response()->file(config('app.private_uploads').'/eula-pdfs/'.$filename);
65-
}
61+
if (Storage::exists('private_uploads/eula-pdfs/'.$filename)) {
6662

67-
return response()->download(config('app.private_uploads').'/eula-pdfs/'.$filename);
63+
if (request()->input('inline') == 'true') {
64+
return response()->file(config('app.private_uploads').'/eula-pdfs/'.$filename);
6865
}
6966

70-
return redirect()->back()->with('error', trans('general.file_does_not_exist'));
67+
return response()->download(config('app.private_uploads').'/eula-pdfs/'.$filename);
7168
}
7269

73-
return redirect()->back()->with('error', trans('general.record_not_found'));
70+
return redirect()->back()->with('error', trans('general.file_does_not_exist'));
7471
}
7572
}

app/Http/Controllers/Assets/AssetsController.php

Lines changed: 53 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -341,68 +341,64 @@ public function show(Asset $asset): View|RedirectResponse
341341
$this->authorize('view', $asset);
342342
$settings = Setting::getSettings();
343343

344-
if (isset($asset)) {
345-
$audit_log = Actionlog::where('action_type', '=', 'audit')
346-
->where('item_id', '=', $asset->id)
347-
->where('item_type', '=', Asset::class)
348-
->orderBy('created_at', 'DESC')->first();
349-
350-
if ($asset->location) {
351-
$use_currency = $asset->location->currency;
352-
} else {
353-
if ($settings->default_currency != '') {
354-
$use_currency = $settings->default_currency;
355-
} else {
356-
$use_currency = trans('general.currency');
357-
}
358-
}
344+
$audit_log = Actionlog::where('action_type', '=', 'audit')
345+
->where('item_id', '=', $asset->id)
346+
->where('item_type', '=', Asset::class)
347+
->orderBy('created_at', 'DESC')->first();
359348

360-
$qr_code = (object) [
361-
'display' => $settings->qr_code == '1',
362-
'url' => route('qr_code/common', ['object_type' => 'hardware', 'id' => $asset->id]),
363-
];
364-
365-
$total_maintenance_cost = $asset->maintenances?->sum('cost');
366-
$total_asset_cost = ($asset->assignedAssets()?->AssetsForShow()) ? $asset->assignedAssets()?->AssetsForShow()?->sum('purchase_cost') : 0;
367-
$total_license_cost = ($asset->licenses) ? $asset->licenses->sum('purchase_cost') : 0;
368-
// accessories.purchase_cost no longer exists; getAccessoryCost()
369-
// walks lastOrderDefaults() per attached accessory so the total
370-
// reflects each item's last acquisition (with the parent's
371-
// default_purchase_cost as fallback).
372-
$total_accessory_cost = $asset->getAccessoryCost();
373-
$total_component_cost = ($asset->components) ? $asset->components->sum('calculated_purchase_cost') : 0;
374-
375-
$total_cost_for_asset = $asset->purchase_cost + $total_maintenance_cost + $total_asset_cost + $total_license_cost + $total_accessory_cost + $total_component_cost;
376-
377-
$audit_custom_field_columns = [];
378-
if ($asset->model && $asset->model->fieldset) {
379-
$audit_custom_field_columns = $asset->model->fieldset->fields
380-
->where('display_audit', '1')
381-
->map(fn ($field) => [
382-
'field' => $field->db_column,
383-
'searchable' => false,
384-
'sortable' => false,
385-
'switchable' => true,
386-
'title' => e($field->name),
387-
'visible' => true,
388-
])
389-
->values()
390-
->all();
349+
if ($asset->location) {
350+
$use_currency = $asset->location->currency;
351+
} else {
352+
if ($settings->default_currency != '') {
353+
$use_currency = $settings->default_currency;
354+
} else {
355+
$use_currency = trans('general.currency');
391356
}
357+
}
392358

393-
return view('hardware/view', compact('asset', 'qr_code', 'settings'))
394-
->with('total_maintenance_cost', $total_maintenance_cost)
395-
->with('total_asset_cost', $total_asset_cost)
396-
->with('total_license_cost', $total_license_cost)
397-
->with('total_accessory_cost', $total_accessory_cost)
398-
->with('total_component_cost', $total_component_cost)
399-
->with('total_cost_for_asset', $total_cost_for_asset)
400-
->with('use_currency', $use_currency)
401-
->with('audit_log', $audit_log)
402-
->with('audit_custom_field_columns', $audit_custom_field_columns);
359+
$qr_code = (object) [
360+
'display' => $settings->qr_code == '1',
361+
'url' => route('qr_code/common', ['object_type' => 'hardware', 'id' => $asset->id]),
362+
];
363+
364+
$total_maintenance_cost = $asset->maintenances?->sum('cost');
365+
$total_asset_cost = ($asset->assignedAssets()?->AssetsForShow()) ? $asset->assignedAssets()?->AssetsForShow()?->sum('purchase_cost') : 0;
366+
$total_license_cost = ($asset->licenses) ? $asset->licenses->sum('purchase_cost') : 0;
367+
// accessories.purchase_cost no longer exists; getAccessoryCost()
368+
// walks lastOrderDefaults() per attached accessory so the total
369+
// reflects each item's last acquisition (with the parent's
370+
// default_purchase_cost as fallback).
371+
$total_accessory_cost = $asset->getAccessoryCost();
372+
$total_component_cost = ($asset->components) ? $asset->components->sum('calculated_purchase_cost') : 0;
373+
374+
$total_cost_for_asset = $asset->purchase_cost + $total_maintenance_cost + $total_asset_cost + $total_license_cost + $total_accessory_cost + $total_component_cost;
375+
376+
$audit_custom_field_columns = [];
377+
if ($asset->model && $asset->model->fieldset) {
378+
$audit_custom_field_columns = $asset->model->fieldset->fields
379+
->where('display_audit', '1')
380+
->map(fn ($field) => [
381+
'field' => $field->db_column,
382+
'searchable' => false,
383+
'sortable' => false,
384+
'switchable' => true,
385+
'title' => e($field->name),
386+
'visible' => true,
387+
])
388+
->values()
389+
->all();
403390
}
404391

405-
return redirect()->route('hardware.index')->with('error', trans('admin/hardware/message.does_not_exist'));
392+
return view('hardware/view', compact('asset', 'qr_code', 'settings'))
393+
->with('total_maintenance_cost', $total_maintenance_cost)
394+
->with('total_asset_cost', $total_asset_cost)
395+
->with('total_license_cost', $total_license_cost)
396+
->with('total_accessory_cost', $total_accessory_cost)
397+
->with('total_component_cost', $total_component_cost)
398+
->with('total_cost_for_asset', $total_cost_for_asset)
399+
->with('use_currency', $use_currency)
400+
->with('audit_log', $audit_log)
401+
->with('audit_custom_field_columns', $audit_custom_field_columns);
406402
}
407403

408404
/**

app/Http/Traits/CheckInOutTrait.php

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,6 @@ protected function determineCheckoutTarget(): ?SnipeModel
2323
default:
2424
return User::findOrFail(request('assigned_user'));
2525
}
26-
27-
return null;
2826
}
2927

3028
/**

phpstan-baseline.neon

Lines changed: 0 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -390,12 +390,6 @@ parameters:
390390
count: 1
391391
path: app/Console/Commands/LdapTroubleshooter.php
392392

393-
-
394-
message: '#^Unreachable statement \- code above always terminates\.$#'
395-
identifier: deadCode.unreachable
396-
count: 3
397-
path: app/Console/Commands/LdapTroubleshooter.php
398-
399393
-
400394
message: '#^Variable \$conn might not be defined\.$#'
401395
identifier: variable.undefined
@@ -864,12 +858,6 @@ parameters:
864858
count: 1
865859
path: app/Helpers/Helper.php
866860

867-
-
868-
message: '#^Unreachable statement \- code above always terminates\.$#'
869-
identifier: deadCode.unreachable
870-
count: 2
871-
path: app/Helpers/Helper.php
872-
873861
-
874862
message: '#^Variable \$permissions on left side of \?\? always exists and is not nullable\.$#'
875863
identifier: nullCoalesce.variable
@@ -990,12 +978,6 @@ parameters:
990978
count: 1
991979
path: app/Http/Controllers/Accessories/AccessoryCheckoutController.php
992980

993-
-
994-
message: '#^Unreachable statement \- code above always terminates\.$#'
995-
identifier: deadCode.unreachable
996-
count: 1
997-
path: app/Http/Controllers/Accessories/AccessoryCheckoutController.php
998-
999981
-
1000982
message: '#^Using nullsafe property access "\?\-\>name" on left side of \?\? is unnecessary\. Use \-\> instead\.$#'
1001983
identifier: nullsafe.neverNull
@@ -1014,18 +996,6 @@ parameters:
1014996
count: 1
1015997
path: app/Http/Controllers/Account/AcceptanceController.php
1016998

1017-
-
1018-
message: '#^If condition is always true\.$#'
1019-
identifier: if.alwaysTrue
1020-
count: 1
1021-
path: app/Http/Controllers/ActionlogController.php
1022-
1023-
-
1024-
message: '#^Unreachable statement \- code above always terminates\.$#'
1025-
identifier: deadCode.unreachable
1026-
count: 1
1027-
path: app/Http/Controllers/ActionlogController.php
1028-
1029999
-
10301000
message: '#^Access to an undefined property App\\Models\\Accessory\:\:\$checkout_qty\.$#'
10311001
identifier: property.notFound
@@ -1128,12 +1098,6 @@ parameters:
11281098
count: 1
11291099
path: app/Http/Controllers/Api/AccessoriesController.php
11301100

1131-
-
1132-
message: '#^Unreachable statement \- code above always terminates\.$#'
1133-
identifier: deadCode.unreachable
1134-
count: 1
1135-
path: app/Http/Controllers/Api/AccessoriesController.php
1136-
11371101
-
11381102
message: '#^Access to an undefined property App\\Models\\AssetModel\:\:\$use_image\.$#'
11391103
identifier: property.notFound
@@ -2244,12 +2208,6 @@ parameters:
22442208
count: 1
22452209
path: app/Http/Controllers/Assets/AssetCheckoutController.php
22462210

2247-
-
2248-
message: '#^Unreachable statement \- code above always terminates\.$#'
2249-
identifier: deadCode.unreachable
2250-
count: 1
2251-
path: app/Http/Controllers/Assets/AssetCheckoutController.php
2252-
22532211
-
22542212
message: '#^Using nullsafe property access "\?\-\>name" on left side of \?\? is unnecessary\. Use \-\> instead\.$#'
22552213
identifier: nullsafe.neverNull
@@ -2370,24 +2328,12 @@ parameters:
23702328
count: 2
23712329
path: app/Http/Controllers/Assets/AssetsController.php
23722330

2373-
-
2374-
message: '#^Unreachable statement \- code above always terminates\.$#'
2375-
identifier: deadCode.unreachable
2376-
count: 1
2377-
path: app/Http/Controllers/Assets/AssetsController.php
2378-
23792331
-
23802332
message: '#^Using nullsafe method call on non\-nullable type Illuminate\\Database\\Eloquent\\Relations\\Relation\. Use \-\> instead\.$#'
23812333
identifier: nullsafe.neverNull
23822334
count: 2
23832335
path: app/Http/Controllers/Assets/AssetsController.php
23842336

2385-
-
2386-
message: '#^Variable \$asset in isset\(\) always exists and is not nullable\.$#'
2387-
identifier: isset.variable
2388-
count: 1
2389-
path: app/Http/Controllers/Assets/AssetsController.php
2390-
23912337
-
23922338
message: '#^Variable \$serial_errors in empty\(\) always exists and is always falsy\.$#'
23932339
identifier: empty.variable
@@ -2430,12 +2376,6 @@ parameters:
24302376
count: 1
24312377
path: app/Http/Controllers/Assets/BulkAssetsController.php
24322378

2433-
-
2434-
message: '#^Unreachable statement \- code above always terminates\.$#'
2435-
identifier: deadCode.unreachable
2436-
count: 1
2437-
path: app/Http/Controllers/Assets/BulkAssetsController.php
2438-
24392379
-
24402380
message: '#^Access to an undefined property App\\Http\\Controllers\\Auth\\LoginController\:\:\$decayMinutes\.$#'
24412381
identifier: property.notFound
@@ -2988,12 +2928,6 @@ parameters:
29882928
count: 1
29892929
path: app/Http/Controllers/Kits/CheckoutKitController.php
29902930

2991-
-
2992-
message: '#^Unreachable statement \- code above always terminates\.$#'
2993-
identifier: deadCode.unreachable
2994-
count: 1
2995-
path: app/Http/Controllers/Kits/CheckoutKitController.php
2996-
29972931
-
29982932
message: '#^Access to an undefined property App\\Models\\PredefinedKit\:\:\$created_by\.$#'
29992933
identifier: property.notFound

0 commit comments

Comments
 (0)