Exemplo n.º 1
0
 /**
  * Store a newly created resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function store(ReferralInformationFormRequest $request)
 {
     $user = Auth::user();
     $referralInformation = new ReferralInformation();
     $referralInformation->fill($request->all());
     $referralInformation->user()->associate($user);
     $referralInformation->save();
     $messageVars = ['referralInformation' => $referralInformation];
     Mail::send('frontend.emails.new_referral_information', $messageVars, function ($m) use($referralInformation) {
         $m->from(config('app.contact_from_email'), config('app.contact_from_name'));
         $sendToEmails = config('app.contact_destination');
         //Find property manager in that province
         $propertyManagers = User::whereHas('roles', function ($query) {
             $query->where('slug', 'property_manager');
         })->whereHas('profile', function ($query) use($referralInformation) {
             $query->where('province', '=', $referralInformation->province);
         })->get();
         foreach ($propertyManagers as $propertyManager) {
             $sendToEmails[] = $propertyManager->email;
         }
         $m->to($sendToEmails)->subject('New Referral Listing Information');
     });
     return redirect()->route($user->backendAccess . '.referrals.index')->with('messages', ['Terima kasih untuk referensi properti kamu. Kami akan segera melakukan follow-up kepada Owner properti ini.']);
 }