Class: I2CE List (Development)

From IHRIS Wiki
Revision as of 07:56, 3 August 2010 by Litlfred (talk | contribs)


This article describes the abstract class I2CE_List .

Base object for dealing with lists of data. This is an abstract object with base code for many of the I2CE_Form interface methods. It is used for many of the list database objects such as AcademicLevel and District . It assumes all lists have a code field and by default a description field but this can be overwritten by certain objects like Cadre . @abstract

Form Fields

This class is a form class and provides the following form fields

i2ce_hidden

The form field i2ce_hidden is implemented by YESNO

Variables

$cache

An array to cache lookup entries Any lookups done to the database will be cached in this static array so additional lookups using the same id won't have to access the database. @static

Methods

_flattenDataTree()

_getDisplayFields()

Worker function to get the display fields

_getDisplayString()

worker method to get the display string

_getSortFields()

Worker function to get the display fields

_monsterMash()

Gets the id's for a form that live at @param string $use_display value. Defaults to true in which case the displayed fields are returned based on the display value. If false, then the displa @param string $use_display value. Defaults to true in which case the displayed fields are returned based on the display value. If false, then the displa

  • Defined in i2ce/modules/Forms/modules/Lists/lib/I2CE_List.php on line 418
  • Signature: static protected function _monsterMash($options,$form_name,$opt_field,$opt_form,$opt_id,$sub_fields,$sub_val,$display_fields,$use_display_value,$show_hidden)
  • Parameters:
    • array &$options
      Where the id's are saved. Array with keys the ids of $form_name. For values, if $use_dislpay_value is true, then the displayed fields for $form_name that corresponds to that value. If $use_display_fields is false, then we return an array of the display fields
    • string $form_name
    • stirng $opt_field
      The field we are limiting $form_name on.
    • stirng $opt_form
      The form we wish to look that $opt_field takes values in
    • string $opt_id
      The id wish to look that $opt_field takes values. e.g. we are looking for all instances of $form_name where $opt_field is $opt_form|$opt_id
    • artary $sub_fields
      Example array(county+district,district+region,[region])
    • string $sub_val
      Defaults to . If use_display_value is set, a string we prepend to the displayed fields for the id
      • Default Value:
    • array $display_fields
      The fields which we use to populate $options with. Defaults to an empty array in which case the value of $options is the display fields registered for this form .
      • Default Value: array()
    • $use_display_value
      • Default Value: true
    • boolean $show_hidden
      Show the hidden members of the list, defaults to false.
      • Default Value: false

addCache()

Adds the id number to the cache . @param integer $code The code of the entry to add.

componentizeQuery()

returns the posible componentization of a form|id

  • Defined in i2ce/modules/Forms/modules/Lists/lib/I2CE_List.php on line 59
  • Signature: static public function componentizeQuery($qry,$forms,$component)
  • Parameters:
    • string $qry
      the query need to get the form|id
    • array $forms
      an array of string which are componentized @parm string $component The component we possibly wish to componentize at.
    • $component
  • Returns: string.
    They query need to turn $qry into one componentized to $component.

createDataTree()

Create a data tree of the selectable forms. Deisgned to be fed into tree select

  • Defined in i2ce/modules/Forms/modules/Lists/lib/I2CE_List.php on line 814
  • Signature: static public function createDataTree($fields,$forms,$limits,$orders,$display_first,$major_separator,$minor_separator,$show_hidden)
  • Parameters:
    • array $fields
      an ordered array E.g array('village+county','county','district,'region+country','country'). it is an "bottom up" array of string where strings are of the form "$form" or "$form+$link_field". In the case of the former type, then $link_field is assumed to be the next form. So for example, "county" has link field "district". If a "$form(+$link_field)" is surrounded by brackets [ ] , it is not displayed.
    • array $forms
      An unorderd array of form names whose values we allow to be selected
    • array $limits
      An array with keys form names and value limit data
    • array $orders
      An array with keys form names and values array of field orders for that form. If the form name has no orders, we use default ordering for that form based on its displayed firelds
      • Default Value: array()
    • $display_first
      • Default Value: true
    • string $major_separator
      The seperator between the start display value and the extended display values. If null, then the title is an array of values
      • Default Value: ' - '
    • string $minor_separator
      The sepeartor between the extended display values
      • Default Value: ' '
    • boolean $show_hidden
      Show the hidden members of the list, defaults to false.
      • Default Value: false

flattenDataTree()

getCache()

Return the cache cached entry for the id number. @param integer $code The code of the entry to lookup.

getDisplayFields()

Returns a list of fields used for displaying this list.

getDisplayString()

Returns display string used for displaying this list.

getExtendedDisplay()

get an exended display for a field value

  • Defined in i2ce/modules/Forms/modules/Lists/lib/I2CE_List.php on line 648
  • Signature: static public function getExtendedDisplay($fields,$start_value,$major_separator,$minor_separator)
  • Parameters:
    • array $fields
      An ordered array E.g array('village+county','county','district,'region+country','country'). it is an "bottom up" array of string where strings are of the form "$form" or "$form+$link_field". In the case of the former type, then $link_field is assumed to be the next form. So for example, "county" has link field "district". If a "$form(+$link_field)" is surrounded by brackets [ ] , it is not displayed.
    • string $start_value
      E.g. "village|10"
    • string $major_separator
      The seperator between the start display value and the extended display values. If null, we return an array.
      • Default Value: ' - '
    • string $minor_separator
      The sepeartor between the extended display values
      • Default Value: ' '
  • Returns: string
    or array

getHTMLTemplate()

Return the HTML file name for the form template for this form.

getListType()

Return the list edit type for this list. The possible return values are "list," "dual," or "select." Select will display a drop down of all choices and list and dual will list them all in a table. Dual includes the linked list object for the object.

getSortFields()

Returns a list of fields used for sorting this list.

getViewTemplate()

Return the HTML file name for the view template for this form.

isCached()

Checks to see if the id number is cached. Checks the cache to see if code has been cached or not. @param integer $code The code of the entry to lookup.

listOptions()

Return the list of options for this list as an array.

  • Defined in i2ce/modules/Forms/modules/Lists/lib/I2CE_List.php on line 236
  • Signature: static public function listOptions($form_name,$opt_field,$opt_value,$sub_fields,$selectable_forms,$show_hidden)
  • Parameters:
    • string $form_name
      The form being listed. This needs to be a subclass of I2CE_List
    • string $opt_field
      An optional field to further limit the list of choices
      • Default Value: ""
    • integer $opt_value
      If the $opt_field is used then this is the value to limit it by.
      • Default Value: '|'
    • array $sub_fields
      of string. If $op_value is is set, it is an array of linked ($form+)$field's to include results under the optional value. e.g. if $opt_value was 'country|10' and $sub_fields was array(county+district,district+region,[region],country) we would display all counties and district who are under country|10. In this case we display the extended version of the option
      • Default Value: array()
    • $selectable_forms
      • Default Value: array()
    • boolean $show_hidden
      Show the hidden members of the list, defaults to false.
      • Default Value: false
  • Returns: array

lookup()

Looks up the description of the item based on the code. This is the default method that most implementations of lookup () use. It finds the description of the object based on the code and saves it in the cache and returns it.

monsterMash()

Gets the id's for a form that live at @param string $use_display value. Defaults to true in which case the displayed fields are returned based on the display value. If false, then the displa @ returns array. . Array with keys the ids of $form_name. For values, if $use_dislpay_value is true, then

  • Defined in i2ce/modules/Forms/modules/Lists/lib/I2CE_List.php on line 371
  • Signature: static public function monsterMash($form_name,$opt_field,$opt_formid,$sub_fields,$display_fields,$use_display_value,$show_hidden)
  • Parameters:
    • string $form_name
      Example person
    • stirng $opt_field
      The field we are limiting $form_name on. Example 'residence'
    • stirng $opt_formid
      The form|id and we wish to look that $opt_field takes values in
    • artary $sub_fields
      Example array(county+district,district+region,[region]) If a non-empty array it are the sub-fields path we wish to add to the results. In the example, if $opt_form|$opt_id = country|10 and $link_field = country, then we add in person where residence = country|10, then those person where residence is an region where region+country = country|10. Then we add in those person id's where residence is any distrinct whose region is a region with region+country = country|10. Then we add in those person id's where residence is an county whose district has rgion field a region whose country field is country|10.
    • array $display_fields
      The fields which we return the values of. Defaults to an empty array in which case the value of $options is the display fields registered for this form .
      • Default Value: array()
    • $use_display_value
      • Default Value: true
    • boolean $show_hidden
      Show the hidden members of the list, defaults to false.
      • Default Value: false

name()

Return the display name for this list object. This will return the same value as lookup() but from the current object instead of from the database.

setDisplayData()

Sets the field values to be displayed in the HTML template.

showHiddenLimit()

Modifies a where clause to limit to hidden fields as neccesary @param boolean $show_hideden

walkupFieldPath()

Walk up a form/linked field path until. Return the id of the top form. $param mixed. Either an array of string or a colon-sepearted string. (imploded) values is a string of the form: form1(+field1):...:formM(+fieldM):..:fieldN there needs to be at least one colon/array needs to be at least two in length

  • Defined in i2ce/modules/Forms/modules/Lists/lib/I2CE_List.php on line 511
  • Signature: static public function walkupFieldPath($field_path,$formid)
  • Parameters:
    • $field_path
    • string $formid
      string of the form "$form|$id". the starting value. $form should be one of formX above (e.g. the dbvalue of a map field)
  • Returns: mixed.
    False on failure, string of the form "$form|$id" on success

Inherited Methods

__construct()

This public method is inherited from I2CE_Form->__construct()

addChildForm()

This public method is inherited from I2CE_Form->addChildForm()

cleanup()

This public method is inherited from I2CE_Form->cleanup()

displayField()

This public method is inherited from I2CE_Form->displayField()

form()

This public method is inherited from I2CE_Form->form()

getAllowedParentForms()

This public method is inherited from I2CE_Form->getAllowedParentForms()

getChildForms()

This public method is inherited from I2CE_Form->getChildForms()

getChildFormsByForm()

This public method is inherited from I2CE_Form->getChildFormsByForm()

getChildren()

This public method is inherited from I2CE_Form->getChildren()

getDisplayName()

This public method is inherited from I2CE_Form->getDisplayName()

getField()

This public method is inherited from I2CE_Form->getField()

getParent()

This public method is inherited from I2CE_Form->getParent()

getParentForm()

This public method is inherited from I2CE_Form->getParentForm()

getParentID()

This public method is inherited from I2CE_Form->getParentID()

getPost()

This public method is inherited from I2CE_Form->getPost()

listFields()

This public method is inherited from I2CE_Form->listFields()

processDOM()

This public method is inherited from I2CE_Form->processDOM()

reset()

This public method is inherited from I2CE_Form->reset()

search()

This public method is inherited from I2CE_Form->search()

setDisplayName()

This public method is inherited from I2CE_Form->setDisplayName()

setForm()

This public method is inherited from I2CE_Form->setForm()

setFromPost()

This public method is inherited from I2CE_Form->setFromPost()

setParent()

This public method is inherited from I2CE_Form->setParent()

lookupArray()

This protected method is inherited from I2CE_Form->lookupArray()

__get()

This public method is inherited from I2CE_FieldContainer->__get()

__isset()

This public method is inherited from I2CE_FieldContainer->__isset()

__set()

This public method is inherited from I2CE_FieldContainer->__set()

__unset()

This public method is inherited from I2CE_FieldContainer->__unset()

addField()

This public method is inherited from I2CE_FieldContainer->addField()

clearFields()

This public method is inherited from I2CE_FieldContainer->clearFields()

current()

This public method is inherited from I2CE_FieldContainer->current()

getAttribute()

This public method is inherited from I2CE_FieldContainer->getAttribute()

getContainerType()

This public method is inherited from I2CE_FieldContainer->getContainerType()

getFieldNames()

This public method is inherited from I2CE_FieldContainer->getFieldNames()

getHTMLName()

This public method is inherited from I2CE_FieldContainer->getHTMLName()

getId()

This public method is inherited from I2CE_FieldContainer->getId()

getLoad()

This public method is inherited from I2CE_FieldContainer->getLoad()

getMeta()

This public method is inherited from I2CE_FieldContainer->getMeta()

getName()

This public method is inherited from I2CE_FieldContainer->getName()

getNameId()

This public method is inherited from I2CE_FieldContainer->getNameId()

getQueryDisplay()

This public method is inherited from I2CE_FieldContainer->getQueryDisplay()

getQueryFields()

This public method is inherited from I2CE_FieldContainer->getQueryFields()

getQueryString()

This public method is inherited from I2CE_FieldContainer->getQueryString()

hasAttribute()

This public method is inherited from I2CE_FieldContainer->hasAttribute()

hasInvalid()

This public method is inherited from I2CE_FieldContainer->hasInvalid()

hasMeta()

This public method is inherited from I2CE_FieldContainer->hasMeta()

isValid()

This public method is inherited from I2CE_FieldContainer->isValid()

key()

This public method is inherited from I2CE_FieldContainer->key()

load()

This public method is inherited from I2CE_FieldContainer->load()

next()

This public method is inherited from I2CE_FieldContainer->next()

removeField()

This public method is inherited from I2CE_FieldContainer->removeField()

rewind()

This public method is inherited from I2CE_FieldContainer->rewind()

setAttribute()

This public method is inherited from I2CE_FieldContainer->setAttribute()

setId()

This public method is inherited from I2CE_FieldContainer->setId()

setMeta()

This public method is inherited from I2CE_FieldContainer->setMeta()

setName()

This public method is inherited from I2CE_FieldContainer->setName()

valid()

This public method is inherited from I2CE_FieldContainer->valid()

validate()

This public method is inherited from I2CE_FieldContainer->validate()

addFields()

This protected method is inherited from I2CE_FieldContainer->addFields()

getAttributes()

This protected method is inherited from I2CE_FieldContainer->getAttributes()

_hasMethod()

This public method is inherited from I2CE_Fuzzy->_hasMethod()

Inherited Variables

$children

Theis public variable is inherited from I2CE_Form->$children

$parent

Theis protected variable is inherited from I2CE_Form->$parent

$parent_forms

Theis protected variable is inherited from I2CE_Form->$parent_forms

$name

Theis protected variable is inherited from I2CE_FieldContainer->$name

$display_name

Theis protected variable is inherited from I2CE_FieldContainer->$display_name

$fields

Theis protected variable is inherited from I2CE_FieldContainer->$fields

$attributes

Theis protected variable is inherited from I2CE_FieldContainer->$attributes

$id

Theis protected variable is inherited from I2CE_FieldContainer->$id

$factory

Theis protected variable is inherited from I2CE_FieldContainer->$factory

Inherited Fuzzy Methods

isNumeric()

This method is inherited from I2CE_Form->isNumeric()

getLimitStyles()

This method is inherited from I2CE_Form->getLimitStyles()

checkLimit()

This method is inherited from I2CE_Form->checkLimit()

checkWhereClause()

This method is inherited from I2CE_Form->checkWhereClause()

createCheckFunction()

This method is inherited from I2CE_Form->createCheckFunction()

createCheckLimitString()

This method is inherited from I2CE_Form->createCheckLimitString()

generateLimit()

This method is inherited from I2CE_Form->generateLimit()

generateWhereClause()

This method is inherited from I2CE_Form->generateWhereClause()

isComponentized()

This method is inherited from I2CE_Form->isComponentized()

addChild()

This method is inherited from I2CE_Form->addChild()

getChildIds()

This method is inherited from I2CE_Form->getChildIds()

getStorage()

This method is inherited from I2CE_Form->getStorage()

isWritable()

This method is inherited from I2CE_Form->isWritable()

populate()

This method is inherited from I2CE_Form->populate()

populateChild()

This method is inherited from I2CE_Form->populateChild()

populateChildren()

This method is inherited from I2CE_Form->populateChildren()

populateFirst()

This method is inherited from I2CE_Form->populateFirst()

populateHistory()

This method is inherited from I2CE_Form->populateHistory()

populateLast()

This method is inherited from I2CE_Form->populateLast()

delete()

This method is inherited from I2CE_Form->delete()

save()

This method is inherited from I2CE_Form->save()

setChangeType()

This method is inherited from I2CE_Form->setChangeType()

userMessage()

This method is inherited from I2CE_Fuzzy->userMessage()