public function upload(ImageRepo $imageCollection, Request $request, $id) { $campaign = $this->repo->skipPresenter()->find($id); $validation = Validator::make($request->all(), ['image' => 'required|mimes:jpeg,png|max:2024']); if ($validation->fails()) { $messages = $validation->messages(); return response()->json($messages, 422); } $file = $request->file('image'); //create filename from timestamp and filename $name = time() . "_" . $file->getClientOriginalName(); //upload path $path = public_path('content/' . $name); //upload file $img = Image::make($file)->save($path); //get user $user = $this->requestUser(); //attributes $attrs = ["user_id" => $user->id, "path" => 'content/' . $name, "mime" => $img->mime(), "size" => $img->filesize()]; $image = $imageCollection->skipPresenter()->create($attrs); $campaign->images()->save($image); return $imageCollection->skipPresenter(false)->find($image->id); }
public function deleteMedia(ImageRepo $imageCollection, $id, $mid) { $product = $this->products->skipPresenter()->find($id); $image = $imageCollection->skipPresenter()->find(id($mid)); $imageCollection->delete(id($mid)); return response()->json(['message' => "Image deleted"], 200); }