ranta / cart-api
extended version of freshbitsweb/laravel-cart-manager for api
v1.0.0
2020-11-29 12:00 UTC
Requires
This package is auto-updated.
Last update: 2025-03-29 00:48:21 UTC
README
Installation
- Install the package by running this command in your terminal/cmd:
composer require ranta/cart-api
- Add a trait to the model(s) of cart items:
<?php namespace App; use Illuminate\Database\Eloquent\Model; use Ranta\CartApi\Traits\CartableApi; class Product extends Model { use CartableApi; // ... }
Add to cart
/**
* Add to cart
*
* @return json
*/
public function addToCart()
{
cartApi()->setCartId(request('cartId'));
return Product::addToCartApi(request('productId'));
}
Remove from cart
/**
* Remove from cart
*
* @return json
*/
public function removeFromCart()
{
cartApi()->setCartId(request('cartId'));
return cartApi()->removeAt(request('cartItemIndex'));
}
Increment/decrement quantity of a cart item
/**
* Increment cart item quantity
*
* @return json
*/
public function incrementCartItem()
{
cartApi()->setCartId(request('cartId'));
return cartApi()->incrementQuantityAt(request('cartItemIndex'));
}
/**
* Decrement cart item quantity
*
* @return json
*/
public function decrementCartItem()
{
cartApi()->setCartId(request('cartId'));
return cartApi()->decrementQuantityAt(request('cartItemIndex'));
}
Clear cart
/**
* Clear Cart
*
* @return json
*/
public function clearCart()
{
cartApi()->setCartId(request('cartId'));
return cartApi()->clear();
}
Get complete cart details
cartApi()->setCartId(request('cartId'));
$cart = cartApi()->toArray();