diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php index 370e85a..ea6d985 100644 --- a/app/Http/Controllers/Auth/LoginController.php +++ b/app/Http/Controllers/Auth/LoginController.php @@ -8,39 +8,11 @@ use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; class LoginController extends Controller { - /* - |-------------------------------------------------------------------------- - | Login Controller - |-------------------------------------------------------------------------- - | - | This controller handles authenticating users for the application and - | redirecting them to your home screen. The controller uses a trait - | to conveniently provide its functionality to your applications. - | - */ use AuthenticatesUsers; - - /** - * Where to redirect users after login. - * - * @var string - */ - protected $redirectTo = '/categorias'; - - /** - * Create a new controller instance. - * - * @return void - */ - public function __construct() - { - $this->middleware('guest')->except('logout'); - $this->middleware('auth')->only('logout'); - } - public function login(Request $request) - { + { + $credentials = $request->validate([ 'email' => 'required|email', @@ -61,7 +33,9 @@ class LoginController extends Controller public function logout(Request $request) { Auth::logout(); + $request->session()->invalidate(); + $request->session()->regenerateToken(); return redirect('/login'); diff --git a/app/Http/Controllers/ProductoController.php b/app/Http/Controllers/ProductoController.php index f9efb5a..7731ec9 100644 --- a/app/Http/Controllers/ProductoController.php +++ b/app/Http/Controllers/ProductoController.php @@ -4,10 +4,68 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\Producto; +use App\Models\Categorias; +use App\Models\CodigoBarras; class ProductoController extends Controller { public function index(Request $request){ $productos = Producto::with('categorias','codigo_barras')->get(); return view('productos.index', ["productos"=>$productos]); } + public function show($id){ + + $producto = Producto::with('categorias','codigo_barras')->findOrfail($id); + return view('productos.show', ["prod"=>$producto]); + } + + public function destroy(Request $request, $id){ + $producto = Producto::findOrfail($id); + $producto->delete(); + $request->session()->flash('mensaje-success', 'El producto fue eliminado.'); + return redirect('/productos'); + } + + + public function create(){ + $categorias= Categorias::get(); + return view('productos.new',["categorias"=>$categorias]); + } + + public function store(Request $request){ + + $codigo_barras= new CodigoBarras(); + $codigo_barras->fill([ + 'codigo' => $request->input('codigo_barras'), + ]); + $codigo_barras->save(); + + $producto = new Producto(); + $producto->fill([ + 'nombre' => $request->input('nombre'), + 'descripcion' => $request->input('descripcion'), + 'precio' => $request->input('precio'), + 'categoria_id' => $request->input('categoria'), + 'codigo_barras_id' => $codigo_barras->id_codigo_barras, + ]); + $producto->save(); + $request->session()->flash('mensaje-success', 'El producto fue agregado.'); + return redirect('/productos'); + } + + public function edit($id){ + $producto = Producto::findOrfail($id); + return view('productos.edit', ["prod"=>$producto]); + } + + public function update(Request $request, $id){ + $producto = Producto::findOrfail($id); + $producto->fill([ + 'nombre' => $request->input('nombre'), + 'descripcion' => $request->input('descripcion'), + 'precio' => $request->input('precio'), + ]); + $producto->update(); + $request->session()->flash('mensaje-success', 'El producto fue modificado.'); + return redirect('/productos'); + } } diff --git a/resources/views/productos/edit.blade.php b/resources/views/productos/edit.blade.php new file mode 100644 index 0000000..0bb37dc --- /dev/null +++ b/resources/views/productos/edit.blade.php @@ -0,0 +1,68 @@ +@extends('layouts.admin') +@section('contenido') + + +