Version: current

# Class ComplexTableField_ItemRequest

  Object
  ViewableData implements IteratorAggregate
  RequestHandler
  TableListField_ItemRequest
  ComplexTableField_ItemRequest

### Direct known subclasses

`DataObjectManager_ItemRequest`, `MemberTableField_ItemRequest`

### Indirect known subclasses

`FileDataObjectManager_ItemRequest`, `ImageDataObjectManager_ItemRequest`

Package: forms\fields-relational
Located at sapphire/forms/ComplexTableField.php

## Methods summary

`public` | # `Link( mixed $action = null )` #### Overrides `TableListField_ItemRequest::Link`
`public` | # `index( )`
`public String` | # `show( )` Just a hook, processed in {DetailForm()} Just a hook, processed in {DetailForm()} #### Returns `String` String
`public String` | # `edit( )` Just a hook, processed in {DetailForm()} Just a hook, processed in {DetailForm()} #### Returns `String` String
`public` | # `delete( )` #### Overrides `TableListField_ItemRequest::delete`
`public` | # `dataObj( )` Return the data object being manipulated Return the data object being manipulated #### Overrides `TableListField_ItemRequest::dataObj`
`public` | # `DetailForm( integer $childID = null )` Renders view, edit and add, depending on the given information. The form needs several parameters to function independently of its "parent-form", some derived from the context into a hidden-field, some derived from the parent context (which is not accessible here) and delivered by GET: ID, Identifier of the currently edited record (only if record is loaded). <parentIDName>, Link back to the correct parent record (e.g. "parentID"). parentClass, Link back to correct container-class (the parent-record might have many 'has-one'-relationships) CAUTION: "ID" in the DetailForm would be the "childID" in the overview table. Renders view, edit and add, depending on the given information. The form needs several parameters to function independently of its "parent-form", some derived from the context into a hidden-field, some derived from the parent context (which is not accessible here) and delivered by GET: ID, Identifier of the currently edited record (only if record is loaded). <parentIDName>, Link back to the correct parent record (e.g. "parentID"). parentClass, Link back to correct container-class (the parent-record might have many 'has-one'-relationships) CAUTION: "ID" in the DetailForm would be the "childID" in the overview table. #### Parameters $childID int $childID
`public` | # `saveComplexTableField( mixed $data, mixed $form, mixed $request )` Use the URL-Parameter "action_saveComplexTableField" to provide a clue to the main controller if the main form has to be rendered, even if there is no action relevant for the main controller (to provide the instance of ComplexTableField which in turn saves the record. Use the URL-Parameter "action_saveComplexTableField" to provide a clue to the main controller if the main form has to be rendered, even if there is no action relevant for the main controller (to provide the instance of ComplexTableField which in turn saves the record. This is for editing existing item records. `ComplexTableField::saveComplexTableField()` #### See Form::ReferencedField
`public` | # `PopupCurrentItem( )`
`public` | # `PopupFirstLink( )`
`public` | # `PopupLastLink( )`
`public` | # `PopupNextLink( )`
`public` | # `PopupPrevLink( )`
`public `Object`` | # `Pagination( )` Method handles pagination in asset popup. Method handles pagination in asset popup. #### Returns ``Object`` DataObjectSet
`public` | # `ShowPagination( )`
`public` | # `PopupClasses( )` Get part of class ancestry (even if popup is not subclassed it might be styled differently in css) Get part of class ancestry (even if popup is not subclassed it might be styled differently in css)
`public` | # `getParentIdName( mixed $parentClass, mixed $childClass )` Returns the db-fieldname of the currently used has_one-relationship. Returns the db-fieldname of the currently used has_one-relationship. #### Overrides `TableListField_ItemRequest::getParentIdName`
`public` | # `setParentIdName( String $str )` Manually overwrites the parent-ID relations. Manually overwrites the parent-ID relations. #### Parameters $str String $str Example: FamilyID (when one Individual has_one Family) #### See setParentClass() #### Overrides `TableListField_ItemRequest::setParentIdName`
`public` | # `getParentIdNameRelation( mixed $parentClass, mixed $childClass, mixed $relation )` Returns the db-fieldname of the currently used relationship. Returns the db-fieldname of the currently used relationship. #### Overrides `TableListField_ItemRequest::getParentIdNameRelation`
`public` | # `setTemplatePopup( mixed $template )`

### Methods inherited from TableListField_ItemRequest

`__construct()`, `getParentController()`

### Methods inherited from RequestHandler

`allowedActions()`, `checkAccessAction()`, `getRequest()`, `handleRequest()`, `hasAction()`, `httpError()`

### Methods inherited from ViewableData

`ATT_val()`, `BaseHref()`, `CSSClasses()`, `ColumnBreak()`, `ColumnCalc()`, `ColumnNumber()`, `ColumnPad()`, `ColumnPos()`, `CurrentMember()`, `CurrentPage()`, `Debug()`, `Even()`, `EvenOdd()`, `First()`, `FirstLast()`, `HasPerm()`, `IsAjax()`, `JS_val()`, `Last()`, `Me()`, `Middle()`, `MiddleString()`, `Modulus()`, `MultipleOf()`, `Odd()`, `Pos()`, `RAW_val()`, `SQL_val()`, `ThemeDir()`, `ThemeName()`, `Top()`, `TotalItems()`, `XML_val()`, `__get()`, `__isset()`, `__set()`, `buildCastingCache()`, `cachedCall()`, `castingClass()`, `castingHelper()`, `castingHelperPair()`, `castingObjectCreator()`, `castingObjectCreatorPair()`, `customise()`, `defineMethods()`, `escapeTypeForField()`, `getField()`, `getIterator()`, `getSecurityID()`, `getXMLValues()`, `hasField()`, `hasValue()`, `i18nLocale()`, `iteratorProperties()`, `obj()`, `renderWith()`, `setCustomisedObj()`, `setField()`

### Methods inherited from Object

`__call()`, `__toString()`, `__wakeup()`, `addMethodsFrom()`, `addStaticVars()`, `addWrapperMethod()`, `add_extension()`, `add_static_var()`, `allMethodNames()`, `cacheToFile()`, `cacheToFileWithArgs()`, `clearCache()`, `combined_static()`, `create()`, `createMethod()`, `create_from_string()`, `exists()`, `extInstance()`, `extend()`, `getCustomClass()`, `getExtensionInstance()`, `getExtensionInstances()`, `get_extensions()`, `get_static()`, `hasExtension()`, `hasMethod()`, `has_extension()`, `invokeWithExtensions()`, `is_a()`, `loadCache()`, `parentClass()`, `parse_class_spec()`, `remove_extension()`, `sanitiseCachename()`, `saveCache()`, `set_stat()`, `set_static()`, `set_uninherited()`, `stat()`, `strong_create()`, `uninherited()`, `uninherited_static()`, `useCustomClass()`

### Magic methods summary

## Properties summary

`protected mixed` | $ctf | #
`protected mixed` | $itemID | #
`protected mixed` | $methodName | #
`public static array` | $url_handlers | # The default URL handling rules. This specifies that the next component of the URL corresponds to a method to be called on this RequestHandlingData object. The default URL handling rules. This specifies that the next component of the URL corresponds to a method to be called on this RequestHandlingData object. The keys of this array are parse rules. See `SS_HTTPRequest::match()` for a description of the rules available. The values of the array are the method to be called if the rule matches. If this value starts with a '$', then the named parameter of the parsed URL wil be used to determine the method name.

### Properties inherited from RequestHandler

`$allowed_actions`, `$brokenOnConstruct`, `$request`

### Properties inherited from ViewableData

`$casting`, `$customisedObject`, `$default_cast`, `$failover`, `$iteratorPos`, `$iteratorTotalItems`

### Properties inherited from Object

`$class`, `$extension_instances`, `$extensions`

[Raise a SilverStripe Framework issue/bug](https://github.com/silverstripe/silverstripe-framework/issues/new)
- [Raise a SilverStripe CMS issue/bug](https://github.com/silverstripe/silverstripe-cms/issues/new)
- Please use the Silverstripe Forums to ask development related questions. -