- Introduction
- Features
- Installation
- Admin Panel
- Components
- Registering a new Cart Condition
- Automations
- Events
- Conditions
- Notifications
- Events
Introduction
TastyIgniter Cart extension is simple, flexible shopping cart.
Features
- Stock control
- Cart conditions: Tip, Tax
- Order types: Delivery, Pick-up
- Abandoned Checkout
- Payment method: Cod, Paypal, Stripe
- One page checkout
- Easy to extends and customize
- Sending order confirmation emails
Installation
To install this extension, click on the Add to Site button on the TastyIgniter marketplace item page or search for Igniter.Cart in Admin System > Updates > Browse Extensions
Admin Panel
In the admin user interface you can manage the cart conditions.
Components
Name | Page variable | Description |
---|---|---|
CartBox | @component('cartBox') |
Show the contents of and manages the user's cart |
Checkout | @component('checkout') |
Displays Checkout form on the page |
OrderPage | @component('orderPage') |
Displays a single order on the page |
Orders | @component('orders') |
Displays a list of orders on the page |
CartBox Component
Properties
Property | Description | Example Value | Default Value |
---|---|---|---|
showCartItemThumb | Show cart menu item image in the popup | true/false | false |
cartItemThumbWidth | Cart item image width | 720 | 720 |
cartItemThumbHeight | Cart item image height | 300 | 300 |
checkStockCheckout | Check cart item stock quantity | true/false | false |
pageIsCheckout | Value to determine if the user is on a checkout page | true/false | false |
pageIsCart | Display a standalone cart | true/false | false |
hideZeroOptionPrices | Whether to hide zero prices on options | true/false | false |
checkoutPage | Checkout page path | checkout/checkout | checkout/checkout |
localBoxAlias | Specify the LocalBox component alias used to refresh the localbox after the order type is changed | localBox | localBox |
Variables available in templates
Variable | Description |
---|---|
{{ $cart }} |
Cart Class instance |
Example:
---
title: 'Checkout'
permalink: /checkout
'[cartBox]':
cartBoxTimeFormat: 'ddd hh:mm a'
checkStockCheckout: 0
pageIsCheckout: 0
pageIsCart: 0
checkoutPage: checkout/checkout
---
...
@component('cartBox')
...
Checkout Component
Properties
Property | Description | Example Value | Default Value |
---|---|---|---|
showCountryField | Show/hide the country checkout field | true/false | false |
showAddress2Field | Show/hide the address 2 checkout field | true/false | true |
showCityField | Show/hide the city checkout field | true/false | true |
showStateField | Show/hide the state checkout field | true/false | true |
agreeTermsPage | Terms and conditions page | page/terms | |
menusPage | Menus page | page/menus | |
redirectPage | Redirect page name | checkout/checkout | checkout/checkout |
orderPage | Order page name | account/order | account/order |
successPage | Order confirmation page name | checkout/success | checkout/success |
successParamCode | URL routing code used for displaying the order confirmation page | hash | hash |
Variables available in templates
Variable | Description |
---|---|
{{ $order }} |
Order Model instance |
{{ $paymentGateways }} |
Instances of available payment gateways |
Example:
---
title: 'Checkout'
permalink: /checkout
'[checkout]':
showCountryField: 0
showAddress2Field: 1
showCityField: 1
showStateField: 1
menusPage: local/menus
redirectPage: checkout/checkout
successPage: checkout/success
successParamCode: 'hash'
---
...
@component('checkout')
...
Registering a new Cart Condition
Here is an example of an extension registering a cart condition.
public function registerCartConditions()
{
return [
\Igniter\Local\CartConditions\Tip::class => [
'name' => 'tip',
'label' => 'Tip',
'description' => 'Applies tips to cart total',
]
];
}
Automations
Events
- Order Placed Event
- Order Status Update Event
- Order Assigned Event
Conditions
- Order Attributes
- Order Status Attributes
Notifications
- Order confirmation notification
- Order status update notification
- Order assigned notification
Events
The Cart Library used with this extension will fire some global events that can be useful for interacting with other extensions.
Event | Description | Parameters |
---|---|---|
cart.created |
When cart instance is created. | |
cart.added |
When an item has been added to the cart. | The CartItem instance |
cart.updated |
When an item has been updated in the cart. | The CartItem instance |
cart.removed |
When an item has been removed from the cart. | The CartItem instance |
cart.cleared |
When all items has been cleared from the cart. | |
cart.condition.loaded |
When a condition has been loaded to the cart. | The CartCondition instance |
cart.condition.removed |
When a condition has been removed from the cart. | The CartCondition instance |
cart.condition.cleared |
When all condition has been cleared from the cart. | |
cart.stored |
When the content of a cart was stored. | |
cart.restored |
When the content of a cart was restored. |
Example of hooking an event
Event::listen('cart.updated', function($cartItem) {
// ...
});