diff --git a/app/Helpers/Helper.php b/app/Helpers/Helper.php index 176e38f7f5..19949eefc3 100644 --- a/app/Helpers/Helper.php +++ b/app/Helpers/Helper.php @@ -13,6 +13,7 @@ use App\Models\Setting; use App\Models\Statuslabel; use App\Models\License; use App\Models\Location; +use Illuminate\Http\RedirectResponse; use Illuminate\Support\Facades\Crypt; use Illuminate\Contracts\Encryption\DecryptException; use Carbon\Carbon; @@ -1510,68 +1511,64 @@ class Helper } - static public function getRedirectOption($request, $id, $table, $item_id = null) + static public function getRedirectOption($request, $id, $table, $item_id = null) : RedirectResponse { - $redirect_option = Session::get('redirect_option'); - $checkout_to_type = Session::get('checkout_to_type'); + $redirect_option = Session::get('redirect_option') ?? $request->redirect_option; + $checkout_to_type = Session::get('checkout_to_type') ?? null; $checkedInFrom = Session::get('checkedInFrom'); $other_redirect = Session::get('other_redirect'); + $backUrl = Session::pull('back_url', route('home')); + + // return to previous page + if ($redirect_option === 'back') { + if ($backUrl === route('home')) { + return redirect()->to($backUrl) + ->with('warning', trans('general.page_error')); + } + + return redirect()->to($backUrl); + } // return to index if ($redirect_option == 'index') { - switch ($table) { - case "Assets": - return route('hardware.index'); - case "Users": - return route('users.index'); - case "Licenses": - return route('licenses.index'); - case "Accessories": - return route('accessories.index'); - case "Components": - return route('components.index'); - case "Consumables": - return route('consumables.index'); - } + return match ($table) { + 'Assets' => redirect()->route('hardware.index'), + 'Users' => redirect()->route('users.index'), + 'Licenses' => redirect()->route('licenses.index'), + 'Accessories' => redirect()->route('accessories.index'), + 'Components' => redirect()->route('components.index'), + 'Consumables' => redirect()->route('consumables.index'), + }; } // return to thing being assigned if ($redirect_option == 'item') { - switch ($table) { - case "Assets": - return route('hardware.show', $id ?? $item_id); - case "Users": - return route('users.show', $id ?? $item_id); - case "Licenses": - return route('licenses.show', $id ?? $item_id); - case "Accessories": - return route('accessories.show', $id ?? $item_id); - case "Components": - return route('components.show', $id ?? $item_id); - case "Consumables": - return route('consumables.show', $id ?? $item_id); - } + return match ($table) { + 'Assets' => redirect()->route('hardware.show', $id ?? $item_id), + 'Users' => redirect()->route('users.show', $id ?? $item_id), + 'Licenses' => redirect()->route('licenses.show', $id ?? $item_id), + 'Accessories' => redirect()->route('accessories.show', $id ?? $item_id), + 'Components' => redirect()->route('components.show', $id ?? $item_id), + 'Consumables' => redirect()->route('consumables.show', $id ?? $item_id), + }; } // return to assignment target if ($redirect_option == 'target') { - switch ($checkout_to_type) { - case 'user': - return route('users.show', $request->assigned_user ?? $checkedInFrom); - case 'location': - return route('locations.show', $request->assigned_location ?? $checkedInFrom); - case 'asset': - return route('hardware.show', $request->assigned_asset ?? $checkedInFrom); - } + return match ($checkout_to_type) { + 'user' => redirect()->route('users.show', $request->assigned_user ?? $checkedInFrom), + 'location' => redirect()->route('locations.show', $request->assigned_location ?? $checkedInFrom), + 'asset' => redirect()->route('hardware.show', $request->assigned_asset ?? $checkedInFrom), + }; } // return to somewhere else if ($redirect_option == 'other_redirect') { - switch ($other_redirect) { - case 'audit': - return route('assets.audit.due'); - } + return match ($other_redirect) { + 'audit' => redirect()->route('assets.audit.due'), + 'model' => redirect()->route('models.show', $request->model_id), + }; } diff --git a/app/Http/Controllers/Accessories/AccessoriesController.php b/app/Http/Controllers/Accessories/AccessoriesController.php index 66a914e9a9..20a6266474 100755 --- a/app/Http/Controllers/Accessories/AccessoriesController.php +++ b/app/Http/Controllers/Accessories/AccessoriesController.php @@ -83,7 +83,8 @@ class AccessoriesController extends Controller // Was the accessory created? if ($accessory->save()) { // Redirect to the new accessory page - return redirect()->to(Helper::getRedirectOption($request, $accessory->id, 'Accessories'))->with('success', trans('admin/accessories/message.create.success')); + return Helper::getRedirectOption($request, $accessory->id, 'Accessories') + ->with('success', trans('admin/accessories/message.create.success')); } return redirect()->back()->withInput()->withErrors($accessory->getErrors()); @@ -167,7 +168,8 @@ class AccessoriesController extends Controller session()->put(['redirect_option' => $request->get('redirect_option')]); if ($accessory->save()) { - return redirect()->to(Helper::getRedirectOption($request, $accessory->id, 'Accessories'))->with('success', trans('admin/accessories/message.update.success')); + return Helper::getRedirectOption($request, $accessory->id, 'Accessories') + ->with('success', trans('admin/accessories/message.update.success')); } } else { return redirect()->route('accessories.index')->with('error', trans('admin/accessories/message.does_not_exist')); diff --git a/app/Http/Controllers/Accessories/AccessoryCheckinController.php b/app/Http/Controllers/Accessories/AccessoryCheckinController.php index ab24200d78..a7655a278b 100644 --- a/app/Http/Controllers/Accessories/AccessoryCheckinController.php +++ b/app/Http/Controllers/Accessories/AccessoryCheckinController.php @@ -78,7 +78,8 @@ class AccessoryCheckinController extends Controller session()->put(['redirect_option' => $request->get('redirect_option')]); - return redirect()->to(Helper::getRedirectOption($request, $accessory->id, 'Accessories'))->with('success', trans('admin/accessories/message.checkin.success')); + return Helper::getRedirectOption($request, $accessory->id, 'Accessories') + ->with('success', trans('admin/accessories/message.checkin.success')); } // Redirect to the accessory management page with error return redirect()->route('accessories.index')->with('error', trans('admin/accessories/message.checkin.error')); diff --git a/app/Http/Controllers/Accessories/AccessoryCheckoutController.php b/app/Http/Controllers/Accessories/AccessoryCheckoutController.php index 58ce787245..05d60fcbfe 100644 --- a/app/Http/Controllers/Accessories/AccessoryCheckoutController.php +++ b/app/Http/Controllers/Accessories/AccessoryCheckoutController.php @@ -97,7 +97,7 @@ class AccessoryCheckoutController extends Controller // Redirect to the new accessory page - return redirect()->to(Helper::getRedirectOption($request, $accessory->id, 'Accessories')) + return Helper::getRedirectOption($request, $accessory->id, 'Accessories') ->with('success', trans('admin/accessories/message.checkout.success')); } } diff --git a/app/Http/Controllers/Assets/AssetCheckinController.php b/app/Http/Controllers/Assets/AssetCheckinController.php index 3e1b75a4d7..62e8e59ca8 100644 --- a/app/Http/Controllers/Assets/AssetCheckinController.php +++ b/app/Http/Controllers/Assets/AssetCheckinController.php @@ -153,7 +153,8 @@ class AssetCheckinController extends Controller if ($asset->save()) { event(new CheckoutableCheckedIn($asset, $target, auth()->user(), $request->input('note'), $checkin_at, $originalValues)); - return redirect()->to(Helper::getRedirectOption($request, $asset->id, 'Assets'))->with('success', trans('admin/hardware/message.checkin.success')); + return Helper::getRedirectOption($request, $asset->id, 'Assets') + ->with('success', trans('admin/hardware/message.checkin.success')); } // Redirect to the asset management page with error return redirect()->route('hardware.index')->with('error', trans('admin/hardware/message.checkin.error').$asset->getErrors()); diff --git a/app/Http/Controllers/Assets/AssetCheckoutController.php b/app/Http/Controllers/Assets/AssetCheckoutController.php index da2c0a2550..0ea9b36418 100644 --- a/app/Http/Controllers/Assets/AssetCheckoutController.php +++ b/app/Http/Controllers/Assets/AssetCheckoutController.php @@ -123,7 +123,7 @@ class AssetCheckoutController extends Controller session()->put(['redirect_option' => $request->get('redirect_option'), 'checkout_to_type' => $request->get('checkout_to_type')]); if ($asset->checkOut($target, $admin, $checkout_at, $expected_checkin, $request->get('note'), $request->get('name'))) { - return redirect()->to(Helper::getRedirectOption($request, $asset->id, 'Assets')) + return Helper::getRedirectOption($request, $asset->id, 'Assets') ->with('success', trans('admin/hardware/message.checkout.success')); } // Redirect to the asset management page with error diff --git a/app/Http/Controllers/Assets/AssetsController.php b/app/Http/Controllers/Assets/AssetsController.php index 03486ffe82..39bfdd3e85 100755 --- a/app/Http/Controllers/Assets/AssetsController.php +++ b/app/Http/Controllers/Assets/AssetsController.php @@ -233,18 +233,18 @@ class AssetsController extends Controller if ($successes) { if ($failures) { //some succeeded, some failed - return redirect()->to(Helper::getRedirectOption($request, $asset->id, 'Assets')) //FIXME - not tested + return Helper::getRedirectOption($request, $asset->id, 'Assets') //FIXME - not tested ->with('success-unescaped', trans_choice('admin/hardware/message.create.multi_success_linked', $successes, ['links' => join(", ", $successes)])) ->with('warning', trans_choice('admin/hardware/message.create.partial_failure', $failures, ['failures' => join("; ", $failures)])); } else { if (count($successes) == 1) { //the most common case, keeping it so we don't have to make every use of that translation string be trans_choice'ed //and re-translated - return redirect()->to(Helper::getRedirectOption($request, $asset->id, 'Assets')) + return Helper::getRedirectOption($request, $asset->id, 'Assets') ->with('success-unescaped', trans('admin/hardware/message.create.success_linked', ['link' => route('hardware.show', $asset), 'id', 'tag' => e($asset->asset_tag)])); } else { //multi-success - return redirect()->to(Helper::getRedirectOption($request, $asset->id, 'Assets')) + return Helper::getRedirectOption($request, $asset->id, 'Assets') ->with('success-unescaped', trans_choice('admin/hardware/message.create.multi_success_linked', $successes, ['links' => join(", ", $successes)])); } } @@ -265,6 +265,7 @@ class AssetsController extends Controller public function edit(Asset $asset) : View | RedirectResponse { $this->authorize($asset); + session()->put('back_url', url()->previous()); return view('hardware/edit') ->with('item', $asset) ->with('statuslabel_list', Helper::statusLabelList()) @@ -427,11 +428,15 @@ class AssetsController extends Controller } } } + session()->put([ + 'redirect_option' => $request->get('redirect_option'), + 'checkout_to_type' => $request->get('checkout_to_type'), + 'other_redirect' => $request->get('redirect_option') === 'other_redirect' ? 'model' : null, + ]); - session()->put(['redirect_option' => $request->get('redirect_option'), 'checkout_to_type' => $request->get('checkout_to_type')]); if ($asset->save()) { - return redirect()->to(Helper::getRedirectOption($request, $asset->id, 'Assets')) + return Helper::getRedirectOption($request, $asset->id, 'Assets') ->with('success', trans('admin/hardware/message.update.success')); } @@ -996,7 +1001,7 @@ class AssetsController extends Controller } $asset->logAudit($request->input('note'), $request->input('location_id'), $file_name, $originalValues); - return redirect()->to(Helper::getRedirectOption($request, $asset->id, 'Assets'))->with('success', trans('admin/hardware/message.audit.success')); + return Helper::getRedirectOption($request, $asset->id, 'Assets')->with('success', trans('admin/hardware/message.audit.success')); } return redirect()->back()->withInput()->withErrors($asset->getErrors()); diff --git a/app/Http/Controllers/Components/ComponentCheckinController.php b/app/Http/Controllers/Components/ComponentCheckinController.php index 379882c3c5..b784576122 100644 --- a/app/Http/Controllers/Components/ComponentCheckinController.php +++ b/app/Http/Controllers/Components/ComponentCheckinController.php @@ -100,8 +100,8 @@ class ComponentCheckinController extends Controller session()->put(['redirect_option' => $request->get('redirect_option')]); - return redirect()->to(Helper::getRedirectOption($request, $component->id, 'Components'))->with('success', - trans('admin/components/message.checkin.success')); + return Helper::getRedirectOption($request, $component->id, 'Components') + ->with('success', trans('admin/components/message.checkin.success')); } return redirect()->route('components.index')->with('error', trans('admin/components/message.does_not_exist')); diff --git a/app/Http/Controllers/Components/ComponentCheckoutController.php b/app/Http/Controllers/Components/ComponentCheckoutController.php index b40d592369..4abf426de3 100644 --- a/app/Http/Controllers/Components/ComponentCheckoutController.php +++ b/app/Http/Controllers/Components/ComponentCheckoutController.php @@ -120,6 +120,7 @@ class ComponentCheckoutController extends Controller session()->put(['redirect_option' => $request->get('redirect_option'), 'checkout_to_type' => $request->get('checkout_to_type')]); - return redirect()->to(Helper::getRedirectOption($request, $component->id, 'Components'))->with('success', trans('admin/components/message.checkout.success')); + return Helper::getRedirectOption($request, $component->id, 'Components') + ->with('success', trans('admin/components/message.checkout.success')); } } diff --git a/app/Http/Controllers/Components/ComponentsController.php b/app/Http/Controllers/Components/ComponentsController.php index 74594d312b..0a4a327167 100644 --- a/app/Http/Controllers/Components/ComponentsController.php +++ b/app/Http/Controllers/Components/ComponentsController.php @@ -91,7 +91,8 @@ class ComponentsController extends Controller session()->put(['redirect_option' => $request->get('redirect_option')]); if ($component->save()) { - return redirect()->to(Helper::getRedirectOption($request, $component->id, 'Components'))->with('success', trans('admin/components/message.create.success')); + return Helper::getRedirectOption($request, $component->id, 'Components') + ->with('success', trans('admin/components/message.create.success')); } return redirect()->back()->withInput()->withErrors($component->getErrors()); @@ -111,6 +112,7 @@ class ComponentsController extends Controller { $this->authorize('update', $component); + session()->put('back_url', url()->previous()); return view('components/edit') ->with('item', $component) ->with('category_type', 'component'); @@ -164,7 +166,8 @@ class ComponentsController extends Controller session()->put(['redirect_option' => $request->get('redirect_option')]); if ($component->save()) { - return redirect()->to(Helper::getRedirectOption($request, $component->id, 'Components'))->with('success', trans('admin/components/message.update.success')); + return Helper::getRedirectOption($request, $component->id, 'Components') + ->with('success', trans('admin/components/message.update.success')); } return redirect()->back()->withInput()->withErrors($component->getErrors()); diff --git a/app/Http/Controllers/Consumables/ConsumableCheckoutController.php b/app/Http/Controllers/Consumables/ConsumableCheckoutController.php index e08da41229..3e972e1085 100644 --- a/app/Http/Controllers/Consumables/ConsumableCheckoutController.php +++ b/app/Http/Controllers/Consumables/ConsumableCheckoutController.php @@ -111,6 +111,7 @@ class ConsumableCheckoutController extends Controller // Redirect to the new consumable page - return redirect()->to(Helper::getRedirectOption($request, $consumable->id, 'Consumables'))->with('success', trans('admin/consumables/message.checkout.success')); + return Helper::getRedirectOption($request, $consumable->id, 'Consumables') + ->with('success', trans('admin/consumables/message.checkout.success')); } } diff --git a/app/Http/Controllers/Consumables/ConsumablesController.php b/app/Http/Controllers/Consumables/ConsumablesController.php index c96c2db975..dc0b7e4b3d 100644 --- a/app/Http/Controllers/Consumables/ConsumablesController.php +++ b/app/Http/Controllers/Consumables/ConsumablesController.php @@ -90,7 +90,8 @@ class ConsumablesController extends Controller session()->put(['redirect_option' => $request->get('redirect_option')]); if ($consumable->save()) { - return redirect()->to(Helper::getRedirectOption($request, $consumable->id, 'Consumables'))->with('success', trans('admin/consumables/message.create.success')); + return Helper::getRedirectOption($request, $consumable->id, 'Consumables') + ->with('success', trans('admin/consumables/message.create.success')); } return redirect()->back()->withInput()->withErrors($consumable->getErrors()); @@ -107,6 +108,7 @@ class ConsumablesController extends Controller public function edit(Consumable $consumable) : View | RedirectResponse { $this->authorize($consumable); + session()->put('back_url', url()->previous()); return view('consumables/edit') ->with('item', $consumable) ->with('category_type', 'consumable'); @@ -160,7 +162,8 @@ class ConsumablesController extends Controller session()->put(['redirect_option' => $request->get('redirect_option')]); if ($consumable->save()) { - return redirect()->to(Helper::getRedirectOption($request, $consumable->id, 'Consumables'))->with('success', trans('admin/consumables/message.update.success')); + return Helper::getRedirectOption($request, $consumable->id, 'Consumables') + ->with('success', trans('admin/consumables/message.update.success')); } return redirect()->back()->withInput()->withErrors($consumable->getErrors()); diff --git a/app/Http/Controllers/Licenses/LicenseCheckinController.php b/app/Http/Controllers/Licenses/LicenseCheckinController.php index de115af543..92bc3db6eb 100644 --- a/app/Http/Controllers/Licenses/LicenseCheckinController.php +++ b/app/Http/Controllers/Licenses/LicenseCheckinController.php @@ -105,7 +105,8 @@ class LicenseCheckinController extends Controller event(new CheckoutableCheckedIn($licenseSeat, $return_to, auth()->user(), $request->input('notes'))); - return redirect()->to(Helper::getRedirectOption($request, $license->id, 'Licenses'))->with('success', trans('admin/licenses/message.checkin.success')); + return Helper::getRedirectOption($request, $license->id, 'Licenses') + ->with('success', trans('admin/licenses/message.checkin.success')); } // Redirect to the license page with error diff --git a/app/Http/Controllers/Licenses/LicenseCheckoutController.php b/app/Http/Controllers/Licenses/LicenseCheckoutController.php index 564ce97a89..e2225442b3 100644 --- a/app/Http/Controllers/Licenses/LicenseCheckoutController.php +++ b/app/Http/Controllers/Licenses/LicenseCheckoutController.php @@ -89,7 +89,8 @@ class LicenseCheckoutController extends Controller if ($checkoutTarget) { - return redirect()->to(Helper::getRedirectOption($request, $license->id, 'Licenses'))->with('success', trans('admin/licenses/message.checkout.success')); + return Helper::getRedirectOption($request, $license->id, 'Licenses') + ->with('success', trans('admin/licenses/message.checkout.success')); } diff --git a/app/Http/Controllers/Licenses/LicensesController.php b/app/Http/Controllers/Licenses/LicensesController.php index ab1e3868d2..458b1ce15b 100755 --- a/app/Http/Controllers/Licenses/LicensesController.php +++ b/app/Http/Controllers/Licenses/LicensesController.php @@ -105,7 +105,8 @@ class LicensesController extends Controller session()->put(['redirect_option' => $request->get('redirect_option')]); if ($license->save()) { - return redirect()->to(Helper::getRedirectOption($request, $license->id, 'Licenses'))->with('success', trans('admin/licenses/message.create.success')); + return Helper::getRedirectOption($request, $license->id, 'Licenses') + ->with('success', trans('admin/licenses/message.create.success')); } return redirect()->back()->withInput()->withErrors($license->getErrors()); @@ -125,7 +126,7 @@ class LicensesController extends Controller { $this->authorize('update', $license); - + session()->put('back_url', url()->previous()); $maintained_list = [ '' => 'Maintained', '1' => 'Yes', @@ -181,7 +182,8 @@ class LicensesController extends Controller session()->put(['redirect_option' => $request->get('redirect_option')]); if ($license->save()) { - return redirect()->to(Helper::getRedirectOption($request, $license->id, 'Licenses'))->with('success', trans('admin/licenses/message.update.success')); + return Helper::getRedirectOption($request, $license->id, 'Licenses') + ->with('success', trans('admin/licenses/message.update.success')); } // If we can't adjust the number of seats, the error is flashed to the session by the event handler in License.php return redirect()->back()->withInput()->withErrors($license->getErrors()); diff --git a/app/Http/Controllers/Users/UsersController.php b/app/Http/Controllers/Users/UsersController.php index b18a7b6fff..2e4ec50e93 100755 --- a/app/Http/Controllers/Users/UsersController.php +++ b/app/Http/Controllers/Users/UsersController.php @@ -154,7 +154,8 @@ class UsersController extends Controller $user->notify(new WelcomeNotification($data)); } - return redirect()->to(Helper::getRedirectOption($request, $user->id, 'Users'))->with('success', trans('admin/users/message.success.create')); + return Helper::getRedirectOption($request, $user->id, 'Users') + ->with('success', trans('admin/users/message.success.create')); } return redirect()->back()->withInput()->withErrors($user->getErrors()); @@ -186,6 +187,7 @@ class UsersController extends Controller { $this->authorize('update', User::class); + session()->put('back_url', url()->previous()); $user = User::with(['assets', 'assets.model', 'consumables', 'accessories', 'licenses', 'userloc'])->withTrashed()->find($user->id); if ($user) { @@ -312,7 +314,7 @@ class UsersController extends Controller if ($user->save()) { // Redirect to the user page - return redirect()->to(Helper::getRedirectOption($request, $user->id, 'Users')) + return Helper::getRedirectOption($request, $user->id, 'Users') ->with('success', trans('admin/users/message.success.update')); } return redirect()->back()->withInput()->withErrors($user->getErrors()); diff --git a/resources/lang/en-US/general.php b/resources/lang/en-US/general.php index f41afdc500..8ef27aac6b 100644 --- a/resources/lang/en-US/general.php +++ b/resources/lang/en-US/general.php @@ -225,11 +225,13 @@ return [ 'order_number' => 'Order Number', 'only_deleted' => 'Only Deleted Assets', 'page_menu' => 'Showing _MENU_ items', + 'page_error' => 'Could not determine previous page. Redirected to homepage.', 'pagination_info' => 'Showing _START_ to _END_ of _TOTAL_ items', 'pending' => 'Pending', 'people' => 'People', 'per_page' => 'Results Per Page', 'previous' => 'Previous', + 'previous_page' => 'Previous Page', 'processing' => 'Processing', 'profile' => 'Your profile', 'purchase_cost' => 'Purchase Cost', diff --git a/resources/views/components/edit.blade.php b/resources/views/components/edit.blade.php index 979d68248c..b9a393f1d1 100644 --- a/resources/views/components/edit.blade.php +++ b/resources/views/components/edit.blade.php @@ -6,6 +6,7 @@ 'formAction' => (isset($item->id)) ? route('components.update', ['component' => $item->id]) : route('components.store'), 'index_route' => 'components.index', 'options' => [ + 'back' => trans('admin/hardware/form.redirect_to_type',['type' => trans('general.previous_page')]), 'index' => trans('admin/hardware/form.redirect_to_all', ['type' => 'components']), 'item' => trans('admin/hardware/form.redirect_to_type', ['type' => trans('general.component')]), ] diff --git a/resources/views/consumables/edit.blade.php b/resources/views/consumables/edit.blade.php index e844338fa7..5b8dd736c6 100644 --- a/resources/views/consumables/edit.blade.php +++ b/resources/views/consumables/edit.blade.php @@ -6,6 +6,7 @@ 'formAction' => (isset($item->id)) ? route('consumables.update', ['consumable' => $item->id]) : route('consumables.store'), 'index_route' => 'consumables.index', 'options' => [ + 'back' => trans('admin/hardware/form.redirect_to_type',['type' => trans('general.previous_page')]), 'index' => trans('admin/hardware/form.redirect_to_all', ['type' => 'consumables']), 'item' => trans('admin/hardware/form.redirect_to_type', ['type' => trans('general.consumable')]), ] diff --git a/resources/views/hardware/edit.blade.php b/resources/views/hardware/edit.blade.php index 3253e8c5c0..75c78ef830 100755 --- a/resources/views/hardware/edit.blade.php +++ b/resources/views/hardware/edit.blade.php @@ -8,8 +8,10 @@ 'formAction' => ($item->id) ? route('hardware.update', $item) : route('hardware.store'), 'index_route' => 'hardware.index', 'options' => [ + 'back' => trans('admin/hardware/form.redirect_to_type',['type' => trans('general.previous_page')]), 'index' => trans('admin/hardware/form.redirect_to_all', ['type' => 'assets']), 'item' => trans('admin/hardware/form.redirect_to_type', ['type' => trans('general.asset')]), + 'other_redirect' => trans('admin/hardware/form.redirect_to_type', [ 'type' => trans('general.asset').' '.trans('general.asset_model')]), ] ]) diff --git a/resources/views/licenses/edit.blade.php b/resources/views/licenses/edit.blade.php index 7bb12728bc..87b0180216 100755 --- a/resources/views/licenses/edit.blade.php +++ b/resources/views/licenses/edit.blade.php @@ -5,6 +5,7 @@ 'formAction' => ($item->id) ? route('licenses.update', ['license' => $item->id]) : route('licenses.store'), 'index_route' => 'licenses.index', 'options' => [ + 'back' => trans('admin/hardware/form.redirect_to_type',['type' => trans('general.previous_page')]), 'index' => trans('admin/hardware/form.redirect_to_all', ['type' => 'licenses']), 'item' => trans('admin/hardware/form.redirect_to_type', ['type' => trans('general.license')]), ] diff --git a/resources/views/users/edit.blade.php b/resources/views/users/edit.blade.php index 78344f5b3f..4e2293f59b 100755 --- a/resources/views/users/edit.blade.php +++ b/resources/views/users/edit.blade.php @@ -599,6 +599,7 @@ index_route="users.index" :button_label="trans('general.save')" :options="[ + 'back' => trans('admin/hardware/form.redirect_to_type',['type' => trans('general.previous_page')]), 'index' => trans('admin/hardware/form.redirect_to_all', ['type' => 'users']), 'item' => trans('admin/hardware/form.redirect_to_type', ['type' => trans('general.user')]), ]" diff --git a/tests/Unit/Helpers/HelperTest.php b/tests/Unit/Helpers/HelperTest.php index 2fb1c58e26..c92ad3d1e9 100644 --- a/tests/Unit/Helpers/HelperTest.php +++ b/tests/Unit/Helpers/HelperTest.php @@ -167,7 +167,8 @@ class HelperTest extends TestCase Session::put('redirect_option', $data['redirect_option']); Session::put('checkout_to_type', $data['checkout_to_type']); - $redirect = redirect()->to(Helper::getRedirectOption($data['request'],$data['id'], $data['table'])); + $redirect = Helper::getRedirectOption($data['request'], $data['id'], $data['table']); + $this->assertInstanceOf(RedirectResponse::class, $redirect); $this->assertEquals($data['route'], $redirect->getTargetUrl(), $scenario.'failed.');