dilab / cart
Shopping Cart Library
Installs: 2 452
Dependents: 0
Suggesters: 0
Security: 0
Stars: 6
Watchers: 2
Forks: 0
Open Issues: 0
Requires
- ext-bcmath: *
- illuminate/support: ^5.6
- myclabs/deep-copy: ^1.8
- ramsey/uuid: ^3.7
- zumba/json-serializer: ^2.2
Requires (Dev)
- phpunit/phpunit: ~7.0
- squizlabs/php_codesniffer: 3.2
This package is auto-updated.
Last update: 2025-01-29 05:11:46 UTC
README
A Shopping Cart Abstraction
Usage
- Setup initial state
$event = Event::init($data)
- Create Cart
$cart = new Cart('xuding@spacebib.com', $event)
- Create Registration Form
$registration = new Registration($cart->getParticipants());
Cart API
- Add ticket to cart
$cart->addTicket($event->getCategoryById(1), 1);
- Get participants
$cart->getParticipants();
- Get order details
$tickets = $cart->tickets()
$subTotal = $cart->subTotal()
$total = $cart->total()
- Add product to cart
$cart->addProduct($product)
- Remove product from cart
$cart->removeProduct($productId, $productVariantId)
- Get product details
$cart->getProducts() $cart->countProducts() $cart->productsSubtotal()
- Coupon
The cart can only use one coupon, but a coupon can be used for multiple tickets
$cart->getCoupon()
$cart->setCoupon(Coupon $coupon)
$cart->applyCoupon()
$cart->cancelCoupon()
$cart->getDiscount()
$cart->usedCouponQuantity()
- Get currency
$cart->currency()
Registration API
- Render a form
$registration->renderParticipant($trackId);
- Fill a form
$registration->fillParticipant($trackId, $data);
- Get errors of a participant form
$registration->getErrors($trackId);
- Redirect to next page
$registration->redirectTo();