Class: I2CE Module TemplateData: Difference between revisions

From IHRIS Wiki
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
If false, we leave $node alone.
*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
If false, we leave $node alone.
*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
If false, we leave $node alone.
*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.
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.
at the selected node.  If false it gets the next unread piece of data on the list.
did not find data of the specified type
*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
#returns array of boolean.  The keys are the names the values are all true.
*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
returns mixed
*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
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.
*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)
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
it defaults to null and throws an error if not set.
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
*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.

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

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

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
  • $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

setDataTypePriority()

Set an optional priority for process data types

  • Signature: public function setDataTypePriority($obj,$type,$priority)
  • Parameters:
  • $obj

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()