events()->get() as $event) { $event->paymentMethods()->detach($availablePaymentMethod->id); $remainingActive = $event->paymentMethods()->where('active', true)->count(); if ($remainingActive === 0 && $event->registration_allowed) { $event->registration_allowed = false; $event->save(); $recipients = $event->eventManagers; if ($event->costUnit !== null) { $recipients = $recipients->merge($event->costUnit->treasurers); } foreach ($recipients->unique('id') as $recipient) { Mail::to($recipient->email)->send(new PaymentMethodsExhaustedMail($event)); } } } } }