public function sendMessage(VolunteerPositionRequest $request) { $data = $request->all(); $data['campus'] = Campus::find($data['campus'])->name; $data['sent_at'] = Carbon::now()->format('D, M j, Y at g:i A'); $data['phone'] = preg_replace('~.*(\\d{3})[^\\d]{0,7}(\\d{3})[^\\d]{0,7}(\\d{4}).*~', '($1) $2-$3', $data['phone']); $to = null; $cc = []; // Hidden field probably means spam if (isset($data['flytrap'])) { $data['subject'] = 'SPAM? --' . $data['subject']; $to = Staff::findBySlug('brad-roberts'); } else { $to = Staff::findBySlug('miles-creasman'); $cc[] = Staff::findBySlug('penny-spivey'); $cc[] = Staff::findBySlug('brad-roberts'); } Mail::queue('emails.volunteer_request', $data, function ($message) use($data, $to, $cc) { $full_name = $data['first_name'] . ' ' . $data['last_name']; $subject = 'Ministry Volunteer' . (empty($data['subject']) ? '' : ' - ' . $data['subject']); $message->from('*****@*****.**', 'Faith Promise Website')->replyTo($data['email'], $full_name)->subject($subject)->to($to->email, $to->name); if (count($cc) > 0) { foreach ($cc as $recipient) { $message->cc($recipient->email, $recipient->name); } } }); }