diff --git a/app/Http/Controllers/Common/BulkActions.php b/app/Http/Controllers/Common/BulkActions.php index 314cc4f49..28fe4af67 100644 --- a/app/Http/Controllers/Common/BulkActions.php +++ b/app/Http/Controllers/Common/BulkActions.php @@ -4,6 +4,7 @@ namespace App\Http\Controllers\Common; use App\Abstracts\Http\Controller; use App\Http\Requests\Common\BulkAction as Request; +use Illuminate\Http\RedirectResponse; use Illuminate\Support\Str; class BulkActions extends Controller @@ -57,6 +58,14 @@ class BulkActions extends Controller if (!empty($result) && ($result instanceof \Symfony\Component\HttpFoundation\BinaryFileResponse)) { return $result; + } elseif (!empty($result) && ($result instanceof RedirectResponse)) { + return response()->json([ + 'success' => true, + 'redirect' => $result->getTargetUrl(), + 'error' => false, + 'data' => [], + 'message' => '' + ]); } else { return response()->json([ 'success' => true, diff --git a/resources/assets/js/plugins/bulk-action.js b/resources/assets/js/plugins/bulk-action.js index 0522c29ee..5af19bddc 100644 --- a/resources/assets/js/plugins/bulk-action.js +++ b/resources/assets/js/plugins/bulk-action.js @@ -152,8 +152,10 @@ export default class BulkAction { })); type_promise.then(response => { - if (response.data.redirect) { + if (response.data.redirect === true) { window.location.reload(false); + } else if (typeof response.data.redirect === 'string') { + window.location.href = response.data.redirect; } }) .catch(error => {