PHP Класс ShoppingCart, silvershop-core

Ensures that an order is only started (persisted to DB) when necessary, and all future changes are on the same order, until the order has is placed. The requirement for starting an order is to adding an item to the cart.
Наследование: extends Object
Показать файл Открыть проект Примеры использования класса

Открытые методы

Метод Описание
__clone ( ) singleton protection
__wakeup ( )
add ( Buyable $buyable, number $quantity = 1, unknown $filter = [] ) : boolean | OrderItem Adds an item to the cart
archiveorderid ( integer | null $requestedOrderId = null ) Store old cart id in session order history
clear ( boolean $write = true ) : boolean Empty / abandon the entire cart.
clearMessage ( )
curr ( ) : Order Shortened alias for ShoppingCart::singleton()->current()
current ( ) : Order Get the current order, or return null if it doesn't exist.
get ( Buyable $buyable, $customfilter = [] ) : OrderItem Finds an existing order item.
getCorrectBuyable ( Buyable $buyable ) : Buyable Ensure the proper buyable will be returned for a given buyable… This is being used to ensure a product with variations cannot be added to the cart… a Variation has to be added instead!
getMessage ( )
getMessageType ( )
remove ( Buyable $buyable, integer $quantity = null, $filter = [] ) : boolean Remove an item from the cart.
setCurrent ( Order $cart ) : ShoppingCart Set the current cart
setQuantity ( Buyable $buyable, integer $quantity = 1, $filter = [] ) : boolean | OrderItem Sets the quantity of an item in the cart.
singleton ( ) : ShoppingCart Access for only allowing access to one (singleton) ShoppingCart.

Защищенные методы

Метод Описание
error ( $message ) Store a new error.
findOrMake ( ) : Order Helper that only allows orders to be started internally.
message ( string $message, string $type = "good" ) Store a message to be fed back to user.

Приватные методы

Метод Описание
findOrMakeItem ( Buyable $buyable, integer $quantity = 1, array $filter = [] ) : OrderItem Finds or makes an order item for a given product + filter.

Описание методов

__clone() публичный Метод

singleton protection
public __clone ( )

__wakeup() публичный Метод

public __wakeup ( )

add() публичный Метод

Adds an item to the cart
public add ( Buyable $buyable, number $quantity = 1, unknown $filter = [] ) : boolean | OrderItem
$buyable Buyable
$quantity number
$filter unknown
Результат boolean | OrderItem false or the new/existing item

archiveorderid() публичный Метод

Store old cart id in session order history
public archiveorderid ( integer | null $requestedOrderId = null )
$requestedOrderId integer | null optional parameter that denotes the order that was requested

clear() публичный Метод

Empty / abandon the entire cart.
public clear ( boolean $write = true ) : boolean
$write boolean whether or not to write the abandoned order
Результат boolean - true if successful, false if no cart found

clearMessage() публичный Метод

public clearMessage ( )

curr() публичный статический Метод

Shortened alias for ShoppingCart::singleton()->current()
public static curr ( ) : Order
Результат Order

current() публичный Метод

Get the current order, or return null if it doesn't exist.
public current ( ) : Order
Результат Order

error() защищенный Метод

Store a new error.
protected error ( $message )

findOrMake() защищенный Метод

Helper that only allows orders to be started internally.
protected findOrMake ( ) : Order
Результат Order

get() публичный Метод

Finds an existing order item.
public get ( Buyable $buyable, $customfilter = [] ) : OrderItem
$buyable Buyable
Результат OrderItem the item requested, or false

getCorrectBuyable() публичный Метод

Ensure the proper buyable will be returned for a given buyable… This is being used to ensure a product with variations cannot be added to the cart… a Variation has to be added instead!
public getCorrectBuyable ( Buyable $buyable ) : Buyable
$buyable Buyable
Результат Buyable

getMessage() публичный Метод

public getMessage ( )

getMessageType() публичный Метод

public getMessageType ( )

message() защищенный Метод

Store a message to be fed back to user.
protected message ( string $message, string $type = "good" )
$message string
$type string - good, bad, warning

remove() публичный Метод

Remove an item from the cart.
public remove ( Buyable $buyable, integer $quantity = null, $filter = [] ) : boolean
$buyable Buyable
$quantity integer - number of items to remove, or leave null for all items (default)
Результат boolean success/failure

setCurrent() публичный Метод

Set the current cart
public setCurrent ( Order $cart ) : ShoppingCart
$cart Order
Результат ShoppingCart

setQuantity() публичный Метод

Will automatically add or remove item, if necessary.
public setQuantity ( Buyable $buyable, integer $quantity = 1, $filter = [] ) : boolean | OrderItem
$buyable Buyable
$quantity integer
Результат boolean | OrderItem false or the new/existing item

singleton() публичный статический Метод

Access for only allowing access to one (singleton) ShoppingCart.
public static singleton ( ) : ShoppingCart
Результат ShoppingCart