validate(['role' => ['required', 'in:super-admin,admin,dj,client,moderator,support']]); $role = Role::firstOrCreate(['name' => $data['role'], 'guard_name' => 'web']); $user->syncRoles([$role]); app(PermissionRegistrar::class)->forgetCachedPermissions(); return back()->with('success', "{$user->name}'s role has been updated."); } public function toggleDjPublished(DjProfile $djProfile): RedirectResponse { $djProfile->update(['is_published' => ! $djProfile->is_published]); return back()->with('success', 'DJ publication status updated.'); } public function toggleDjFeatured(DjProfile $djProfile): RedirectResponse { $djProfile->update(['is_featured' => ! $djProfile->is_featured]); return back()->with('success', 'DJ featured status updated.'); } public function reviewStatus(Request $request, Review $review): RedirectResponse { $data = $request->validate(['status' => ['required', 'in:pending,published,rejected']]); $review->update($data); return back()->with('success', 'Review moderation status updated.'); } public function clearCaches(): RedirectResponse { Cache::flush(); return back()->with('success', 'Application cache cleared.'); } }