eZ Publish  [4.2]
eZMultiOptionType Class Reference

A datatype which works with multiple options. More...

+ Inheritance diagram for eZMultiOptionType:
+ Collaboration diagram for eZMultiOptionType:

List of all members.

Public Member Functions

 customObjectAttributeHTTPAction ($http, $action, $contentObjectAttribute, $parameters)
 eZMultiOptionType ()
 fetchClassAttributeHTTPInput ($http, $base, $classAttribute)
 fetchCollectionAttributeHTTPInput ($collection, $collectionAttribute, $http, $base, $contentObjectAttribute)
 fetchObjectAttributeHTTPInput ($http, $base, $contentObjectAttribute)
 fromString ($contentObjectAttribute, $string)
 hasObjectAttributeContent ($contentObjectAttribute)
 initializeObjectAttribute ($contentObjectAttribute, $currentVersion, $originalContentObjectAttribute)
 isIndexable ()
 metaData ($contentObjectAttribute)
 objectAttributeContent ($contentObjectAttribute)
 productOptionInformation ($objectAttribute, $optionID, $productItem)
 serializeContentClassAttribute ($classAttribute, $attributeNode, $attributeParametersNode)
 serializeContentObjectAttribute ($package, $objectAttribute)
 storeObjectAttribute ($contentObjectAttribute)
 title ($contentObjectAttribute, $name="name")
 toString ($contentObjectAttribute)
 unserializeContentClassAttribute ($classAttribute, $attributeNode, $attributeParametersNode)
 unserializeContentObjectAttribute ($package, $objectAttribute, $attributeNode)
 validateObjectAttributeHTTPInput ($http, $base, $contentObjectAttribute)

Public Attributes

const DATA_TYPE_STRING = "ezmultioption"
const DEFAULT_NAME_VARIABLE = "_ezmultioption_default_name_"

Detailed Description

A datatype which works with multiple options.

This allows the user to add several option choices almost as if he was adding attributes with option datatypes.

This class implements the interface for a datatype but passes most of the work over to the eZMultiOption class which handles parsing, storing and manipulation of multioptions and options.

This datatype supports:

  • fetch and validation of HTTP data
  • search indexing
  • product option information
  • class title
  • class serialization

Definition at line 52 of file ezmultioptiontype.php.


Member Function Documentation

eZMultiOptionType::customObjectAttributeHTTPAction ( http,
action,
contentObjectAttribute,
parameters 
)

This function performs specific actions.

It has some special actions with parameters which is done by exploding $action into several parts with delimeter '_'. The first element is the name of specific action to perform. The second element will contain the key value or id.

The various operation's that is performed by this function are as follow.

  • new-option - A new option is added to a multioption.
  • remove-selected-option - Removes a selected option.
  • new_multioption - Adds a new multioption.
  • remove_selected_multioption - Removes all multioptions given by a selection list

Reimplemented from eZDataType.

Definition at line 247 of file ezmultioptiontype.php.

eZMultiOptionType::eZMultiOptionType ( )

Constructor to initialize the datatype.

Definition at line 60 of file ezmultioptiontype.php.

eZMultiOptionType::fetchClassAttributeHTTPInput ( http,
base,
classAttribute 
)

Fetches the HTTP input for the content class attribute.

Note:
Default implementation does nothing.

Reimplemented from eZDataType.

Definition at line 362 of file ezmultioptiontype.php.

eZMultiOptionType::fetchCollectionAttributeHTTPInput ( collection,
collectionAttribute,
http,
base,
contentObjectAttribute 
)

Fetches the http post variables for collected information

Reimplemented from eZDataType.

Definition at line 226 of file ezmultioptiontype.php.

eZMultiOptionType::fetchObjectAttributeHTTPInput ( http,
base,
contentObjectAttribute 
)

Fetches the http post var integer input and stores it in the data instance.

Reimplemented from eZDataType.

Definition at line 181 of file ezmultioptiontype.php.

eZMultiOptionType::fromString ( contentObjectAttribute,
string 
)

Reimplemented from eZDataType.

Definition at line 407 of file ezmultioptiontype.php.

eZMultiOptionType::hasObjectAttributeContent ( contentObjectAttribute)
Returns:
true if there are more than one multioption in the list.

Reimplemented from eZDataType.

Definition at line 332 of file ezmultioptiontype.php.

eZMultiOptionType::initializeObjectAttribute ( contentObjectAttribute,
currentVersion,
originalContentObjectAttribute 
)

Sets default multioption values.

Reimplemented from eZDataType.

Definition at line 342 of file ezmultioptiontype.php.

eZMultiOptionType::isIndexable ( )
Returns:
true if the datatype can be indexed

Reimplemented from eZDataType.

Definition at line 165 of file ezmultioptiontype.php.

eZMultiOptionType::metaData ( contentObjectAttribute)
Returns:
The internal XML text.

Reimplemented from eZDataType.

Definition at line 173 of file ezmultioptiontype.php.

eZMultiOptionType::objectAttributeContent ( contentObjectAttribute)
Returns:
An eZMultiOption object which contains all the option data

Reimplemented from eZDataType.

Definition at line 158 of file ezmultioptiontype.php.

eZMultiOptionType::productOptionInformation ( objectAttribute,
optionID,
productItem 
)

Finds the option which has the correct ID , if found it returns an option structure.

Parameters:
$optionStringmust contain the multioption ID an underscore (_) and a the option ID.

Reimplemented from eZDataType.

Definition at line 304 of file ezmultioptiontype.php.

eZMultiOptionType::serializeContentClassAttribute ( classAttribute,
attributeNode,
attributeParametersNode 
)

Adds the necessary dom structure to the attribute parameters.

Note:
The default is to add unsupported='true' to the attribute node, meaning that the datatype does not support serializing.

Reimplemented from eZDataType.

Definition at line 444 of file ezmultioptiontype.php.

eZMultiOptionType::serializeContentObjectAttribute ( package,
objectAttribute 
)
Parameters:
package
objectAttributecontent attribute
Returns:
a DOM representation of the content object attribute

Reimplemented from eZDataType.

Definition at line 459 of file ezmultioptiontype.php.

eZMultiOptionType::storeObjectAttribute ( contentObjectAttribute)

This function calles xmlString function to create xml string and then store the content.

Reimplemented from eZDataType.

Definition at line 149 of file ezmultioptiontype.php.

eZMultiOptionType::title ( objectAttribute,
name = "name" 
)

Returns the title of the current type, this is to form the title of the object.

Reimplemented from eZDataType.

Definition at line 323 of file ezmultioptiontype.php.

eZMultiOptionType::toString ( objectAttribute)
Returns:
string representation of an contentobjectattribute data for simplified export

Reimplemented from eZDataType.

Definition at line 379 of file ezmultioptiontype.php.

eZMultiOptionType::unserializeContentClassAttribute ( classAttribute,
attributeNode,
attributeParametersNode 
)

Extracts values from the attribute parameters and sets it in the class attribute.

Note:
This function is called after the attribute has been stored and a second store is called after this function is done.

Reimplemented from eZDataType.

Definition at line 453 of file ezmultioptiontype.php.

eZMultiOptionType::unserializeContentObjectAttribute ( package,
objectAttribute,
attributeNode 
)

Unserialize contentobject attribute

Parameters:
package
objectAttributecontentobject attribute object
attributeNodeezdomnode object

Reimplemented from eZDataType.

Definition at line 472 of file ezmultioptiontype.php.

eZMultiOptionType::validateObjectAttributeHTTPInput ( http,
base,
contentObjectAttribute 
)

Validates the input for this datatype.

Returns:
True if input is valid.

Reimplemented from eZDataType.

Definition at line 70 of file ezmultioptiontype.php.


Member Data Documentation

const eZMultiOptionType::DATA_TYPE_STRING = "ezmultioption"

Definition at line 55 of file ezmultioptiontype.php.

const eZMultiOptionType::DEFAULT_NAME_VARIABLE = "_ezmultioption_default_name_"

Definition at line 54 of file ezmultioptiontype.php.


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