diff --git a/app/Http/Controllers/ResourceEditsController.php b/app/Http/Controllers/ResourceEditsController.php index b69fe3fd..f7390628 100644 --- a/app/Http/Controllers/ResourceEditsController.php +++ b/app/Http/Controllers/ResourceEditsController.php @@ -67,7 +67,7 @@ public function store(ComputerScienceResource $computerScienceResource, StoreRes 'data' => $validatedData, ]); - return redirect()->back()->withErrors(['error' => 'Failed to create resource edit. Please try again.']); + return redirect()->back()->with('error', 'Failed to create resource edit. Please try again.'); } } @@ -137,7 +137,7 @@ public function merge(ResourceEdits $resourceEdits) 'user_id' => Auth::id(), ]); - return redirect()->back()->withErrors(['error' => 'Failed to merge resource edits. Please try again.']); + return redirect()->back()->with('error', 'Failed to merge resource edits. Please try again.'); } } } diff --git a/app/Http/Middleware/HandleInertiaRequests.php b/app/Http/Middleware/HandleInertiaRequests.php index b0395db1..01fc61e6 100644 --- a/app/Http/Middleware/HandleInertiaRequests.php +++ b/app/Http/Middleware/HandleInertiaRequests.php @@ -39,6 +39,7 @@ public function share(Request $request): array 'flash' => [ 'success' => $request->session()->get('success'), 'warning' => $request->session()->get('warning'), + 'error' => $request->session()->get('error'), ], 'config' => [ 'COMMENT_MAX_DEPTH' => config('comment.max_depth'), diff --git a/app/Models/ResourceEdits.php b/app/Models/ResourceEdits.php index f7ac8c8f..3a3ce7fd 100644 --- a/app/Models/ResourceEdits.php +++ b/app/Models/ResourceEdits.php @@ -60,7 +60,7 @@ public function sluggable(): array { return [ 'slug' => [ - 'source' => ['edit_title', 'id'], + 'source' => ['edit_title'], 'unique' => true, ], ]; diff --git a/resources/js/Components/Navigation/BackButton.vue b/resources/js/Components/Navigation/BackButton.vue index 5955674b..7599a795 100644 --- a/resources/js/Components/Navigation/BackButton.vue +++ b/resources/js/Components/Navigation/BackButton.vue @@ -18,6 +18,6 @@ const props = defineProps({ -
+
diff --git a/resources/js/Components/ToastHandler.vue b/resources/js/Components/ToastHandler.vue index 8fc4afa8..0d8ab73d 100644 --- a/resources/js/Components/ToastHandler.vue +++ b/resources/js/Components/ToastHandler.vue @@ -28,6 +28,14 @@ watch( detail: flash.warning, life: TOAST_LIFETIME, }); + + } else if (flash.error) { + toast.add({ + severity: "error", + summary: "Error", + detail: flash.error, + life: TOAST_LIFETIME, + }); } }, { deep: true }, diff --git a/resources/js/Pages/ResourceEdits/Create.vue b/resources/js/Pages/ResourceEdits/Create.vue index d8a9ffdb..cd22ff64 100644 --- a/resources/js/Pages/ResourceEdits/Create.vue +++ b/resources/js/Pages/ResourceEdits/Create.vue @@ -155,7 +155,9 @@ const submit = async () => { tab: 'edits', }) " - /> + > + Back to {{ props.resource.name }} +