public function addItem($productId) { $cart = $this->getCart(); $cartItem = new CartItem(); $cartItem->product_id = $productId; $cartItem->cart_id = $cart->id; $cartItem->save(); return redirect('/cart'); }
public function addItem($movieId) { // Adding a movie as an item to a cart. // Initialize cart on grounds of logged in user. $cart = Cart::where('user_id', Auth::user()->id)->first(); // If there isn't already a cart, a new one is instantiated to that user. if (!$cart) { $cart = new Cart(); $cart->user_id = Auth::user()->id; $cart->save(); } // A new item is now added based on movie id being the same as the conditional variable, $cartItem = new CartItem(); $cartItem->movie_id = $movieId; $cartItem->cart_id = $cart->id; // Consider adding a command that counts down movie quantity each time a movie is added of the same (?movie_id) if ($cartItem->movie->quantity == 0) { return redirect('/'); } DB::table('movies')->decrement('quantity', 1); $cartItem->save(); return redirect('/cart'); }
/** * Update the specified resource in storage. * * @param UpdateCartItemRequest|Request $request * @param CartItem $cartItem * @return \Illuminate\Http\Response */ public function update(UpdateCartItemRequest $request, CartItem $cartItem) { $cartItem->amount = $request->amount; $cartItem->save(); return redirect()->route('checkout.index'); }