Webylon 3.1 API Docs
  • Package
  • Class
  • Tree
  • Deprecated
  • Download
Version: current
  • 3.2
  • 3.1

Packages

  • auth
  • Booking
  • cart
    • shipping
    • steppedcheckout
  • Catalog
  • cms
    • assets
    • batchaction
    • batchactions
    • bulkloading
    • comments
    • content
    • core
    • export
    • newsletter
    • publishers
    • reports
    • security
    • tasks
  • Dashboard
  • DataObjectManager
  • event
  • faq
  • forms
    • actions
    • core
    • fields-basic
    • fields-dataless
    • fields-datetime
    • fields-files
    • fields-formatted
    • fields-formattedinput
    • fields-relational
    • fields-structural
    • transformations
    • validators
  • googlesitemaps
  • guestbook
  • installer
  • newsletter
  • None
  • photo
    • gallery
  • PHP
  • polls
  • recaptcha
  • sapphire
    • api
    • bulkloading
    • control
    • core
    • cron
    • dev
    • email
    • fields-formattedinput
    • filesystem
    • formatters
    • forms
    • i18n
    • integration
    • misc
    • model
    • parsers
    • search
    • security
    • tasks
    • testing
    • tools
    • validation
    • view
    • widgets
  • seo
    • open
      • graph
  • sfDateTimePlugin
  • spamprotection
  • stealth
    • captha
  • subsites
  • userform
    • pagetypes
  • userforms
  • webylon
  • widgets

Classes

  • AssetManager
  • CartTableListField_Item
  • ComplexTableField
  • ComplexTableField_Item
  • ComplexTableField_ItemRequest
  • ComplexTableField_Popup
  • CountryDropdownField
  • DataObjectManager
  • DataObjectManager_Item
  • DataObjectManager_ItemRequest
  • DocumentPageFiles_Manager
  • FileDataObjectManager
  • FileDataObjectManager_Item
  • FileDataObjectManager_ItemRequest
  • HasManyComplexTableField
  • HasManyComplexTableField_Item
  • HasManyDataObjectManager
  • HasManyDataObjectManager_Item
  • HasManyFileDataObjectManager
  • HasManyFileDataObjectManager_Item
  • HasOneComplexTableField
  • HasOneComplexTableField_Item
  • HasOneDataObjectManager
  • HasOneDataObjectManager_Item
  • HasOneFileDataObjectManager
  • HasOneFileDataObjectManager_Item
  • ImageAssetManager
  • ImageDataObjectManager
  • ImageDataObjectManager_Item
  • ImageDataObjectManager_ItemRequest
  • LanguageDropdownField
  • ManyManyComplexTableField
  • ManyManyComplexTableField_Item
  • ManyManyDataObjectManager
  • ManyManyDataObjectManager_Item
  • ManyManyFileDataObjectManager
  • ManyManyFileDataObjectManager_Item
  • Mediaweb3DPageFiles_Manager
  • MediawebPageFiles_Manager
  • MediawebPagePhoto_Manager
  • MediawebPageTexture_Manager
  • PhotoAlbumManager
  • ScaffoldingComplexTableField_Popup
  • SubpageListField_Item
  • SubPageListField_ItemRequest
  • SubsiteAgnosticTableListField
  • TableField
  • TableField_Item
  • TableListField
  • TableListField_Item
  • TableListField_ItemRequest
  • TreeDropdownField
  • TreeDropdownField_Readonly
  • TreeMultiselectField
  • TreeMultiselectField_Readonly
  • TreeSelectorField

Class DataObjectManager

Provides a tabuar list in your form with view, edit and add links to edit records with a "has-one"-relationship. Detail-views are shown in a greybox-iframe. Features pagination in the overview as well as the detail-views.

CAUTION: You need to make sure that the original form-call to the main controller (e.g. EditForm()) returns a form which includes this field even if no data is loaded, to provide a "starting point" for action_callfieldmethod and ReferencedField.

All URL data sent to and from ComplexTableField is encapsulated in $_REQUEST['ctf'] to avoid side-effects with the main controller.

Example-URL for a "DetailForm"-call explained: "/admin/family/?executeForm=EditForm&action_callfieldmethod&fieldName=Individual&childID=7&methodName=edit" - executeForm Name of the form on the main rendering page (e.g. "FamilyAdmin") - action_callfieldmethod Trigger to call a method of a single field in "EditForm" instead of rendering the whole thing - fieldName Name of the targeted formField - methodName Method on the formfield (e.g. "ComplexTableField") - childID Identifier of the database-record (the targeted table is determined by the $sourceClass parameter)

Object
Extended by ViewableData implements IteratorAggregate
Extended by RequestHandler
Extended by FormField
Extended by TableListField
Extended by ComplexTableField
Extended by DataObjectManager

Direct known subclasses

FileDataObjectManager, HasManyDataObjectManager

Indirect known subclasses

AssetManager, DocumentPageFiles_Manager, MediawebPageFiles_Manager, MediawebPagePhoto_Manager, MediawebPageTexture_Manager, PhotoAlbumManager, VideoManager, HasManyFileDataObjectManager, HasOneDataObjectManager, HasOneFileDataObjectManager, ImageAssetManager, ImageDataObjectManager, ManyManyDataObjectManager, ManyManyFileDataObjectManager, Mediaweb3DPageFiles_Manager

Package: forms\fields-relational
Located at dataobject_manager/code/DataObjectManager.php

Methods summary

public static
# allow_assets_override( mixed $bool )
public static
# allow_css_override( mixed $bool )
public static
# set_popup_width( mixed $width )
public static
# set_confirm_delete( mixed $bool )
public
# __construct( ContentController $controller, string $name = null, string $sourceClass = null, array $fieldList = null, FieldSet $detailFormFields = null, string $sourceFilter = "", string $sourceSort = "Created DESC", string $sourceJoin = "" )

See class comments

See class comments

Parameters

$controller
ContentController $controller
$name
string $name
$sourceClass
string $sourceClass
$fieldList
array $fieldList
$detailFormFields
FieldSet $detailFormFields
$sourceFilter
string $sourceFilter
$sourceSort
string $sourceSort
$sourceJoin
string $sourceJoin

Overrides

ComplexTableField::__construct
public
# setSourceFilter( mixed $filter )
public
# setUseViewAll( mixed $bool )
public
# setPerPageMap( mixed $values )
public
# setPluralTitle( mixed $title )
public
# setWideMode( mixed $bool )
public
# PluralTitle( )
protected
# loadSort( )
protected
# loadSourceFilter( )
public
# handleItem( mixed $request )

Overrides

ComplexTableField::handleItem
public
# getQueryString( mixed $params = array() )
public
# getSetting( mixed $setting )
public String
# FieldHolder( )

Returns

String
String

Overrides

ComplexTableField::FieldHolder
public
# Headings( )

Overrides

TableListField::Headings
public
# saveComplexTableField( mixed $data, mixed $form, mixed $params )

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 adding new item records. ComplexTableField_ItemRequest::saveComplexTableField()

See

Form::ReferencedField

Overrides

ComplexTableField::saveComplexTableField
public Int
# sourceID( )

Returns

Int
Int

Overrides

ComplexTableField::sourceID
protected
# getRawDetailFields( mixed $childData )
public
# getCustomFieldsFor( mixed $childData )

Return the object-specific fields for the given record, to be shown in the detail pop-up

Return the object-specific fields for the given record, to be shown in the detail pop-up

This won't include all the CTF-specific 'plumbing; this method is called by self::getFieldsFor() and the result is then processed further to get the actual FieldSet for the form.

The default implementation of this processes the value of $this->detailFormFields; consequently, if you want to set the value of the fields to something that $this->detailFormFields doesn't allow, you can do so by overloading this method.

Overrides

ComplexTableField::getCustomFieldsFor
public
# AddForm( mixed $childID = null )

Overrides

ComplexTableField::AddForm
public
# Link( mixed $action = null )

Return a Link to this field

Return a Link to this field

Overrides

FormField::Link
public
# BaseLink( )

Overrides

TableListField::BaseLink
public
# CurrentLink( )

Overrides

TableListField::CurrentLink
public
# RelativeLink( mixed $params = array() )
public
# FirstLink( )

Overrides

TableListField::FirstLink
public
# PrevLink( )

Overrides

TableListField::PrevLink
public
# NextLink( )

Overrides

TableListField::NextLink
public
# LastLink( )

Overrides

TableListField::LastLink
public
# ShowAllLink( )
public
# PaginatedLink( )
public
# AddLink( )

Overrides

ComplexTableField::AddLink
public
# ShowAll( )
public
# Paginated( )
public
# Sortable( )
public
# setFilter( mixed $field, mixed $label, mixed $map, mixed $default = null )
public
# HasFilter( )
public
# FilterDropdown( )
public
# PerPageDropdown( )
public
# SearchValue( )
public
# AddTitle( )
public
# SingleTitle( )
public
# setAddTitle( mixed $title )

Overrides

ComplexTableField::setAddTitle
public
# setSingleTitle( mixed $title )
public
# getColumnWidths( )
public
# setColumnWidths( mixed $widths )
public
# setFilterEmptyString( mixed $str )
public
# addPermission( mixed $perm )
public
# removePermission( mixed $perm )
public
# NestedType( )
public
# handleDuplicate( mixed $request )
public
# setPopupWidth( mixed $val )
public
# setConfirmDelete( mixed $bool )
public
# PopupWidth( )

Overrides

ComplexTableField::PopupWidth
public
# ConfirmDelete( )

Methods inherited from ComplexTableField

IsAddMode(), ItemCount(), Items(), PopupHeight(), Title(), add(), createFieldSet(), getFieldsFor(), getParentClass(), getParentIdName(), getParentIdNameRelation(), getParentRecord(), getValidatorFor(), getViewer(), isComposite(), setController(), setDetailFormValidator(), setParentClass(), setParentIdName(), setPopupCaption(), setPopupSize(), setRelationAutoSetting(), setTemplatePopup(), sourceClass(), sourceFilter()

Methods inherited from TableListField

Actions(), Can(), ExportLink(), FieldList(), FirstItem(), GroupedItems(), HasGroupedItems(), HasSummary(), LastItem(), ListStart(), Name(), NamePlural(), NameSingular(), PageSize(), PrintLink(), ShowPagination(), SummaryFields(), SummaryTitle(), TotalCount(), Utility(), addSummary(), ajax_refresh(), colFunction_avg(), colFunction_sum(), delete(), disableSorting(), export(), filterString(), generateExportFileData(), getCastedValue(), getCsvQuery(), getCsvSeparator(), getExtraLinkParams(), getPermissions(), getQuery(), index(), isFieldSortable(), performReadonlyTransformation(), permissions_for_object(), printall(), removeCsvHeader(), removeSummary(), setCSVFieldFormatting(), setClick_AjaxLoad(), setClick_PopupLoad(), setCsvSeparator(), setCustomCsvQuery(), setCustomQuery(), setCustomSourceItems(), setExtraLinkParams(), setFieldCasting(), setFieldFormatting(), setFieldList(), setFieldListCsv(), setHighlightConditions(), setPageSize(), setPermissions(), setShowPagination(), setTemplate(), sourceItems()

Methods inherited from FormField

Field(), LeftTitle(), Message(), MessageType(), Required(), RightTitle(), SmallFieldHolder(), Type(), Value(), addExtraAttribute(), addExtraClass(), allowHTML5(), allow_html5(), attrName(), attrTitle(), attrValue(), createTag(), dataValue(), debug(), describe(), extraClass(), forTemplate(), getCustomValidationMessage(), getForm(), getTabIndex(), getTabIndexHTML(), hasClass(), hasData(), id(), isDisabled(), isReadonly(), jsValidation(), name_to_label(), performDisabledTransformation(), removeExtraAttribute(), removeExtraClass(), rootFieldSet(), saveInto(), securityTokenEnabled(), setAutocomplete(), setContainerFieldSet(), setCustomValidationMessage(), setDisabled(), setError(), setForm(), setHTML5Attribute(), setLeftTitle(), setName(), setReadonly(), setRightTitle(), setTabIndex(), setTitle(), setValue(), transform(), useHTML5(), use_html5(), validate()

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 static boolean $allow_assets_override
#
protected static boolean $allow_css_override
#
protected static integer $popup_width
#
protected static boolean $confirm_delete
#
protected string $template
#

Template for main rendering

Template for main rendering

protected string $start
#
protected string $per_page
#
protected string $showAll
#
protected string $search
#
protected string $filter
#
protected string $sort_dir
#
protected string $sort
#
protected array $filter_map
#
protected mixed $filtered_field
#
protected string $filter_label
#
protected string $filter_empty_string
#
protected array $column_widths
#
protected array $per_page_map
#
protected boolean $use_view_all
#
protected mixed $popupWidth
#

Default size for the popup box

Default size for the popup box

protected mixed $confirmDelete
#
public string $itemClass
#

Classname for each row/item

Classname for each row/item

public mixed $addTitle
#

Determines the fields of the detail pop-up form. It can take many forms:
- A FieldSet object: Use that field set directly.
- A method name, eg, 'getCMSFields': Call that method on the child object to get the fields.

Determines the fields of the detail pop-up form. It can take many forms: - A FieldSet object: Use that field set directly. - A method name, eg, 'getCMSFields': Call that method on the child object to get the fields.

public mixed $singleTitle
#
public boolean $hasNested
#
public boolean $isNested
#
public array $actions
#

array Action that can be performed on a single row-entry. Has to correspond to a method in a TableListField-class (or subclass). Actions can be disabled through $permissions. Format (key is used for the methodname and CSS-class): array(
'delete' => array(
'label' => 'Delete',
'icon' => 'cms/images/delete.gif',
'icon_disabled' => 'cms/images/delete_disabled.gif',
'class' => 'deletelink',
) )

array Action that can be performed on a single row-entry. Has to correspond to a method in a TableListField-class (or subclass). Actions can be disabled through $permissions. Format (key is used for the methodname and CSS-class): array( 'delete' => array( 'label' => 'Delete', 'icon' => 'cms/images/delete.gif', 'icon_disabled' => 'cms/images/delete_disabled.gif', 'class' => 'deletelink', ) )

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.

public string $popupClass
#

Classname for the popup form

Classname for the popup form

public string $templatePopup
#

Template for popup (form rendering)

Template for popup (form rendering)

Properties inherited from ComplexTableField

$controller, $defaultAction, $detailFormFields, $detailFormValidator, $parentClass, $parentIdName, $permissions, $popupCaption, $popupHeight, $relationAutoSetting, $requirementsForPopupCallback, $showPagination, $sourceItems, $sourceJoin, $viewAction

Properties inherited from TableListField

$IsReadOnly, $Markable, $MarkableTitle, $__cachedQuery, $cachedSourceItems, $clickAction, $csvFieldEscape, $csvFieldFormatting, $csvHasHeader, $csvSeparator, $customCsvQuery, $customQuery, $customSourceItems, $disableSorting, $exportButtonLabel, $extraLinkParams, $fieldCasting, $fieldFormatting, $fieldList, $fieldListCsv, $groupByField, $highlightConditions, $methodName, $pageSize, $paginationBaseLink, $readOnly, $sourceClass, $sourceFilter, $sourceSort, $summaryFieldList, $summaryTitle, $totalCount

Properties inherited from FormField

$autocomplete, $containerFieldSet, $customValidationMessage, $description, $disabled, $dontEscape, $extraAttributes, $extraClass, $extraClasses, $fieldHTML5, $form, $html5Attributes, $leftTitle, $message, $messageType, $name, $possible_autocomplete_values, $readonly, $rightTitle, $tabIndex, $title, $use_html5, $value

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. -
Webylon 3.1 API Docs API documentation generated by ApiGen 2.8.0