/** * store Contact. * * @param Business $business Business that will hold the Contact * @param ContactFormRequest $request Contact form Request * * @return Response Rendered view or Redirect */ public function store(Business $business, ContactFormRequest $request) { logger()->info(__METHOD__); logger()->info(sprintf('businessId:%s', $business->id)); $this->authorize('manageContacts', $business); // BEGIN // $contact = $this->contactService->register($business, $request->all()); if (!$contact->wasRecentlyCreated) { flash()->warning(trans('manager.contacts.msg.store.warning_showing_existing_contact')); return redirect()->route('manager.addressbook.show', [$business, $contact]); } flash()->success(trans('manager.contacts.msg.store.success')); return redirect()->route('manager.addressbook.show', [$business, $contact]); }
/** * store Contact. * * @param Business $business Business that holds the Contact * @param AlterContactRequest $request Alter Contact Request * * @return Response View for created Contact * or Redirect */ public function store(Business $business, AlterContactRequest $request) { logger()->info(__METHOD__); // BEGIN $businessName = $business->name; Notifynder::category('user.subscribedBusiness')->from('App\\Models\\User', auth()->user()->id)->to('App\\Models\\Business', $business->id)->url('http://localhost')->extra(compact('businessName'))->send(); $existingContacts = $this->contactService->findExistingContactsByEmail($request->input('email')); foreach ($existingContacts as $existingContact) { if ($existingContact->isSubscribedTo($business)) { auth()->user()->contacts()->save($existingContact); flash()->warning(trans('user.contacts.msg.store.warning.already_registered')); return redirect()->route('user.business.contact.show', [$business, $existingContact]); } } $contact = $this->contactService->register($business, Request::all()); $this->contactService->linkToUser($contact, auth()->user()); event(new NewContactWasRegistered($contact)); flash()->success(trans('user.contacts.msg.store.success')); return redirect()->route('user.business.contact.show', [$business, $contact]); }