an object that manages data related by an SQL JOIN but pretends to be a single form field.
If the element in the table is a selection list then the setup will be as a join table.
We respect the 'field' interface while overriding pretty much all of it.
Primitive class for managing join data. Can be used on its own to just join data or with a selection lists class to make a join table. This may be used to determine the choices that a user is permitted to select (e.g. dropdown list or radio buttons)
Used in a many:many or many:1 relationships (i.e. a field in a table that is the listed in a join table
Typical usage:
Located in /inc/formslib/joindata.php (line 55)
Field | --JoinData
Inherited from Field
Field::$attr
Field::$changed
Field::$DEBUG
Field::$defaultValue
Field::$description
Field::$duplicateName
Field::$editable
Field::$errorclass
Field::$hidden
Field::$isValid
Field::$isValidTest
Field::$longname
Field::$name
Field::$namebase
Field::$notifyIdChange
Field::$oob_errorMessage
Field::$oob_status
Field::$ovalue
Field::$required
Field::$requiredTwoStage
Field::$sqlHidden
Field::$suppressValidation
Field::$useNullValues
Field::$value
Field::$valueCleaner
Create a new joindata object
add a field to the join table
Field will appear in each row returned from the join table
Check validity of data
override the isValid method of the Field class, using the checkValid method of each member row completed as well as cross checks on other fields.
Connect the join table and fill from the database
set whether each row is editable
Set the name base of the rows
Trip the complex field within this object to sync()
This allows the object to then know our actual value (at last) -- this has to be delayed for as long as possible as an INSERT might be needed before the value of the selection is actually known, but that shouldn't be done until all the data has passed all validation tests
Calculate the maximum number of rows to display (e.g. including spares)
Count the number of rows in the join table so we know how many to retrieve
Create a new row from the protorow for storing data
Inherited From Field
Field::Field()
Field::display()
Field::displayInTable()
Field::getValue()
Field::hidden()
Field::isValid()
Field::log()
Field::selectable()
Field::selectedValue()
Field::set()
Field::setattr()
Field::setEditable()
Field::setNamebase()
Field::sqlSetStr()
Field::text_dump()
Field::update()
Field::__clone()
Documentation generated on Tue, 06 Mar 2007 10:01:42 +0000 by phpDocumentor 1.3.0