eZ Publish  [trunk]
eZContentObjectVersion Class Reference

The class eZContentObjectVersion handles different versions of an content object. More...

+ Inheritance diagram for eZContentObjectVersion:
+ Collaboration diagram for eZContentObjectVersion:

List of all members.

Public Member Functions

 assignToNode ($nodeID, $main=0, $fromNodeID=0, $sortField=null, $sortOrder=null, $remoteID=0)
 canVersionRead ()
 canVersionRemove ()
 checkAccess ($functionName, $originalClassID=false, $parentClassID=false, $returnAccessList=false, $language=false)
 clearAlwaysAvailableLanguageID ()
 cloneVersion ($newVersionNumber, $userID, $contentObjectID=false, $status=eZContentObjectVersion::STATUS_DRAFT)
 contentObject ()
 contentObjectAttributes ($languageCode=false, $asObject=true)
 creator ()
 dataMap ()
 defaultTranslationList ()
 eZContentObjectVersion ($row=array())
 hasConflicts ($editLanguage=false)
 initialLanguage ()
 initialLanguageCode ()
 languageMask ()
 mainParentNodeID ()
 name ($lang=false)
 nodeAssignments ()
 nonTranslatableAttributesToUpdate ()
 nonTranslationList ()
 parentNodes ()
 postUnserialize ($package)
 relatedContentObjectArray ()
 removeAssignment ($nodeID)
 removeThis ()
 removeTranslation ($languageCode)
 resetDataMap ()
 reverseRelatedObjectList ()
 serialize ($package, $options=false, $contentNodeIDArray=false, $topNodeIDArray=false)
 setAlwaysAvailableLanguageID ($languageID)
 store ($fieldFilters=null)
 Stores the object in the database, uses storeObject() to do the actual job and passes $fieldFilters to it.
 tempMainNode ()
 translation ($asObject=true)
 translationList ($language=false, $asObject=true)
 translations ($asObject=true)
 unpublish ()
 updateLanguageMask ($mask=false, $forceStore=true)
 versionName ($lang=false)

Static Public Member Functions

static create ($contentobjectID, $userID=false, $version=1, $initialLanguageCode=false)
static definition ()
 Returns the definition for the object, the default implementation is to return an empty array.
static fetch ($id, $asObject=true)
static fetchAttributes ($version, $contentObjectID, $language=false, $asObject=true)
static fetchFiltered ($filters, $offset, $limit)
static fetchForUser ($userID, $status=eZContentObjectVersion::STATUS_DRAFT)
static fetchLatestUserDraft ($objectID, $userID, $languageID, $modified=0)
 Fetch the latest draft by user id.
static fetchUserDraft ($objectID, $userID)
static fetchVersion ($version, $contentObjectID, $asObject=true)
static removeVersions ($versionStatus=false, $limit=false, $expiryTime=false, $fetchPortionSize=50)
static statusList ($limit=false)
static unserialize ($domNode, $contentObject, $ownerID, $sectionID, $activeVersion, $firstVersion, &$nodeList, &$options, $package, $handlerType= 'ezcontentobject')

Public Attributes

 $CurrentLanguage = false
const STATUS_ARCHIVED = 3
const STATUS_DRAFT = 0
const STATUS_INTERNAL_DRAFT = 5
const STATUS_PENDING = 2
const STATUS_PUBLISHED = 1
const STATUS_QUEUED = 7
const STATUS_REJECTED = 4
const STATUS_REPEAT = 6

Static Private Member Functions

static mapLanguage ($language, $options)

Detailed Description

The class eZContentObjectVersion handles different versions of an content object.

Definition at line 18 of file ezcontentobjectversion.php.


Member Function Documentation

eZContentObjectVersion::assignToNode ( nodeID,
main = 0,
fromNodeID = 0,
sortField = null,
sortOrder = null,
remoteID = 0 
)

Definition at line 761 of file ezcontentobjectversion.php.

Returns:
true if the current user can read this version of the object.

Definition at line 352 of file ezcontentobjectversion.php.

Returns:
true if the current user can remove this version of the object.

Definition at line 364 of file ezcontentobjectversion.php.

eZContentObjectVersion::checkAccess ( functionName,
originalClassID = false,
parentClassID = false,
returnAccessList = false,
language = false 
)

Definition at line 373 of file ezcontentobjectversion.php.

Referenced by canVersionRead(), and canVersionRemove().

eZContentObjectVersion::cloneVersion ( newVersionNumber,
userID,
contentObjectID = false,
status = eZContentObjectVersion::STATUS_DRAFT 
)

Clones the version with new version $newVersionNumber and creator $userID

Note:
The cloned version is not stored.

Definition at line 1041 of file ezcontentobjectversion.php.

eZContentObjectVersion::contentObjectAttributes ( languageCode = false,
asObject = true 
)

Returns the attributes for the current content object version. If $language is not specified it will use the initial language of the version.

Definition at line 1133 of file ezcontentobjectversion.php.

Referenced by dataMap(), postUnserialize(), removeTranslation(), and serialize().

static eZContentObjectVersion::create ( contentobjectID,
userID = false,
version = 1,
initialLanguageCode = false 
) [static]

Definition at line 850 of file ezcontentobjectversion.php.

Referenced by assignToNode(), and tempMainNode().

Returns:
the creator of the current version.

Definition at line 1543 of file ezcontentobjectversion.php.

Returns:
the content object attribute

Definition at line 805 of file ezcontentobjectversion.php.

Returns:
An array with all translations except default language for the this version.
Note:
Transaction unsafe. If you call several transaction unsafe methods you must enclose the calls within a db transaction; thus within db->begin and db->commit.

Definition at line 1124 of file ezcontentobjectversion.php.

Returns the definition for the object, the default implementation is to return an empty array.

It's upto each inheriting class to return a proper definition array.

The definition array is an associative array consists of these keys:

  • fields: an associative array of fields which defines which database field (the key) is to fetched and how they map to object member variables (the value).
  • keys: an array of fields which is used for uniquely identifying the object in the table.
  • function_attributes: an associative array of attributes which maps to member functions, used for fetching data with functions.
  • set_functions: an associative array of attributes which maps to member functions, used for setting data with functions.
  • increment_key: the field which is incremented on table inserts.
  • class_name: the classname which is used for instantiating new objecs when fetching from the database.
  • sort: an associative array which defines the default sorting of lists, the key is the table field while the value is the sorting method which is either 'asc' or 'desc'.
  • name: the name of the database table

Example: public static function definition() { return array( "fields" => array( "id" => "ID", "version" => "Version", "name" => "Name" ), "keys" => array( "id", "version" ), "function_attributes" => array( "current" => "currentVersion", "class_name" => "className" ), "increment_key" => "id", "class_name" => "eZContentClass", "sort" => array( "id" => "asc" ), "name" => "ezcontentclass" ); }

Returns:
array

Reimplemented from eZPersistentObject.

Definition at line 40 of file ezcontentobjectversion.php.

Referenced by fetch(), eZContentFunctionCollection\fetchDraftVersionCount(), eZContentFunctionCollection\fetchDraftVersionList(), fetchFiltered(), fetchForUser(), fetchLatestUserDraft(), eZContentFunctionCollection\fetchPendingCount(), eZContentFunctionCollection\fetchPendingList(), fetchUserDraft(), fetchVersion(), eZContentFunctionCollection\fetchVersionCount(), eZContentFunctionCollection\fetchVersionList(), and eZContentObject\versions().

Definition at line 30 of file ezcontentobjectversion.php.

Referenced by create().

static eZContentObjectVersion::fetch ( id,
asObject = true 
) [static]
Returns:
true if the requested attribute exists in object.

Definition at line 149 of file ezcontentobjectversion.php.

Referenced by checkAccess(), contentObject(), creator(), initialLanguage(), nonTranslatableAttributesToUpdate(), and ezpContentPublishingProcess\version().

static eZContentObjectVersion::fetchAttributes ( version,
contentObjectID,
language = false,
asObject = true 
) [static]

Returns the attributes for the content object version $version and content object $contentObjectID. $language defines the language to fetch.

See also:
attributes
Note:
Transaction unsafe. If you call several transaction unsafe methods you must enclose the calls within a db transaction; thus within db->begin and db->commit.

Definition at line 1158 of file ezcontentobjectversion.php.

Referenced by contentObjectAttributes(), and eZContentObjectTranslation\objectAttributes().

static eZContentObjectVersion::fetchFiltered ( filters,
offset,
limit 
) [static]

Definition at line 229 of file ezcontentobjectversion.php.

Referenced by removeVersions().

static eZContentObjectVersion::fetchForUser ( userID,
status = eZContentObjectVersion::STATUS_DRAFT 
) [static]
static eZContentObjectVersion::fetchLatestUserDraft ( objectID,
userID,
languageID,
modified = 0 
) [static]

Fetch the latest draft by user id.

Since:
4.7
Parameters:
int$objectID
int$userID
int$languageID
int$modified
Returns:
eZContentObjectVersion|null

Definition at line 192 of file ezcontentobjectversion.php.

Referenced by eZContentObjectTreeNode\dataMap().

static eZContentObjectVersion::fetchUserDraft ( objectID,
userID 
) [static]

Definition at line 168 of file ezcontentobjectversion.php.

Definition at line 1723 of file ezcontentobjectversion.php.

static eZContentObjectVersion::mapLanguage ( language,
options 
) [static, private]

Maps input lange to another one if defined in $options['language_map']. If it cannot map it returns the original language.

Returns:
string

Definition at line 1209 of file ezcontentobjectversion.php.

Referenced by unserialize().

Returns:
the name of the current version, optionally in the specific language $lang

Definition at line 291 of file ezcontentobjectversion.php.

Returns:
an array with locale objects, these objects represents the languages the content objects are allowed to be translated into. The array will not include locales that has been translated in this version.

Definition at line 1594 of file ezcontentobjectversion.php.

Definition at line 1406 of file ezcontentobjectversion.php.

Returns the related objects.

Definition at line 844 of file ezcontentobjectversion.php.

Note:
Transaction unsafe. If you call several transaction unsafe methods you must enclose the calls within a db transaction; thus within db->begin and db->commit.

Definition at line 786 of file ezcontentobjectversion.php.

Note:
Transaction unsafe. If you call several transaction unsafe methods you must enclose the calls within a db transaction; thus within db->begin and db->commit.

Definition at line 886 of file ezcontentobjectversion.php.

Note:
Transaction unsafe. If you call several transaction unsafe methods you must enclose the calls within a db transaction; thus within db->begin and db->commit.

Definition at line 948 of file ezcontentobjectversion.php.

static eZContentObjectVersion::removeVersions ( versionStatus = false,
limit = false,
expiryTime = false,
fetchPortionSize = 50 
) [static]

Will remove all version that match the status set in $versionStatus.

Parameters:
$versionStatuscan either be a single value or an array with values, if false the function will remove all status except published.
$limitlimits count of versions which should be removed.
$expiryTimeif not false then method will remove only versions which have modified time less than specified expiry time.
$fetchPortionSizeportion size for single fetch() call to avoid memory overflow erros (default 50).
Note:
Transaction unsafe. If you call several transaction unsafe methods you must enclose the calls within a db transaction; thus within db->begin and db->commit.

Definition at line 977 of file ezcontentobjectversion.php.

eZContentObjectVersion::serialize ( package,
options = false,
contentNodeIDArray = false,
topNodeIDArray = false 
)
Returns:
a DOM structure of the content object version, it's translations and attributes.
Parameters:
package
optionspackage options ( optional )
contentNodeIDArrayarray of allowed nodes ( optional )
topNodeIDArrayarray of top nodes in current package export (optional )
Note:
Transaction unsafe. If you call several transaction unsafe methods you must enclose the calls within a db transaction; thus within db->begin and db->commit.

Definition at line 1427 of file ezcontentobjectversion.php.

static eZContentObjectVersion::statusList ( limit = false) [static]

Definition at line 126 of file ezcontentobjectversion.php.

eZContentObjectVersion::store ( fieldFilters = null)

Stores the object in the database, uses storeObject() to do the actual job and passes $fieldFilters to it.

Note: Transaction unsafe. If you call several transaction unsafe methods you must enclose the calls within a db transaction; thus within db->begin and db->commit.

Parameters:
array | null$fieldFilters
Returns:
void

Reimplemented from eZPersistentObject.

Definition at line 1750 of file ezcontentobjectversion.php.

Referenced by updateLanguageMask().

Returns:
an eZContentObjectTreeNode object which doesn't really exist in the DB, this can be passed to a node view template.

Definition at line 245 of file ezcontentobjectversion.php.

Returns:
An array with all the translations for the current version.
Deprecated:

Definition at line 1069 of file ezcontentobjectversion.php.

eZContentObjectVersion::translationList ( language = false,
asObject = true 
)
Returns:
An array with all the translations for the current version.
Note:
Transaction unsafe. If you call several transaction unsafe methods you must enclose the calls within a db transaction; thus within db->begin and db->commit.

Definition at line 1080 of file ezcontentobjectversion.php.

Referenced by defaultTranslationList(), nonTranslationList(), serialize(), translations(), and updateLanguageMask().

Returns:
An array with all the translations for the current version.

Definition at line 1060 of file ezcontentobjectversion.php.

Referenced by nonTranslationList(), postUnserialize(), and removeThis().

Note:
Transaction unsafe. If you call several transaction unsafe methods you must enclose the calls within a db transaction; thus within db->begin and db->commit.

Definition at line 1556 of file ezcontentobjectversion.php.

static eZContentObjectVersion::unserialize ( domNode,
contentObject,
ownerID,
sectionID,
activeVersion,
firstVersion,
&$  nodeList,
&$  options,
package,
handlerType = 'ezcontentobject' 
) [static]

Unserialize xml structure. Create object from xml input.

Parameters:
domNodeXML DOM Node
contentObjectcontentobject
ownerIDowner ID
sectionIDsection ID
activeVersionnew object, true if first version of new object
options
package
Returns:
created object, false if could not create object/xml invalid
Note:
Transaction unsafe. If you call several transaction unsafe methods you must enclose the calls within a db transaction; thus within db->begin and db->commit.

Definition at line 1234 of file ezcontentobjectversion.php.

eZContentObjectVersion::updateLanguageMask ( mask = false,
forceStore = true 
)

Definition at line 1619 of file ezcontentobjectversion.php.

Referenced by removeTranslation().

Returns:
the name of the current version, optionally in the specific language $lang

Definition at line 319 of file ezcontentobjectversion.php.


Member Data Documentation

eZContentObjectVersion::$CurrentLanguage = false

Definition at line 1756 of file ezcontentobjectversion.php.


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