<?php namespace Onestartup\ProductPrimerPlano\Controller; use Illuminate\Http\Request; use App\Http\Requests; use App\Http\Controllers\Controller; use Yajra\Datatables\Datatables; use Onestartup\ProductPrimerPlano\Model\ProductCategory as Category; use Onestartup\ProductPrimerPlano\Requests\RequestCategory; class CategoryController extends Controller { /** * Display a listing of the resource. * @return Response */ public function index() { $categories = Category::paginate(25); return view('product::category.index') ->with('categories', $categories); } /** * Store a newly created resource in storage. * @param Request $request * @return Response */ public function store(RequestCategory $request) { $category = new Category($request->all()); if (isset($request->portada)) { $file = $request->file('portada'); $nombre = $file->getClientOriginalName(); $nombre_file = str_replace(' ', '_', $nombre); $ubicacion_donde_guarda ='product/categories/'.$nombre_file; \Storage::disk('local')->put($ubicacion_donde_guarda, \File::get($file)); $category->cover = $ubicacion_donde_guarda; } $category->save(); return redirect() ->back() ->with('message_success', 'Categoria aƱadida correctamente'); } /** * Show the form for editing the specified resource. * @return Response */ public function edit($id) { $category = Category::find($id); return view('product::category.edit') ->with('category', $category); } /** * Update the specified resource in storage. * @param Request $request * @return Response */ public function update(RequestCategory $request, $id) { $category = Category::find($id); $category->fill($request->all()); if (isset($request->portada) && $request->portada != null ) { $file = $request->file('portada'); $nombre = $file->getClientOriginalName(); $nombre_file = str_replace(' ', '_', $nombre); $ubicacion_donde_guarda ='product/categories/'.$nombre_file; \Storage::disk('local')->put($ubicacion_donde_guarda, \File::get($file)); $category->cover = $ubicacion_donde_guarda; } $category->save(); return redirect() ->back() ->with('message_success', 'Categoria actualizado correctamente'); } /** * Remove the specified resource from storage. * @return Response */ public function destroy($id) { $category = Category::find($id); $category->delete(); return redirect() ->back() ->with('message_danger', 'Categoria eliminada correctamente'); } public function deleteCover($id) { $category = Category::find($id); $category->cover = null; $category->save(); return redirect() ->back() ->with('message_success', 'Imagen eliminada correctamente'); } }