Data Control ABC

Abstract base class for data oriented controls.

Tag Attributes

< />

DataSourceSupportsPaging=""
Sets whether the DataSource supports the paging parameters
When set to true, two parameters will be appended to the call to the DataSource which represent the start and limit values of pagination

DataSourceSupportsOrdering=""
Sets whether the DataSource supports the order parameter
When set to true, an order parameter will be appended to the data. The order parameter is an array containing values similar to: array(array('contact_id', 'desc'), ...)

DataJoins=""
Data joins

DataFilter=""
Data filter

DataSearch=""
Data Search

DataStart=""
Data start

DataLimit=""
Data limit

DataGroupBy=""
Data Group By

PopulateAt=""
Sets when to populate from the datasource

KeyAs=""
The name of the variable to be registered for each row's key

Paging=""
Whether to enable paging on the data control

PagingRows=""
Number of rows to show before paging

PagingAutoRender=""
If set to false, you must call $element.renderPagerControl() manually

EmptyMessage=""
The message shown when there are no rows in the data control

ClassRow=""
The CSS class for rows (<tr> tags)

Exportable=""
Whether or not to add an export link

UseAjax=""
Whether or not to enhance the control using AJAX

DataSource=""
Sets the data source for retreiving the result set

DataOrder=""
Sets the order by which the data is sorted
The parameter is a two dimensional array consisting of column names and the direction of the order. For example, the following would sort contacts by their last name ascending and in the event of two contacts having the same last name, their first name descending array(array('contact_last_name', 'asc'), array('contact_first_name', 'desc'))

As=""
Sets the name of the variable registered for each row

HasPopulated=""
Returns whether or not the data control has been populated

CurrentRowId=""
Returns the current row id

Width=""
Sets the width of the element

Height=""
Sets the height of the element

Id=""
Sets id of the object - used for the html id attribute and referencing in the parser's
document object model

AttributeSet=""
Calls setAttribute() for each key value pair in $arrAttributes

AjaxModified=""
Sets whether or not this object is modified by ajax requests

AjaxEventParameter=""
Sets a parameter which can be passed to the ajax event
Be careful with security on this parameter as it is passed through javascript in the clients browser.

ChildNodes=""
Sets the children of this node in the DOM

InnerText=""
Adds a new TextNode child at the end of the children

Class Methods

The following methods can be invoked on instances of this class.

__clone()

__sleep()

getIsExport()

getIsAjax()

getRequiresId()

setDataSource(string pDataSource)

Sets the data source for retreiving the result set

getDataSource()

Returns the current data source

setDataOrder(array arrOrder)

Sets the order by which the data is sorted
The parameter is a two dimensional array consisting of column names and the direction of the order. For example, the following would sort contacts by their last name ascending and in the event of two contacts having the same last name, their first name descending array(array('contact_last_name', 'asc'), array('contact_first_name', 'desc'))

getDataOrder()

Returns the order by which data is sorted

setAs(string strAs)

Sets the name of the variable registered for each row

getAs()

Sets the name of the variable registered for each row

setChildNodesFromTemplate(mixed arrChildNodes)

stateRestore(mixed arrAttributes)

Restores the saved state of this object from the users session

stateGetSavableProperties()

Returns a list of properties which will be saved to session state

getHasPopulated()

Returns whether or not the data control has been populated

getCurrentRowId()

Returns the current row id

getRow()

setData(array arrData)

Sets the data (usually done by populate())

getData()

Returns the data that was returned by populating from the datasource

getDataCount()

Returns the number of rows returned by the datasource

setParserVariable(mixed strKey, array arrRow)

Sets the parser variables for As="" and KeyAs=""

unsetParserVariable()

Removes the parser variables for As="" and KeyAs=""

populateEval(mixed pExpression, mixed arrProperties)

appendIntoDataRow(array arrRow)

Data controls implement this function to add child nodes for the data

populate()

Adds rows from the configured datasource
Executes the datasource expression

repopulate()

Repopulates the data control
Note: There should not ever be a need to call this function. AJAX calls repopulate data controls automaticallly.

populateData(mixed pAppendTarget)

export()

initialize(mixed bDontPopulate)

getRowAttributes()

renderTagOpen(mixed arrAttributes)

Renders the opening tag

renderEmptyMessage(string strMessage)

Renders the message to be displayed when no rows are present

renderRow(\Controls\Data\DataRow pRow)

Renders a data row
Other data controls override this to render rows in different ways.

renderTagContents()

renderPagerControl()

Renders the pager arrows / comboboxes at the bottom of the data control

renderTagClose()

onDOMReadySetParsedAttributesAJAX()

ajaxShowMore(mixed strResult)

AJAX(mixed strId, mixed strIncludedCSS, mixed strIncludedJS)

getTagNameHTML()

Returns the base tag name

getTagNameClosedInline()

Returns whether the tag is closed inline

setWidth(mixed strWidth)

Sets the width of the element

getWidth()

Returns the width of the element

setHeight(mixed strHeight)

Sets the height of the element

getHeight()

Returns the height of the element

getJSAttributes()

Returns a set of JavaScript attributes that differ from the default JS implementation
Default values on properties can be specified by @js_attribute and @js_default

onDOMReady()

getAttributesString(mixed arrOverrides, mixed bId, bool bSize)

Returns the attributes of the elment as a renderable properties string

generateId()

Generates an id for the node if one isnt already set

getRequiresContainerDiv()

Returns whether or not this control will be wrapped in a container span

RestoreControlFromState(string strId)

Restores a control from its element state

setId(string strId)

Sets id of the object - used for the html id attribute and referencing in the parser's
document object model

getId()

Returns the id of the object

__get(string strName)

Overload for returning an attribute

__set(mixed strName, string strValue)

Overload for setting an attribute

__isset(string strName)

Returns whether an attribute exists

__unset(string strName)

Removes an attribute

__destruct()

setAttribute(mixed strAttribute, string strValue, mixed bDecode)

Sets an attribute
Returns true when handled Returns false when set as standard a HTML attribute

setAttributes(array arrAttributes)

Calls setAttribute() for each key value pair in $arrAttributes

setAttributesHTML(array arrAttributes)

Sets generic HTML attributes not specified by attributes of this control

getAttributesHTML(array arrAttributes)

Returns the current attributes set that aren't defined attributes of this control

setAttributeHTML(mixed strAttribute, mixed strValue)

Sets a single attribute

getAttributeHTML(mixed strAttribute)

Returns a single attribute

setAttributeJSAdd(mixed strAttrib, mixed strValue)

Adds a javascript handler attribute
If a handlers already exist, the new handler added to the end

getAttribute(mixed strAttribute)

Returns the value of the given attribute

removeAttribute(string strAttrib)

Removes an attribute

getAttributes()

Returns the objects attributes as an associative array

requireAttribute(mixed strAttribute, mixed strValue)

setAttributesParsedInit(mixed arrAttributes)

getAttributesParsedInit()

setAttributesParsedRender(mixed arrAttributes)

getAttributesParsedRender()

mergeAttributes(mixed arr1, array arr2)

Merges two sets of attributes

getStyles()

setStyle(mixed strStyle, mixed strValue)

setStyles(mixed arrStyles)

setAjaxModified(bool bAjaxModified)

Sets whether or not this object is modified by ajax requests

getAjaxModified()

Returns whether or not this object is modified by ajax requests

stateGetSavablePropertiesAllAttributes()

Returns a list of all attributes to save to session state

stateSave()

Serializes the state of the object to session

stateSaveAdditional(mixed strKey, string strValue)

Sets a key value pair for saving additional state data
This data is handled manually by each inheriting control

stateIsSetAdditional(string strKey)

Returns whether an additional state key has been set

stateGetAdditional(string strKey)

Returns the value of a key in the additional state set
Note: This function returns a reference

stateUnsetAdditional(string strKey)

Deletes additional saved data

stateSaveAdditionalArray(mixed strKey, mixed strKey2, mixed strValue)

Sets an inner array key value pair for saving additional state data

stateIsSetAdditionalArray(mixed strKey, string strKey2)

Returns whether an additional state key has been set

stateGetAdditionalArray(mixed strKey, string strKey2)

Returns an inner array key value pair for additional state data

stateGetPrevious()

Returns the state data for the current object

stateRenderJSGetContents()

stateRenderJS()

addEventHandler(mixed strEventName, mixed strCode)

Adds an event handler
If $strCode is an array, call_user_func_array will be called directly call_user_func_array($strFunc[0], $strFunc[1]);

removeEventHandler(mixed strEventName)

triggerEvent(string strEventName)

Triggers a server side event
Calls all event handlers set by addEventHandler

setEventHandlersAjax(array arrHandlers)

Sets the ajax event handlers

addEventHandlerAjax(mixed strEventName, mixed strAjaxEventId)

Adds an AJAX event handler

getEventHandlersAjax()

Sets the ajax event handlers

setAjaxEventParameter(string strParameter)

Sets a parameter which can be passed to the ajax event
Be careful with security on this parameter as it is passed through javascript in the clients browser.

getAjaxEventParameter()

Returns the current ajax event parameter

callDelegate(string strFunc)

Trigger an event by evaluating the script in $strFunc

onDOMReadySetParsedAttributes()

render()

Renders the element

renderAJAXTree(mixed bInside)

__sleepExport()

Magic function for a better var_export() of nodes

__wakeup()

Wake up

__toString()

Renders the element to a string

getNodeName()

Returns the name of the tag

getNodeDisplayType()

Returns the CSS display type of the node

getTrimContents()

Returns whether the control should trim its contents for optimisation purposes

setParentNode(\Framework\DOM\Nodes\NodeABC pNode)

Sets the elements parent node in the DOM

getParentNode()

Returns the elements parent node in the DOM

getAscendant(string strAscendantClass)

Returns the first ascendant node of a specific class

getDocument()

Returns the elements top most / document element

setChildNodes(array arrChildNodes)

Sets the children of this node in the DOM

getChildNodes()

Returns the children of this node

insertBefore(mixed pNewNode, mixed pNode)

insertAfter(mixed pNewNode, mixed pNode)

appendChild(\Framework\DOM\Nodes\NodeABC pNode)

Adds new child at the end of the children

appendChildText(mixed strText)

Adds a new TextNode child at the end of the children

removeChild(\Framework\DOM\Nodes\NodeABC pNode)

Removes the specified node from the list of children

debugRenderChildren(mixed iDepth)

resetDOMStates()

Resets the indicators for dom states so that reinitialisation / rendering can occur

uiStateGetParentVars()

Returns an array containing the states of parent controls
such as DialogBox and TabList

__call(mixed strName, array arrArguments)

Magic function to trap calls to undefined functions and throw an exception rather than
a fatal error.

__callStatic(mixed strName, array arrArguments)

Magic function to trap static calls to undefined functions and throw an exception rather
than a fatal error.

classGetFolder()

Returns the folder where the class exists

__set_state(mixed arrValues)

classGetFolderResources()

Returns the folder where the class's resources exist

classGetSrcFile()

Returns the folder where the class exists

classGetSrcHash()

Returns the folder where the class exists

classGetReflection()

Returns the reflection data for the current class

classGetReflectionAnnotation(string strField)

Returns a specific class annotation for the current class