referrals; if ($referrals === null || $referrals->referrals_total < (int) setting('referrals_needed')) { return back()->withErrors([ 'message' => __('You do not have enough referrals to claim your reward'), ]); } // Decrease the total amount of referrals with the amount needed to claim reward $referrals->decrement('referrals_total', (int) setting('referrals_needed')); $rcon->giveDiamonds($user, (int) setting('referral_reward_amount')); // Log the claim $user->claimedReferralLog()->create([ 'ip_address' => request()->ip(), ]); return back()->with('success', __('Woah! You have successfully claimed your reward - Keep up the good work!')); } }