Class: I2CE FormStorage DB
This article desrcibes the1 class I2CE_FormStorage_DB.
- Extends the class: I2CE_FormStorage_Mechanism.
It is contained in the module forms-storage in the package I2CE
The class is defined in the file: modules/Forms/modules/FormStorage/lib/I2CE_FormStorage_DB.php
@filesource Class I2CE_Module_FormStorage_DB
- Author: Carl Leitner <litlfred@ibiblio.org>
- Since: v3.2.0
Variables
$db
The database object
- Type: protected MDB2 $db
Methods
FF_populateHistory()
Populate the history of entries for the form field if the storage module handles history.
- Signature: public function FF_populateHistory($form_field)
- Returns: boolean
Parameters:
- I2CE_FormField $form_field
__construct()
Construct this module class
- Signature: public function __construct($name,$options)
Parameters:
getFields()
Generates a SQL to select the required fields. If it is scalar and non-boolean, it is consider to be the ID of the parent, and then we get all forms with parent the given id. @param mixed $expr array or class implementing ArrayAccess, Iterator, and Countable (e.g. MagicDataNode) . the where data. If it is as an array of two integers, it is the offset and then number of results to limit to. @param callback $field_refernece_callback. A callback function whose first arguement is the form, the second arguements is the field and which returns the way the field value should be references as a field. If the callback is null (the default) then the reference used is "$form+$field" time greater than $mod_time. If the form storage has no way of tracking modifucation time, all entries are listed.
- Signature: public function getFields($form,$fields,$parent,$where_data,$ordering,$limit,$field_reference_callback,$mod_time)
- Returns: string the SQL Query needed to get the form/field data or false on failure.
Parameters:
- string $form
The form we are select from - array $fields
of string. the fields that we want to select. the keys are the fields names, the values are what we wish to select them as.- Default Value: array()
- boolean $parent
Defaults to false. If true, we include the parent id as a referenced field. - $where_data
- Default Value: array()
- array $ordering
An array of fields to order by. Defaults to the empty array. Prepend a - to order by in descending order.- Default Value: array()
- mixed $limit
Defaults to false. It true, returns only one result. If an integer it is the numeber of records to limit to.- Default Value: false
- $field_reference_callback
- Default Value: null
- integer $mod_time
Defaults to -1. If non-negative, we only list the requested fields for an id if at least one of them has a modification- Default Value: -1
getIdsAsChild()
Gets the id's for the given child for this form. @param array/string: an optional orderBy array of fields @param array where @param integer: A limit of the number of children ids to return
- Signature: public function getIdsAsChild($form,$parent_form_id,$order_by,$where,$limit)
- Returns: array
Parameters:
getRecords()
Return an array of all the record ids for a given form.
- Signature: public function getRecords($form)
- Returns: array
Parameters:
- string $form
getRequiredFieldsQuery()
Construct a query (to be used as a sub-select) to view the fields of the given form. It always will return the id of the form as well If it is scalar and non-boolean, it is consider to be the ID of the parent, and then we get all forms with parent the given id. @param callback $field_refernece_callback. A callback function whose first arguement is the form, the second arguements is the field and which returns the way the field value should be references as a field. If the callback is null (the default) then the reference used is "$form+$field" time greater than or equal to $mod_time. If the form storage has no way of tracking modifucation time, all entries are listed.
- Signature: abstract public function getRequiredFieldsQuery($form,$fields,$id,$parent,$field_reference_callback,$mod_time)
- Returns: string the query or false on failed.
Parameters:
- string $form
- mixed $fields
Either a string, the field, or an array of string, the fields. - mixed $id
Defaults to null. If non-null it is the id that we wish to limit to.- Default Value: null
- boolean $parent
Defaults to false. If true, we include the parent id as a referenced field.- Default Value: false
- $field_reference_callback
- Default Value: null
- integer $mod_time
Defaults to -1. If non-negative, we only list the requested fields for an id if at least one of them has a modification- Default Value: -1
listDisplayFields()
and then we get all forms with parent the given id. If true, we return the parent as one of the fields. If it is as an array of two integers, it is the offset and then number of results to limit to. time greater than or equal to $mod_time. If the form storage has no way of tracking modifucation time, all entries are listed.
- Signature: public function listDisplayFields($form,$fields,$parent,$where_data,$ordering,$limit,$mod_time)
- Returns: mixed an array with key id's and value and array of values. the array of values has as keys the fields with their corresponding value.
Parameters:
- string $form
- array $fields
of string. The fields we want returned - boolean $parent
Defaults to false. If it is scalar and non-boolean, it is consider to be the ID of the parent,- Default Value: false
- array $where_data
contains the where clause information about this form or a nested- Default Value: array()
- array $ordering
An array of fields to order by. Defaults to the empty array. Prepend a - to order by in descending order.- Default Value: array()
- mixed $limit
Defaults to false. It true, returns only one result. If an integer it is the numeber of records to limit to.- Default Value: false
- integer $mod_time
Defaults to -1. If non-negative, we only list the requested fields for an id if at least one of them has a modification- Default Value: -1
listFields()
and then we get all forms with parent the given id. If true, we return the parent as one of the fields. If it is as an array of two integers, it is the offset and then number of results to limit to. time greater than or equal to $mod_time. If the form storage has no way of tracking modifucation time, all entries are listed.
- Signature: public function listFields($form,$fields,$parent,$where_data,$ordering,$limit,$mod_time)
- Returns: mixed an array with key id's and value and array of values. the array of values has as keys the fields with their corresponding value.
Parameters:
- string $form
- array $fields
of string. The fields we want returned - boolean $parent
Defaults to false. If it is scalar and non-boolean, it is consider to be the ID of the parent,- Default Value: false
- array $where_data
contains the where clause information about this form or a nested- Default Value: array()
- array $ordering
An array of fields to order by. Defaults to the empty array. Prepend a - to order by in descending order.- Default Value: array()
- mixed $limit
Defaults to false. It true, returns only one result. If an integer it is the numeber of records to limit to.- Default Value: false
- integer $mod_time
Defaults to -1. If non-negative, we only list the requested fields for an id if at least one of them has a modification- Default Value: -1
lookupDisplayField()
Looks up the description of the item based on the code.
This is the default method that most implementations of {@link lookup()} use. It finds the description of the object based on the code and saves it in the cache and returns it. than one. If false, it returns it as an array.
- Signature: public function lookupDisplayField($form,$id,$fields,$delim)
- Returns: string false on failure
Parameters:
- string $form
The name of the form in the database. - integer $id
The code of the entry to lookup. - array $fields
A list of fields to look up and return. - string $delim
The delimiter to put between returned fields if there are more
lookupField()
Looks up the description of the item based on the code.
This is the default method that most implementations of {@link lookup()} use. It finds the description of the object based on the code and saves it in the cache and returns it. than one. If false, it returns it as an array.
- Signature: public function lookupField($form,$id,$fields,$delim)
- Returns: string false on failure
Parameters:
- string $form
The name of the form in the database. - integer $id
The code of the entry to lookup. - array $fields
A list of fields to look up and return. - string $delim
The delimiter to put between returned fields if there are more
populate()
Populate the member variables of the object from the database.
- Signature: public function populate($form)
Parameters:
- I2CE_Form $form
search()
and then we get all forms with parent the given id. If it is as an array of two integers, it is the offset and then number of results to limit to.
- Signature: public function search($form,$parent,$where_data,$ordering,$limit)
- Returns: mixed an array of matching form ids. However, ff $limit_one is true or 1 or
array ($offset,1) then then we return either the id or false, if none found or there was an error. Parameters:
- string $form
The form name. - boolean $parent
Defaults to false. If it is scalar and non-boolean, it is consider to be the ID of the parent,- Default Value: false
- mixed $where_data
array or class implementing ArrayAccess, Iterator, and Countable (e.g. MagicDataNode) . the where data.- Default Value: array()
- array $ordering
An array of fields to order by. Defaults to the empty array. Prepend a - to order by in descending order.- Default Value: array()
- mixed $limit
Defaults to false. It true, returns only one result. If an integer it is the numeber of records to limit to.- Default Value: false
Inherited Variables
$name
Theis protected variable is inherited from I2CE_FormStorage_Mechanism->$name
$global_options
Theis protected variable is inherited from I2CE_FormStorage_Mechanism->$global_options
$ordering
Theis protected variable is inherited from I2CE_FormStorage_Mechanism->$ordering
Inherited Fuzzy Methods
userMessage()
This method is inherited from I2CE_Fuzzy->userMessage()