Class Item Abstract class for database based items.

Base class with common features for database based items and item collections.

author Timo A. Hummel <Timo.Hummel@4fb.de>
author Murat Purc
version 0.3
copyright four for business 2003

 Methods

Constructor Function

__construct(mixed $mId) 

Parameters

$mId

mixed

Specifies the ID of item to load

Exceptions

\Contenido_ItemException If table name or primary key is not set

Filters the passed data using the functions defines in the _arrInFilters array.

_inFilter(mixed $mData) : mixed
Inherited

see \setFilters
inherited_from \Item::_inFilter()

Parameters

$mData

mixed

Data to filter

Returns

mixedFiltered data

cApiTree()

cApiTree($mId) 

deprecated [2011-03-15] Old constructor function for downwards compatibility

Parameters

$mId

Deletes a custom property.

deleteProperty(string $sType, string $sName) : bool
Inherited

inherited_from \Item::deleteProperty()

Parameters

$sType

string

Specifies the type

$sName

string

Specifies the name

Returns

bool

Deletes a custom property by its id.

deletePropertyById(int $idprop) : bool
Inherited

inherited_from \Item::deletePropertyById()

Parameters

$idprop

int

Id of property

Returns

bool

Escape string for using in SQL-Statement.

escape(string $sString) : string
Inherited

inherited_from \Contenido_ItemBaseAbstract::escape()
inherited_from \Item::escape()

Parameters

$sString

string

The string to escape

Returns

stringEscaped string

Wrapper for getField (less to type).

get(string $sField) : mixed
Inherited

inherited_from \Item::get()

Parameters

$sField

string

Specifies the field to retrieve

Returns

mixedValue of the field

Gets the value of a specific field.

getField(string $sField) : mixed
Inherited

inherited_from \Item::getField()

Parameters

$sField

string

Specifies the field to retrieve

Returns

mixedValue of the field

getMetaObject()

getMetaObject() 
Inherited

inherited_from \Item::getMetaObject()

Returns a custom property.

getProperty(string $sType, string $sName) : mixed
Inherited

inherited_from \Item::getProperty()

Parameters

$sType

string

Specifies the type

$sName

string

Specifies the name

Returns

mixedValue of the given property or false

Checks if a the item is already loaded.

isLoaded() : bool
Inherited

inherited_from \Item::isLoaded()

Returns

bool

Loads an item by colum/field from the database.

loadBy(string $sField, mixed $mValue, bool $bSafe) : bool
Inherited

inherited_from \Item::loadBy()

Parameters

$sField

string

Specifies the field

$mValue

mixed

Specifies the value

$bSafe

bool

Use inFilter or not

Returns

boolTrue if the load was successful

Loads an item by ID from the database.

loadByPrimaryKey(string $mValue) : bool
Inherited

inherited_from \Item::loadByPrimaryKey()

Parameters

$mValue

string

Specifies the primary key value

Returns

boolTrue if the load was successful

Loads an item by it's recordset.

loadByRecordSet(array $aRecordSet) 
Inherited

inherited_from \Item::loadByRecordSet()

Parameters

$aRecordSet

array

The recordset of the item

Shortcut to setField.

set(string $sField, string $mValue, bool $bSafe) 
Inherited

inherited_from \Item::set()

Parameters

$sField

string

Field name

$mValue

string

Value to set

$bSafe

bool

Flag to run defined inFilter on passed value

Sets the value of a specific field.

setField(string $sField, string $mValue, bool $bSafe) 
Inherited

inherited_from \Item::setField()

Parameters

$sField

string

Field name

$mValue

string

Value to set

$bSafe

bool

Flag to run defined inFilter on passed value

Define the filter functions used when data is being stored or retrieved from the database.

setFilters(array $aInFilters, array $aOutFilters) : void
Inherited

Examples:

$obj->setFilters(array('addslashes'), array('stripslashes'));
$obj->setFilters(array('htmlencode', 'addslashes'), array('stripslashes', 'htmlencode'));

inherited_from \Item::setFilters()

Parameters

$aInFilters

array

Array with function names

$aOutFilters

array

Array with function names

Sets a custom property.

setProperty(string $sType, string $sName, mixed $mValue) : bool
Inherited

inherited_from \Item::setProperty()

Parameters

$sType

string

Specifies the type

$sName

string

Specifies the name

$mValue

mixed

Specifies the value

Returns

bool

Stores the loaded and modified item to the database.

store() : bool
Inherited

inherited_from \Item::store()

Returns

bool

Returns current item data as an assoziative array.

toArray() : array | false
Inherited

inherited_from \Item::toArray()

Returns

arrayfalse

Returns current item data as an object.

toObject() : \stdClass | false
Inherited

inherited_from \Item::toObject()

Returns

\stdClassfalse

Returns properties instance, instantiates it if not done before.

_getPropertiesCollectionInstance() : \PropertyCollection
Inherited

inherited_from \Contenido_ItemBaseAbstract::_getPropertiesCollectionInstance()
inherited_from \Item::_getPropertiesCollectionInstance()

Returns

Returns the second database instance, usable to run additional statements without losing current query results.

_getSecondDBInstance() : \DB_Contenido
Inherited

inherited_from \Contenido_ItemBaseAbstract::_getSecondDBInstance()
inherited_from \Item::_getSecondDBInstance()

Returns

Loads an item by passed where clause from the database.

_loadByWhereClause(string $sWhere) : bool
Inherited

This function is expensive, since it executes allways a query to the database to retrieve the primary key, even if the record set is aleady cached. NOTE: Passed value has to be escaped before. This will not be done by this function.

inherited_from \Item::_loadByWhereClause()

Parameters

$sWhere

string

The where clause like 'idart = 123 AND idlang = 1'

Returns

boolTrue if the load was successful

Function which is called whenever an item is loaded.

_onLoad() : void
Inherited

Inherited classes should override this function if desired.

inherited_from \Item::_onLoad()

Filters the passed data using the functions defines in the _arrOutFilters array.

_outFilter(mixed $mData) : mixed
Inherited

see \setFilters
inherited_from \Item::_outFilter()

Parameters

$mData

mixed

Data to filter

Returns

mixedFiltered data

_setMetaObject()

_setMetaObject($sObjectName) 
Inherited

inherited_from \Item::_setMetaObject()

Parameters

$sObjectName

 Properties

 

Storage of the primary key

$primaryKey : string
Inherited

inherited_from \Contenido_ItemBaseAbstract::$$primaryKey
inherited_from \Item::$$primaryKey
 

Storage of the source table to use for the user informations

$values : array
Inherited

inherited_from \Item::$$values
 

Checks for the virginity of created objects. If true, the object is virgin and no operations on it except load-Functions are allowed.

$virgin : bool
Inherited

inherited_from \Contenido_ItemBaseAbstract::$$virgin
inherited_from \Item::$$virgin
 

List of funcion names of the filters used when data is stored to the db.

$_arrInFilters : array
Inherited

inherited_from \Item::$$_arrInFilters
 

List of funcion names of the filtersused when data is retrieved from the db

$_arrOutFilters : array
Inherited

inherited_from \Item::$$_arrOutFilters
 

Classname of current instance

$_className : string
Inherited

inherited_from \Contenido_ItemBaseAbstract::$$_className
inherited_from \Item::$$_className
 

Class name of meta object

$_metaObject : string
Inherited

inherited_from \Item::$$_metaObject
 

Item cache instance

$_oCache : \Contenido_ItemCache
Inherited

inherited_from \Contenido_ItemBaseAbstract::$$_oCache
inherited_from \Item::$$_oCache
 

GenericDB settings, see $cfg['sql']

$_settings : array
Inherited

inherited_from \Contenido_ItemBaseAbstract::$$_settings
inherited_from \Item::$$_settings
 

Cache the result items FIXME seems to not used, remove it!

$cache : array
Inherited

inherited_from \Contenido_ItemBaseAbstract::$$cache
inherited_from \Item::$$cache
 

Database instance, contains the database object

$db : \DB_Contenido
Inherited

inherited_from \Contenido_ItemBaseAbstract::$$db
inherited_from \Item::$$db
 

Storage of the last occured error

$lasterror : string
Inherited

inherited_from \Contenido_ItemBaseAbstract::$$lasterror
inherited_from \Item::$$lasterror
 

Lifetime of results/created objects? FIXME Not used at the moment!

$lifetime : int
Inherited

inherited_from \Contenido_ItemBaseAbstract::$$lifetime
inherited_from \Item::$$lifetime
 

Storage of the fields which were modified, where the keys are the fieldnames and the values just simple booleans.

$modifiedValues : array
Inherited

inherited_from \Item::$$modifiedValues
 

Stores the old primary key, just in case somebody wants to change it

$oldPrimaryKey : string
Inherited

inherited_from \Item::$$oldPrimaryKey
 

Property collection instance

$properties : \PropertyCollection
Inherited

inherited_from \Contenido_ItemBaseAbstract::$$properties
inherited_from \Item::$$properties
 

Second DB instance, is required for some additional queries without losing an current existing query result.

$secondDb : \DB_Contenido
Inherited

inherited_from \Contenido_ItemBaseAbstract::$$secondDb
inherited_from \Item::$$secondDb
 

Storage of the source table to use for the information

$table : string
Inherited

inherited_from \Contenido_ItemBaseAbstract::$$table
inherited_from \Item::$$table