orderBy('platform_instance_id') ->orderBy('name') ->get(); return view('pages.communities.index', compact('communities')); } public function create(): View { $instances = PlatformInstance::where('is_active', true) ->orderBy('name') ->get(); return view('pages.communities.create', compact('instances')); } public function store(Request $request): RedirectResponse { $validated = $request->validate([ 'platform_instance_id' => 'required|exists:platform_instances,id', 'name' => 'required|string|max:255', 'display_name' => 'required|string|max:255', 'community_id' => 'required|string|max:255', 'description' => 'nullable|string', ]); Community::create($validated); return redirect()->route('communities.index') ->with('success', 'Community created successfully!'); } public function edit(Community $community): View { $instances = PlatformInstance::where('is_active', true) ->orderBy('name') ->get(); return view('pages.communities.edit', compact('community', 'instances')); } public function update(Request $request, Community $community): RedirectResponse { $validated = $request->validate([ 'platform_instance_id' => 'required|exists:platform_instances,id', 'name' => 'required|string|max:255', 'display_name' => 'required|string|max:255', 'community_id' => 'required|string|max:255', 'description' => 'nullable|string', ]); $community->update($validated); return redirect()->route('communities.index') ->with('success', 'Community updated successfully!'); } public function destroy(Community $community): RedirectResponse { $community->delete(); return redirect()->route('communities.index') ->with('success', 'Community deleted successfully!'); } }