locations()->orderBy('name')->get(); return LocationResource::collection($locations); } public function store(StoreLocationRequest $request, Event $event): JsonResponse { Gate::authorize('create', [Location::class, $event]); $location = $event->locations()->create($request->validated()); return $this->created(new LocationResource($location)); } public function update(UpdateLocationRequest $request, Event $event, Location $location): JsonResponse { Gate::authorize('update', [$location, $event]); $location->update($request->validated()); return $this->success(new LocationResource($location->fresh())); } public function destroy(Event $event, Location $location): JsonResponse { Gate::authorize('delete', [$location, $event]); $location->delete(); return response()->json(null, 204); } }