/** * Store a newly created resource in storage. * * @param Destination $dest * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Destination $dest, Request $request) { $photo_url = $request->input('photo_url'); $photo_like = $request->input('photo_like', 0); $photo_csvFile = database_path('seeds/csv/Photo.csv'); $csv = new CSV(); $photo_csvContent = $csv->fromFile($photo_csvFile)->toArray(); $photo_added = array(['username' => \Auth::user()->username, 'des_id' => $dest->des_id, 'photo_like' => $photo_like, 'photo_sample_name' => $photo_url]); array_push($photo_csvContent, $photo_added); $csv->with($photo_csvContent)->put($photo_csvFile); // insert image to database $uploadtime = time(); $img_ext = pathinfo($photo_url, PATHINFO_EXTENSION) || 'jpg'; $hash = uniqid($uploadtime, true); $local_imgname = $hash . '.' . $img_ext; Storage::put('/imgtemp/' . $local_imgname, file_get_contents($photo_url)); /** @var Photo $photo */ $photo = Photo::create(array('username' => \Auth::user()->username, 'des_id' => $dest->des_id, 'photo_like' => $photo_like, 'photo_hash' => $hash, 'photo_uptime' => $uploadtime, 'photo_extensions' => $img_ext)); return response()->json($photo, 200); }