/** * post Import * * @param Business $business Business to import Contacts to * @param Request $request Submitted form data * @return Response Redirect to Business addressbook */ public function postImport(Business $business, Request $request) { $this->log->info(__METHOD__); $this->log->info(sprintf(" businessId:%s", $business->id)); ////////////////// // FOR REFACTOR // ////////////////// $csv = $this->csvToArray(Request::get('data')); foreach ($csv as $import) { $import = array_map(function ($item) { return $item == 'NULL' ? null : $item; }, $import); if ($import['birthdate'] !== null) { $date = \DateTime::createFromFormat('Ymd', $import['birthdate']); $import['birthdate'] = $date->format('m/d/Y'); } $notes = $import['notes']; unset($import['notes']); $contact = Contact::create($import); $business->contacts()->attach($contact, ['notes' => $notes]); $business->save(); } $count = count($csv); $this->log->info(" Imported {$count} contacts"); Notifynder::category('user.importedContacts')->from('App\\Models\\User', auth()->user()->id)->to('App\\Models\\Business', $business->id)->url('http://localhost')->extra(compact('count'))->send(); Flash::success(trans('manager.contacts.msg.import.success')); return redirect()->route('manager.business.contact.index', [$business]); }
/** * show Contact * * @param Business $business Business holding the Contact * @param Contact $contact Desired Contact to show * @param ViewContactRequest $request Read access Request * @return Response Rendered view of Contact */ public function show(Business $business, Contact $contact, ViewContactRequest $request) { $this->log->info(__METHOD__); $this->log->info(sprintf(" businessId:%s contactId:%s", $business->id, $contact->id)); $memberSince = $business->contacts()->find($contact->id)->pivot->created_at; return view('user.contacts.show', compact('business', 'contact', 'memberSince')); }
private function putUserGuestContactOf(Contact $contact, Business $business) { $business->contacts()->save($contact); }
/** * Update notes from pivot table. * * @param Business $business * @param Contact $contact * @param string $notes * * @return void */ protected function updateNotes(Business $business, Contact $contact, $notes) { if ($notes) { $business->contacts()->find($contact->id)->pivot->update(['notes' => $notes]); } }