/** * Download a file. * * @param FileLocator $locator * @param FileDownloader $downloader * @param $disk * @param $path * @return \Symfony\Component\HttpFoundation\Response */ public function download(FileLocator $locator, FileDownloader $downloader, $disk, $path) { if (!($file = $locator->locate($disk, $path))) { abort(404); } return $downloader->download($file); }
/** * Return thumbnail image. * * @param FileLocator $locator * @param FileImage $thumbnail * @param Request $request * @param Image $image * @param $folder * @param $path * @return \Symfony\Component\HttpFoundation\Response */ public function thumb(FileLocator $locator, FileImage $thumbnail, Image $image, $folder, $name) { if (!($file = $locator->locate($folder, $name))) { abort(404); } $image = $image->make($file); /*foreach ($request->all() as $method => $arguments) { if (in_array($method = camel_case($method), $image->getAllowedMethods())) { call_user_func_array([$image, camel_case($method)], explode(',', $arguments)); } }*/ $image->resize(148, 148); return $thumbnail->generate($image, 75); }