/** * @param \Seat\Notifications\Http\Validation\GroupIntegration $request * * @return \Illuminate\Http\RedirectResponse */ public function postAddIntegrations(GroupIntegration $request) { $group = NotificationGroup::findOrFail($request->input('id')); // Attach the integrations to the group. foreach ($request->integrations as $integration_id) { $integration = Integration::find($integration_id); // Make sure only one integration type is added. if ($group->integrations->contains('type', $integration->type)) { return redirect()->back()->with('warning', 'A ' . $integration->type . ' integration already exists. Please choose another type.'); } // Add the integration if (!$group->integrations->contains($integration_id)) { $group->integrations()->attach(Integration::findOrFail($integration_id)); } } return redirect()->back()->with('success', 'Integrations Added!'); }