public function postNewReferrals() { if (Input::has('emails')) { $emails = explode(',', Input::get('emails')); foreach ($emails as $email) { $referral = UserReferral::where('referral_id', Auth::user()->id)->where('email', $email)->first(); if (sizeof($referral) > 0) { //Send email if tries less than 3 else skip if ($referral->tries < 5) { $referral->tries = $referral->tries + 1; $referral->save(); } else { continue; } } else { $user_referral = new UserReferral(); $user_referral->user_id = 0; $user_referral->referral_id = Auth::user()->id; $user_referral->email = $email; $user_referral->tries = 1; $user_referral->save(); } } Session::flash('success_msg', 'Referral email sent successfully'); return Redirect::back(); } else { Session::flash('error_msg', 'Please enter emails to sent referral email'); return Redirect::back(); } }
public function getUpChain($user_id) { //Find if any one referred this user if yes always will be only 1 $user = UserReferral::where('user_id', $user_id)->first(); if (!empty($user)) { array_push($this->chain, $user->user_id); $this->depth++; //User have a referral . if ($user->referral_id > 0) { $this->getUpChain($user->referral_id); } } else { //this was first user who started referral system array_push($this->chain, $user_id); array_splice($this->chain, 0, 1); return; } }