Class: I2CE Module TemplateData: Difference between revisions
No edit summary |
No edit summary |
||
Line 31: | Line 31: | ||
*Signature: public function __construct() | *Signature: public function __construct() | ||
===_ensureNode()=== | ===_ensureNode()=== | ||
Ensure that a node is really a node. If it is not, hopes that it is an ID | Ensure that a node is really a node. If it is not, hopes that it is an ID and then makes it the corresponding node | ||
and then makes it the corresponding node | |||
*Signature: protected function _ensureNode($template,$node,$make_doc_on_failure) | *Signature: protected function _ensureNode($template,$node,$make_doc_on_failure) | ||
Parameters: | *Parameters: | ||
* [[Class: I2CE_Template | I2CE_Template]] $template | ** [[Class: I2CE_Template | I2CE_Template]] $template | ||
* [http://www.php.net/manual/en/language.pseudo-types.php mixed ] &$node<br/>Either a DOMNode or a node id. | ** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] &$node <br/>Either a DOMNode or a node id. | ||
* [http://www.php.net/manual/en/language.types.boolean.php bool ] $make_doc_on_failure<br/>defaults to true. If we can't find the node, make it the document element | ** [http://www.php.net/manual/en/language.types.boolean.php bool ] $make_doc_on_failure <br/>defaults to true. If we can't find the node, make it the document element If false, we leave $node alone. | ||
**Default Value: true | ***Default Value: true | ||
===cleanupDataNodes()=== | ===cleanupDataNodes()=== | ||
*Signature: public function cleanupDataNodes($page) | *Signature: public function cleanupDataNodes($page) | ||
Parameters: | *Parameters: | ||
*$page | *$page | ||
===ensureNode()=== | ===ensureNode()=== | ||
Ensure that a node is really a node. If it is not, hopes that it is an ID | Ensure that a node is really a node. If it is not, hopes that it is an ID and then makes it the corresponding node | ||
and then makes it the corresponding node | |||
*Signature: public function ensureNode($template,$node,$make_doc_on_failure) | *Signature: public function ensureNode($template,$node,$make_doc_on_failure) | ||
Parameters: | *Parameters: | ||
* [[Class: I2CE_Template | I2CE_Template]] $template | ** [[Class: I2CE_Template | I2CE_Template]] $template | ||
* [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $node<br/>Either a DOMNode or a node id. | ** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $node <br/>Either a DOMNode or a node id. | ||
* [http://www.php.net/manual/en/language.types.boolean.php bool ] $make_doc_on_failure<br/>defaults to true. If we can't find the node, make it the document element | ** [http://www.php.net/manual/en/language.types.boolean.php bool ] $make_doc_on_failure <br/>defaults to true. If we can't find the node, make it the document element If false, we leave $node alone. | ||
**Default Value: false | ***Default Value: false | ||
===ensureNodeArray()=== | ===ensureNodeArray()=== | ||
Ensure that a node is really a node. If it is not, hopes that it is an ID | Ensure that a node is really a node. If it is not, hopes that it is an ID and then makes it the corresponding node | ||
and then makes it the corresponding node | |||
*Signature: protected function ensureNodeArray($template,$node,$make_doc_on_failure) | *Signature: protected function ensureNodeArray($template,$node,$make_doc_on_failure) | ||
Parameters: | *Parameters: | ||
* [[Class: I2CE_Template | I2CE_Template]] $template | ** [[Class: I2CE_Template | I2CE_Template]] $template | ||
* [http://www.php.net/manual/en/language.pseudo-types.php mixed ] &$node<br/>Either a DOMNode or a node id. | ** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] &$node <br/>Either a DOMNode or a node id. | ||
* [http://www.php.net/manual/en/language.types.boolean.php bool ] $make_doc_on_failure<br/>defaults to true. If we can't find the node, make it the document element | ** [http://www.php.net/manual/en/language.types.boolean.php bool ] $make_doc_on_failure <br/>defaults to true. If we can't find the node, make it the document element If false, we leave $node alone. | ||
**Default Value: true | ***Default Value: true | ||
===getData()=== | ===getData()=== | ||
Get the data of the specified type and name that sits at or above the specifed node. | Get the data of the specified type and name that sits at or above the specifed node. | ||
*Signature: public function getData($template,$type,$name,$node,$all,$use_default) | *Signature: public function getData($template,$type,$name,$node,$all,$use_default) | ||
Parameters: | *Parameters: | ||
*$template | *$template | ||
* [http://www.php.net/manual/en/language.types.string.php string ] $type<br/>The type of the data. E.g. 'FORM' | ** [http://www.php.net/manual/en/language.types.string.php string ] $type <br/>The type of the data. E.g. 'FORM' | ||
* [http://www.php.net/manual/en/language.types.string.php string ] $name<br/>The name of the data. | ** [http://www.php.net/manual/en/language.types.string.php string ] $name <br/>The name of the data. | ||
* [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $node<br/>Specfies the node at which the data is set. If $node is a DOMNode | ** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $node <br/>Specfies the node at which the data is set. If $node is a DOMNode then it is the node. If null (default) then we search for data that applies to the whole. Otherwise $node should specify the ID of some node in the DOM. | ||
* [http://www.php.net/manual/en/language.types.boolean.php boolean ] $all<br/>Defaults to false. Set to true to get all data of the specified type and name | ** [http://www.php.net/manual/en/language.types.boolean.php boolean ] $all <br/>Defaults to false. Set to true to get all data of the specified type and name at the selected node. If false it gets the next unread piece of data on the list. | ||
**Default Value: false | ***Default Value: false | ||
* [http://www.php.net/manual/en/language.types.boolean.php boolean ] $use_default<br/>Set to true(default) if we should return the default data of the specified type if we | ** [http://www.php.net/manual/en/language.types.boolean.php boolean ] $use_default <br/>Set to true(default) if we should return the default data of the specified type if we did not find data of the specified type | ||
**Default Value: false | ***Default Value: false | ||
===getDataByCounter()=== | ===getDataByCounter()=== | ||
*Signature: protected function getDataByCounter($counter,$type,$name,$all) | *Signature: protected function getDataByCounter($counter,$type,$name,$all) | ||
Parameters: | *Parameters: | ||
*$counter | *$counter | ||
*$type | *$type | ||
Line 89: | Line 79: | ||
===getDataByNodeID()=== | ===getDataByNodeID()=== | ||
*Signature: protected function getDataByNodeID($type,$name,$node,$all,$use_default) | *Signature: protected function getDataByNodeID($type,$name,$node,$all,$use_default) | ||
Parameters: | *Parameters: | ||
*$type | *$type | ||
*$name | *$name | ||
Line 97: | Line 87: | ||
===getDataNames()=== | ===getDataNames()=== | ||
Returns the list of names registered for the specified data type | Returns the list of names registered for the specified data type | ||
*Signature: public function getDataNames($calling_obj,$type) | *Signature: public function getDataNames($calling_obj,$type) | ||
Parameters: | *Parameters: | ||
*$calling_obj | *$calling_obj | ||
* [http://www.php.net/manual/en/language.types.string.php string ] $type | ** [http://www.php.net/manual/en/language.types.string.php string ] $type #returns array of boolean. The keys are the names the values are all true. | ||
===getDataWalkUpNodes()=== | ===getDataWalkUpNodes()=== | ||
*Signature: protected function getDataWalkUpNodes($template,$type,$name,$node,$all,$use_default) | *Signature: protected function getDataWalkUpNodes($template,$type,$name,$node,$all,$use_default) | ||
Parameters: | *Parameters: | ||
*$template | *$template | ||
*$type | *$type | ||
Line 113: | Line 102: | ||
===getDefaultData()=== | ===getDefaultData()=== | ||
returns the default data of the specified type | returns the default data of the specified type | ||
*Signature: public function getDefaultData($calling_obj,$type) | *Signature: public function getDefaultData($calling_obj,$type) | ||
Parameters: | *Parameters: | ||
*$calling_obj | *$calling_obj | ||
* [http://www.php.net/manual/en/language.types.string.php string ] $type | ** [http://www.php.net/manual/en/language.types.string.php string ] $type returns mixed | ||
===getHooks()=== | ===getHooks()=== | ||
*Signature: static public function getHooks() | *Signature: static public function getHooks() | ||
Line 124: | Line 112: | ||
===processDisplayData()=== | ===processDisplayData()=== | ||
*Signature: public function processDisplayData($page) | *Signature: public function processDisplayData($page) | ||
Parameters: | *Parameters: | ||
*$page | *$page | ||
===processPostponed()=== | ===processPostponed()=== | ||
Looks through the list of postponed nodes IDs to see if there is now a corresponding | Looks through the list of postponed nodes IDs to see if there is now a corresponding node in the DOM. If so, we clear the node ID from our list of postponed nodes and set the node to have the attribute I2CEDataNode with the appropripate counter value | ||
node in the DOM. If so, we clear the node ID from our list of postponed nodes and | |||
set the node to have the attribute I2CEDataNode with the appropripate counter value | |||
*Signature: protected function processPostponed($template,$id) | *Signature: protected function processPostponed($template,$id) | ||
Parameters: | *Parameters: | ||
*$template | *$template | ||
*$id | *$id | ||
**Default Value: null | ***Default Value: null | ||
===removeData()=== | ===removeData()=== | ||
Remove the specified data | Remove the specified data | ||
*Signature: public function removeData($template,$type,$name,$nodes,$above_nodes) | *Signature: public function removeData($template,$type,$name,$nodes,$above_nodes) | ||
Parameters: | *Parameters: | ||
*$template | *$template | ||
* [http://www.php.net/manual/en/language.types.string.php string ] $type<br/>the type of data | ** [http://www.php.net/manual/en/language.types.string.php string ] $type <br/>the type of data | ||
* [http://www.php.net/manual/en/language.types.string.php string ] $name<br/>the name of the data. if null it removes all the data of the specifed type | ** [http://www.php.net/manual/en/language.types.string.php string ] $name <br/>the name of the data. if null it removes all the data of the specifed type | ||
* [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $nodes<br/>Specfies the node(s) at which the data is removed. If $node is a DOMNode | ** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $nodes <br/>Specfies the node(s) at which the data is removed. If $node is a DOMNode then it is the node. If null (default) then we search for data that applies to the whole. Otherwise $node should specify the ID of some node in the DOM. We will remove the data at all nodes that lie at or below the given node. Setting to false, means we dont check below any nodes. $param mixed $above_nodes. Defaults to null in which case no action is taken. Otherwise, if it is a DOMNode, or an id of one, or an arra of such things. we start check at that node and move up the DOM until we find the data we are looking for and then remove it. It can also be a DOMNodeList or an array of DOMNodes. | ||
**Default Value: null | ***Default Value: null | ||
*$above_nodes | *$above_nodes | ||
**Default Value: null | ***Default Value: null | ||
===setData()=== | ===setData()=== | ||
Sets data relative to a node(s) | Sets data relative to a node(s) | ||
*Signature: public function setData($template,$obj,$nodes,$type,$name,$overwrite) | *Signature: public function setData($template,$obj,$nodes,$type,$name,$overwrite) | ||
Parameters: | *Parameters: | ||
*$template | *$template | ||
* [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $obj<br/>The data to set | ** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $obj <br/>The data to set | ||
* [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $nodes<br/>Specfies the node at which the data is set. If $node is a DOMNode | ** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $nodes <br/>Specfies the node at which the data is set. If $node is a DOMNode then it is the node. If null then the data applies to the whole. Otherwise $node should specify the ID of some node in the DOM or a DOMNode. Also can be an array of string or DOMNode | ||
* [http://www.php.net/manual/en/language.types.string.php string ] $type<br/>The type of the data. E.g. 'FORM'. For a form it defaults to $form->form(), otherwise | ** [http://www.php.net/manual/en/language.types.string.php string ] $type <br/>The type of the data. E.g. 'FORM'. For a form it defaults to $form->form(), otherwise it defaults to null and throws an error if not set. | ||
* [http://www.php.net/manual/en/language.types.string.php string ] $name<br/>The name of the data. Defaults to '' | ** [http://www.php.net/manual/en/language.types.string.php string ] $name <br/>The name of the data. Defaults to '' | ||
**Default Value: '' | ***Default Value: '' | ||
* [http://www.php.net/manual/en/language.types.boolean.php boolean ] $overwrite<br/>Defaults to false. Set to true to overwrite any data of this particular | ** [http://www.php.net/manual/en/language.types.boolean.php boolean ] $overwrite <br/>Defaults to false. Set to true to overwrite any data of this particular name and type at the specifed node. <br/> Before where you would use addOption($selectID,$id,$value) you can now use setData(array('value'=>$id,'text'=>$value),$selectID,'OPTION') -- this should probably be a fuzzy method | ||
**Default Value: false | ***Default Value: false | ||
===setDataTypePriority()=== | ===setDataTypePriority()=== | ||
Set an optional priority for process data types | Set an optional priority for process data types | ||
*Signature: public function setDataTypePriority($obj,$type,$priority) | *Signature: public function setDataTypePriority($obj,$type,$priority) | ||
Parameters: | *Parameters: | ||
*$obj | *$obj | ||
* [http://www.php.net/manual/en/language.types.string.php string ] $type | ** [http://www.php.net/manual/en/language.types.string.php string ] $type | ||
* integer $priority | ** integer $priority | ||
===templateData()=== | ===templateData()=== | ||
*Signature: protected function templateData($page) | *Signature: protected function templateData($page) | ||
Parameters: | *Parameters: | ||
*$page | *$page | ||
==Inherited Fuzzy Methods== | ==Inherited Fuzzy Methods== |
Revision as of 22:43, 16 October 2009
This article desrcibes the class I2CE_Module_TemplateData.
- Extends the class: I2CE_Module.
- Location: Part of the module template-data in the package I2CE
- Source: Defined in the file modules/TemplateData/I2CE_Module_TemplateData.php
- Author: Carl Leitner <litlfred@ibiblio.org>
I2CE_Module_TemplateData
Variables
$data
An array which holds all data that is set realtive to a node.
The key of the arrays are integers (counters) greater than or equal to -1.
-1 holds the default values. for each type in:
$data[-1][$type]
For example, the default form is held at $data[-1]['FORM']
The indexing is as follows for counters >= 0
$data[$counter][$type][$name]['data']
$data[$counter][$type][$name]['nodes']
$type is the type of data, such as 'FORM'
$name is the name of the data
at 'data' we hold the actual data
and at 'nodes' we hold an array of nodes at which the data is relative to.
- Type: protected y $data
$data_priorities
An array that holds information about optional propities for the data types
- Type: protected $data_priorities
Methods
__construct()
Constructor
- Signature: public function __construct()
_ensureNode()
Ensure that a node is really a node. If it is not, hopes that it is an ID and then makes it the corresponding node
- Signature: protected function _ensureNode($template,$node,$make_doc_on_failure)
- Parameters:
- I2CE_Template $template
- mixed &$node
Either a DOMNode or a node id. - bool $make_doc_on_failure
defaults to true. If we can't find the node, make it the document element If false, we leave $node alone.- Default Value: true
cleanupDataNodes()
- Signature: public function cleanupDataNodes($page)
- Parameters:
- $page
ensureNode()
Ensure that a node is really a node. If it is not, hopes that it is an ID and then makes it the corresponding node
- Signature: public function ensureNode($template,$node,$make_doc_on_failure)
- Parameters:
- I2CE_Template $template
- mixed $node
Either a DOMNode or a node id. - bool $make_doc_on_failure
defaults to true. If we can't find the node, make it the document element If false, we leave $node alone.- Default Value: false
ensureNodeArray()
Ensure that a node is really a node. If it is not, hopes that it is an ID and then makes it the corresponding node
- Signature: protected function ensureNodeArray($template,$node,$make_doc_on_failure)
- Parameters:
- I2CE_Template $template
- mixed &$node
Either a DOMNode or a node id. - bool $make_doc_on_failure
defaults to true. If we can't find the node, make it the document element If false, we leave $node alone.- Default Value: true
getData()
Get the data of the specified type and name that sits at or above the specifed node.
- Signature: public function getData($template,$type,$name,$node,$all,$use_default)
- Parameters:
- $template
- string $type
The type of the data. E.g. 'FORM' - string $name
The name of the data. - mixed $node
Specfies the node at which the data is set. If $node is a DOMNode then it is the node. If null (default) then we search for data that applies to the whole. Otherwise $node should specify the ID of some node in the DOM. - boolean $all
Defaults to false. Set to true to get all data of the specified type and name at the selected node. If false it gets the next unread piece of data on the list.- Default Value: false
- boolean $use_default
Set to true(default) if we should return the default data of the specified type if we did not find data of the specified type- Default Value: false
- string $type
getDataByCounter()
- Signature: protected function getDataByCounter($counter,$type,$name,$all)
- Parameters:
- $counter
- $type
- $name
- $all
getDataByNodeID()
- Signature: protected function getDataByNodeID($type,$name,$node,$all,$use_default)
- Parameters:
- $type
- $name
- $node
- $all
- $use_default
getDataNames()
Returns the list of names registered for the specified data type
- Signature: public function getDataNames($calling_obj,$type)
- Parameters:
- $calling_obj
- string $type #returns array of boolean. The keys are the names the values are all true.
getDataWalkUpNodes()
- Signature: protected function getDataWalkUpNodes($template,$type,$name,$node,$all,$use_default)
- Parameters:
- $template
- $type
- $name
- $node
- $all
- $use_default
getDefaultData()
returns the default data of the specified type
- Signature: public function getDefaultData($calling_obj,$type)
- Parameters:
- $calling_obj
- string $type returns mixed
getHooks()
- Signature: static public function getHooks()
getMethods()
- Signature: static public function getMethods()
processDisplayData()
- Signature: public function processDisplayData($page)
- Parameters:
- $page
processPostponed()
Looks through the list of postponed nodes IDs to see if there is now a corresponding node in the DOM. If so, we clear the node ID from our list of postponed nodes and set the node to have the attribute I2CEDataNode with the appropripate counter value
- Signature: protected function processPostponed($template,$id)
- Parameters:
- $template
- $id
- Default Value: null
removeData()
Remove the specified data
- Signature: public function removeData($template,$type,$name,$nodes,$above_nodes)
- Parameters:
- $template
- string $type
the type of data - string $name
the name of the data. if null it removes all the data of the specifed type - mixed $nodes
Specfies the node(s) at which the data is removed. If $node is a DOMNode then it is the node. If null (default) then we search for data that applies to the whole. Otherwise $node should specify the ID of some node in the DOM. We will remove the data at all nodes that lie at or below the given node. Setting to false, means we dont check below any nodes. $param mixed $above_nodes. Defaults to null in which case no action is taken. Otherwise, if it is a DOMNode, or an id of one, or an arra of such things. we start check at that node and move up the DOM until we find the data we are looking for and then remove it. It can also be a DOMNodeList or an array of DOMNodes.- Default Value: null
- string $type
- $above_nodes
- Default Value: null
setData()
Sets data relative to a node(s)
- Signature: public function setData($template,$obj,$nodes,$type,$name,$overwrite)
- Parameters:
- $template
- mixed $obj
The data to set - mixed $nodes
Specfies the node at which the data is set. If $node is a DOMNode then it is the node. If null then the data applies to the whole. Otherwise $node should specify the ID of some node in the DOM or a DOMNode. Also can be an array of string or DOMNode - string $type
The type of the data. E.g. 'FORM'. For a form it defaults to $form->form(), otherwise it defaults to null and throws an error if not set. - string $name
The name of the data. Defaults to- Default Value:
- boolean $overwrite
Defaults to false. Set to true to overwrite any data of this particular name and type at the specifed node.
Before where you would use addOption($selectID,$id,$value) you can now use setData(array('value'=>$id,'text'=>$value),$selectID,'OPTION') -- this should probably be a fuzzy method- Default Value: false
- mixed $obj
setDataTypePriority()
Set an optional priority for process data types
- Signature: public function setDataTypePriority($obj,$type,$priority)
- Parameters:
- $obj
- string $type
- integer $priority
templateData()
- Signature: protected function templateData($page)
- Parameters:
- $page
Inherited Fuzzy Methods
launchBackgroundProcess()
This method is inherited from I2CE_Module->launchBackgroundProcess()
launchBackgroundPHPScript()
This method is inherited from I2CE_Module->launchBackgroundPHPScript()
launchBackgroundPage()
This method is inherited from I2CE_Module->launchBackgroundPage()
userMessage()
This method is inherited from I2CE_Fuzzy->userMessage()