Class: I2CE Module TemplateData: Difference between revisions

From IHRIS Wiki
No edit summary
No edit summary
Line 6: Line 6:


I2CE_Module_TemplateData
I2CE_Module_TemplateData
@subpackage Core
*Author: Carl Leitner <litlfred@ibiblio.org>
*Author: Carl Leitner <litlfred@ibiblio.org>
==Variables==
==Variables==

Revision as of 21:56, 16 October 2009

This article desrcibes the class I2CE_Module_TemplateData.

It is contained in the module template-data in the package I2CE

The class is defined in the file: modules/TemplateData/I2CE_Module_TemplateData.php

I2CE_Module_TemplateData

  • Author: Carl Leitner <litlfred@ibiblio.org>

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 If false, we leave $node alone.

  • 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
    • 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 If false, we leave $node alone.

  • 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
    • 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 If false, we leave $node alone.

  • 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
    • Default Value: true

getData()

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)

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
  • boolean $all
    Defaults to false. Set to true to get all data of the specified type and name
    • Default Value: false
  • boolean $use_default
    Set to true(default) if we should return the default data of the specified type if we
    • 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

  1. returns array of boolean. The keys are the names the values are all true.
  • Signature: public function getDataNames($calling_obj,$type)

Parameters:

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 returns mixed

  • Signature: public function getDefaultData($calling_obj,$type)

Parameters:

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

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
    • Default Value: null
  • $above_nodes
    • Default Value: null

setData()

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.


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)

Parameters:

  • $template
  • mixed $obj
    The data to set
  • mixed $nodes
    Specfies the node at which the data is set. If $node is a DOMNode
  • string $type
    The type of the data. E.g. 'FORM'. For a form it defaults to $form->form(), otherwise
  • 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
    • Default Value: false

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