public function store(Request $request) { $cafe = $this->cafe->create($request->all()); list($lat, $long) = $this->geolocate($cafe->address, $cafe->city, $cafe->state, $cafe->zip_code, $cafe->country); $cafe->lat = $lat; $cafe->lng = $long; if (!$request['maps_url']) { $cafe->maps_url = 'https://www.google.com/maps/dir/\'\'/' . urlencode($cafe->name) . '/@' . $lat . ',' . $long; } if ($request->hasFile('image')) { // check if previous photo exists and delete it. $cafe->deletePhoto($cafe->image); // generate a random file name $filename = Str::random(10) . time(); // assinged file input to a variable $image = $request['image']; $extension = $image->getClientOriginalExtension(); // open image file $photo = Image::make($image->getRealPath()); $photo->resize(200, null, function ($constraint) { $constraint->aspectRatio(); }); $photo->crop(200, 150); // final file name $filename = $filename . '.' . $extension; // save file with medium quality $photo->save(public_path() . '/uploads/store_images/' . $filename, 100); // get original image file extension // store file name in database $cafe->image = $filename; } $this->nullHoursOnClosed($cafe, $request); $cafe->save(); $this->updatePhoneNumber($cafe, $request); return redirect('admin/cafes/' . $cafe->id . '/edit')->with('success', 'Cafe Created!'); }
/** * Store a newly created resource in storage. * * @return Response */ public function store(Request $request) { return response()->json(Cafe::create($request->all())); }