oldest() ->get(); $users = User::query() ->orderByProfileField("last_name") ->orderByProfileField("first_name") ->get(); return inertia("Keys", [ "keys" => KeyResource::collection($keys), "users" => SimpleUserResource::collection($users), "can" => [ "manageKeys" => $request->user()->can("manage", Key::class), ], ]); } /** * @throws AuthorizationException */ public function store(Request $request): RedirectResponse { $this->authorize("manageKeys"); $request->user()->keys()->create(); return redirect() ->back() ->with("success", __("Key has been created.")); } public function take(Key $key, Request $request): RedirectResponse { $key->user()->associate($request->user()); $key->save(); return redirect() ->back() ->with("success", __("Key has been taken.")); } public function give(Key $key, GiveKeyRequest $request): RedirectResponse { $key->user()->associate($request->recipient()); $key->save(); return redirect() ->back() ->with("success", __("Key has been given.")); } public function destroy(Key $key): RedirectResponse { $this->authorize("manageKeys"); $key->delete(); return redirect() ->back() ->with("success", __("Key has been deleted.")); } }