protected function storeOrUpdateCategory(GalleryCategory $category, $request) { $category->name = $request->get('name'); $category->alias = str_replace(' ', '-', strtolower($request->get('alias'))) ?: str_replace(' ', '-', strtolower($request->get('name'))); if (!$category->position) { $category->position = GalleryCategory::all()->count() + 1; } $category->save(); $img_dir = config('gallery.gallery_path') . '/' . $category->id . '/'; if (!file_exists($img_dir)) { mkdir($img_dir, 0777, true); } if ($request->hasFile('thumbnail')) { $thumb = $request->file('thumbnail'); if ($thumb->isValid()) { $img_name = 'cat-thumb.' . $thumb->getExtension(); $img = \Image::make($thumb)->fit(config('gallery.category_thumb_width'), config('gallery.category_thumb_height')); if (file_exists($img_dir . $category->thumbnail)) { unlink($img_dir . $category->thumbnail); } $category->thumbnail = $img_name; $img->save($img_dir . $img_name, 80); } } if ($request->has('description')) { $category->description = $request->get('description'); } $category->save(); return true; }