eZ Publish  [trunk]
eZOrderStatus Class Reference

Handles statuses which can be used on orders. More...

+ Inheritance diagram for eZOrderStatus:
+ Collaboration diagram for eZOrderStatus:

List of all members.

Public Member Functions

 eZOrderStatus ($row)
 isInternal ()
 removeThis ()
 storeCustom ()

Static Public Member Functions

static create ()
static createUndefined ()
static definition ()
static fetch ($id, $asObject=true)
static fetchByStatus ($statusID, $asObject=true)
static fetchList ($asObject=true, $showInactive=false)
static fetchMap ($asObject=true, $showInactive=false)
static fetchOrderedList ($asObject=true, $showInactive=false)
static fetchPolicyList ($showInactive=false)
static flush ()
static orderStatusCount ($showInactive=false)

Public Attributes

const CUSTOM = 1000
const DELIVERED = 3
const PENDING = 1
const PROCESSING = 2
const UNDEFINED = 0

Detailed Description

Handles statuses which can be used on orders.

This encapsulates the information about a status using the database table ezorder_status.

This status can be selected on an order and is also stored in a history per order (eZOrderStatusHistory).

The status consists of a name, a global ID and whether it is considered active or not.

The following attributes are defined:

  • id - The auto increment ID for the status, this is only used to fetch a given status element from the database.
  • status_id - The global ID of the status, values below 1000 is considerd internal and cannot be removed by the user.
  • name - The name of the status.
  • is_active - Whether the status can be used by the end-user or not.

Some special attributes:

  • is_internal - Returns true if the status is considerd an internal one (ID less than 1000).

If the user creates a new status the function storeCustom() must be used, it will find the next available ID in the database and will use locking to avoid race conditions.

To fetch a given status use fetch() when you have the DB ID or fetchByStatus() if you have a status ID. To fetch lists use fetchList() or fetchOrderedList() for a list sorted by name. If you intend to lookup many statuses using the ID the map from fetchMap() might be useful. To find the number of statuses in the system use orderStatusCount().

Definition at line 46 of file ezorderstatus.php.


Member Function Documentation

static eZOrderStatus::create ( ) [static]

Creates a new order status and returns it.

Definition at line 281 of file ezorderstatus.php.

static eZOrderStatus::createUndefined ( ) [static]

Creates an order status which contains 'Undefined' as name and 0 as status ID. This can be used whenever code expects a status object to work with.

Returns:
The newly created status object.

Definition at line 296 of file ezorderstatus.php.

Referenced by fetchByStatus().

static eZOrderStatus::definition ( ) [static]
Returns:
the persistent object definition for the eZOrderStatus class.

Reimplemented from eZPersistentObject.

Definition at line 67 of file ezorderstatus.php.

Referenced by fetch(), fetchByStatus(), fetchList(), fetchMap(), fetchOrderedList(), and removeThis().

Definition at line 59 of file ezorderstatus.php.

Referenced by create(), and createUndefined().

static eZOrderStatus::fetch ( id,
asObject = true 
) [static]
Returns:
the status object with the given DB ID.

Definition at line 115 of file ezorderstatus.php.

static eZOrderStatus::fetchByStatus ( statusID,
asObject = true 
) [static]
Returns:
the status object with the given status ID.
Note:
It is safe to call this with ID 0, instead of fetching the DB data it calls createUndefined() and returns that data.

Definition at line 128 of file ezorderstatus.php.

Referenced by eZOrder\statusName(), and eZOrder\statusObject().

static eZOrderStatus::fetchList ( asObject = true,
showInactive = false 
) [static]
Parameters:
$asObjectIf true return them as objects.
$showInactiveIf true it will include status items that are not active, default is false.
Returns:
A list of defined orders sorted by status ID.

Definition at line 184 of file ezorderstatus.php.

static eZOrderStatus::fetchMap ( asObject = true,
showInactive = false 
) [static]
Parameters:
$asObjectIf true return them as objects.
$showInactiveIf true it will include status items that are not active, default is false.
Returns:
A list of defined orders which maps from the status ID to the object.

Definition at line 144 of file ezorderstatus.php.

Referenced by eZOrderStatusHistory\fetchOrderStatus().

static eZOrderStatus::fetchOrderedList ( asObject = true,
showInactive = false 
) [static]
Parameters:
$asObjectIf true return them as objects.
$showInactiveIf true it will include status items that are not active, default is false.
Returns:
A list of defined orders sorted by name.

Definition at line 223 of file ezorderstatus.php.

Referenced by eZOrder\statusModificationList().

static eZOrderStatus::fetchPolicyList ( showInactive = false) [static]
Parameters:
$asObjectIf true return them as objects.
$showInactiveIf true it will include status items that are not active, default is false.
Returns:
A list of defined orders sorted by status ID.

Definition at line 206 of file ezorderstatus.php.

static eZOrderStatus::flush ( ) [static]

Flushes all global caches for the statuses.

Definition at line 104 of file ezorderstatus.php.

Referenced by removeThis(), and storeCustom().

Returns:
true if the status is considered an internal status.

Definition at line 95 of file ezorderstatus.php.

static eZOrderStatus::orderStatusCount ( showInactive = false) [static]
Returns:
the number of active order statuses

Definition at line 243 of file ezorderstatus.php.

Will remove the current status from the database identifed by its DB ID.

Note:
transaction safe

Definition at line 259 of file ezorderstatus.php.

Stores a new custom order status. If there is no status ID yet it will acquire a new unique and store it with that. If it already has an ID it calls store() as normally.

Definition at line 316 of file ezorderstatus.php.


Member Data Documentation

const eZOrderStatus::CUSTOM = 1000

Definition at line 57 of file ezorderstatus.php.

Referenced by isInternal(), and storeCustom().

Definition at line 54 of file ezorderstatus.php.

Definition at line 52 of file ezorderstatus.php.

Referenced by eZBasket\createOrder().

Definition at line 53 of file ezorderstatus.php.

Definition at line 49 of file ezorderstatus.php.

Referenced by createUndefined().


The documentation for this class was generated from the following file: