diff --git a/addons/default/visiosoft/cats-module/src/Http/Controller/Admin/CategoryController.php b/addons/default/visiosoft/cats-module/src/Http/Controller/Admin/CategoryController.php index ade5658ea..b5941ed38 100644 --- a/addons/default/visiosoft/cats-module/src/Http/Controller/Admin/CategoryController.php +++ b/addons/default/visiosoft/cats-module/src/Http/Controller/Admin/CategoryController.php @@ -1,13 +1,12 @@ request->file('icon') and $folder = $folderRepository->findBySlug('category_icon') and $category = $this->categoryRepository->find($category_id)) { - $type = explode('.', $file->getClientOriginalName()); + if ($request_file = $this->request->file('icon') and $folder = $folderRepository->findBySlug('category_icon') and $category = $this->categoryRepository->find($category_id)) { + $type = explode('.', $request_file->getClientOriginalName()); $type = end($type); - $file_location = $folder->getDisk()->getSlug() . '://' . $folder->getSlug() . '/' . FileSanitizer::clean($category_id . "." . $type); + $filename = $category_id . "." . $type; - $file_url = '/files/' . $folder->getSlug() . '/' . FileSanitizer::clean($category_id . "." . $type); - - if (Storage::exists($file_location)) { - Storage::delete($file_location); + if ($file = $fileRepository->findByNameAndFolder($filename, $folder)) { + $file->forceDelete(); } try { - $manager->put($file_location, file_get_contents($file->getRealPath())); + $file = new UploadedFile($request_file->getPathname(), + $filename, + $request_file->getClientMimeType(), + $request_file->getError()); - $category->setCategoryIconUrl($file_url); + $file = $uploader->upload($file, $folder); + $category->setCategoryIconUrl($file->make()->url()); } catch (\Exception $exception) { - $this->messages->error([$exception->getMessage()]); + $this->messages->error($exception->getMessage()); } } } - public function import(FormBuilder $builder, FileRepositoryInterface $fileRepository){ + public function import(FormBuilder $builder, FileRepositoryInterface $fileRepository) + { if (request()->action == "save" and $file = $fileRepository->find(request()->file)) { if ($file->extension === 'xls' || $file->extension === 'xlsx') { @@ -308,7 +311,8 @@ class CategoryController extends AdminController return $builder->render(); } - public function export(){ + public function export() + { return Excel::download(new CategoryExport(), 'cats-' . time() . '.xlsx'); }