Viewing file: CategoryController.php (2.9 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
namespace App\Http\Controllers;
use App\Models\Category; use App\Models\Item; use Illuminate\Http\Request; use Illuminate\Support\Facades\File;
class CategoryController extends Controller { public function index(){ $data['categories']=Category::where('user_id',auth()->user()->id)->get(); return view('category.index',$data); }
// public function show(){ // return true; // } public function create(){ return view('category.create'); } public function store(Request $request){ if(env('APP_DEMO')){ return redirect()->back()->withErrors(['msg' => trans('layout.app_demo_message')]); } $request->validate([ 'name'=>'required|max:191', ]); $request['user_id']=auth()->user()->id; if ($request->hasFile('category_image')) { $file = $request->file('category_image'); $imageName = time() . '.' . $file->getClientOriginalExtension(); $file->move(public_path('/uploads'), $imageName); $request['image']=$imageName; } Category::create($request->all()); return redirect()->route('category.index')->with('success',trans('layout.message.category_store_msg')); } public function edit(Category $category){ $data['category']=$category; return view('category.edit',$data); } public function update(Request $request,Category $category){ if(env('APP_DEMO')){ return redirect()->back()->withErrors(['msg' => trans('layout.app_demo_message')]); } $request->validate([ 'name'=>'required|max:191', ]); if ($request->hasFile('category_image')) { $this->deleteItemImage($category); $file = $request->file('category_image'); $imageName = time() . '.' . $file->getClientOriginalExtension(); $file->move(public_path('/uploads'), $imageName); $request['image']=$imageName; }
$category->update($request->all()); return redirect()->route('category.index')->with('success',trans('layout.message.category_update_message')); } public function destroy(Category $category){ if(env('APP_DEMO')){ return redirect()->back()->withErrors(['msg' => trans('layout.app_demo_message')]); } $item=Item::where('category_id',$category->id)->first(); if($item) return redirect()->back()->withErrors(['msg'=>trans('layout.message.category_not_delete')]);
$this->deleteItemImage($category);
$category->delete(); return redirect()->back()->with('success', trans('layout.message.category_delete')); } function deleteItemImage(Category $category) { if ($category->image) { $fileN = public_path('uploads') . '/' . $category->image; if (File::exists($fileN)) unlink($fileN); } } }
|