DataExtension
class DataExtension extends Extension
An extension that adds additional functionality to a {@link DataObject}.
Properties
$class | from Extension |
Methods
Called when this extension is added to a particular class
Helper method to strip eval'ed arguments from a string thats passed to {@link DataObject::$extensions} or {@link Object::add_extension()}.
No description
No description
Update the database schema as required by this extension.
Augment a write-record request.
No description
No description
No description
No description
No description
No description
No description
No description
No description
No description
Define extra database fields
This function is used to provide modifications to the form in the CMS by the extension. By default, no changes are made. {@link DataObject->getCMSFields()}.
This function is used to provide modifications to the form used for front end forms. {@link DataObject->getFrontEndFields()}
This is used to provide modifications to the form actions used in the CMS. {@link DataObject->getCMSActions()}.
this function is used to provide modifications to the summary fields in CMS by the extension By default, the summaryField() of its owner will merge more fields defined in the extension's $extra_fields['summary_fields']
this function is used to provide modifications to the fields labels in CMS by the extension By default, the fieldLabels() of its owner will merge more fields defined in the extension's $extra_fields['field_labels']
Details
in Extension at line 42
__construct()
in Extension at line 54
static
add_to_class(string $class, string $extensionClass, mixed $args = null)
Called when this extension is added to a particular class
in Extension at line 66
setOwner(SS_Object $owner, string $ownerBaseClass = null)
Set the owner of this extension.
in Extension at line 74
clearOwner()
in Extension at line 97
static string
get_classname_without_arguments(string $extensionStr)
Helper method to strip eval'ed arguments from a string thats passed to {@link DataObject::$extensions} or {@link Object::add_extension()}.
at line 10
static
get_extra_config($class, $extension, $args)
at line 32
static
unload_extra_statics($class, $extension)
at line 42
validate(ValidationResult $validationResult)
Hook for extension-specific validation.
at line 50
augmentSQL(SQLQuery $query)
Edit the given query object to support queries for this extension
at line 59
augmentDatabase()
Update the database schema as required by this extension.
When duplicating a table's structure, remember to duplicate the create options as well. See {@link Versioned->augmentDatabase} for an example.
at line 67
augmentWrite(array $manipulation)
Augment a write-record request.
at line 70
onBeforeWrite()
at line 73
onAfterWrite()
at line 76
onBeforeDelete()
at line 79
onAfterDelete()
at line 82
requireDefaultRecords()
at line 85
populateDefaults()
at line 88
can($member)
at line 91
canEdit($member)
at line 94
canDelete($member)
at line 97
canCreate($member)
at line 112
array
extraStatics($class = null, $extension = null)
Define extra database fields
Return a map where the keys are db, has_one, etc, and the values are additional fields/relations to be defined.
at line 129
updateCMSFields(FieldList $fields)
This function is used to provide modifications to the form in the CMS by the extension. By default, no changes are made. {@link DataObject->getCMSFields()}.
Please consider using {@link updateFormFields()} to globally add formfields to the record. The method {@link updateCMSFields()} should just be used to add or modify tabs, or fields which are specific to the CMS-context.
Caution: Use {@link FieldList->addFieldToTab()} to add fields.
at line 140
updateFrontEndFields(FieldList $fields)
This function is used to provide modifications to the form used for front end forms. {@link DataObject->getFrontEndFields()}
Caution: Use {@link FieldList->push()} to add fields.
at line 149
updateCMSActions(FieldList $actions)
This is used to provide modifications to the form actions used in the CMS. {@link DataObject->getCMSActions()}.
at line 160
updateSummaryFields(array $fields)
this function is used to provide modifications to the summary fields in CMS by the extension By default, the summaryField() of its owner will merge more fields defined in the extension's $extra_fields['summary_fields']
at line 180
updateFieldLabels(array $labels)
this function is used to provide modifications to the fields labels in CMS by the extension By default, the fieldLabels() of its owner will merge more fields defined in the extension's $extra_fields['field_labels']