Documentation ¶
Overview ¶
Package cart represents abstraction of business layer cart object
Index ¶
- Constants
- type InterfaceCart
- func GetCartForVisitor(visitorID string) (InterfaceCart, error)
- func GetCartModel() (InterfaceCart, error)
- func GetCartModelAndSetID(cartID string) (InterfaceCart, error)
- func GetCurrentCart(context api.InterfaceApplicationContext, createNew bool) (InterfaceCart, error)
- func LoadCartByID(cartID string) (InterfaceCart, error)
- type InterfaceCartItem
Constants ¶
const ( ConstCartModelName = "Cart" ConstSessionKeyCurrentCart = "cart_id" ConstErrorModule = "cart" ConstErrorLevel = env.ConstErrorLevelModel )
Package global constants
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type InterfaceCart ¶
type InterfaceCart interface { AddItem(productID string, qty int, options map[string]interface{}) (InterfaceCartItem, error) RemoveItem(itemIdx int) error SetQty(itemIdx int, qty int) error GetItems() []InterfaceCartItem GetSubtotal() float64 GetVisitorID() string SetVisitorID(string) error GetVisitor() visitor.InterfaceVisitor MakeCartForVisitor(visitorID string) error GetSessionID() string SetSessionID(sessionID string) error Activate() error Deactivate() error IsActive() bool GetLastUpdateTime() time.Time SetCartInfo(infoAttribute string, infoValue interface{}) error GetCartInfo() map[string]interface{} SetCustomInfo(info map[string]interface{}) GetCustomInfo() map[string]interface{} ValidateCart() error models.InterfaceModel models.InterfaceStorable }
InterfaceCart represents interface to access business layer implementation of cart object
func GetCartForVisitor ¶
func GetCartForVisitor(visitorID string) (InterfaceCart, error)
GetCartForVisitor loads cart for visitor or creates new one
func GetCartModel ¶
func GetCartModel() (InterfaceCart, error)
GetCartModel retrieves current InterfaceCart model implementation
func GetCartModelAndSetID ¶
func GetCartModelAndSetID(cartID string) (InterfaceCart, error)
GetCartModelAndSetID retrieves current InterfaceCart model implementation and sets its ID to some value
func GetCurrentCart ¶
func GetCurrentCart(context api.InterfaceApplicationContext, createNew bool) (InterfaceCart, error)
GetCurrentCart returns cart for current session or creates new one
func LoadCartByID ¶
func LoadCartByID(cartID string) (InterfaceCart, error)
LoadCartByID loads cart data into current InterfaceCart model implementation
type InterfaceCartItem ¶
type InterfaceCartItem interface { GetID() string SetID(newID string) error GetIdx() int SetIdx(newIdx int) error GetProductID() string GetProduct() product.InterfaceProduct GetQty() int SetQty(qty int) error GetOptions() map[string]interface{} SetOption(optionName string, optionValue interface{}) error ValidateProduct() error GetCart() InterfaceCart }
InterfaceCartItem represents interface to access business layer implementation of cart item object