Class SaveOperation
The "save" operation is used to create or update a record.
-
ICanBoogie\Operation
-
ICanBoogie\SaveOperation
Methods summary
protected
array
|
#
get_controls( )
Change controls:
- CONTROL_PERMISSION: Module::PERMISSION_CREATE
- CONTROL_OWNERSHIP: true
- CONTROL_FORM: true
Returns
array
|
protected
|
#
lazy_get_record( )
Overrides the getter to prevent exceptions when the operation key is empty.
Overrides the getter to prevent exceptions when the operation key is empty.
|
protected
|
#
control_record( )
Overrides the method in order for the control to pass if the operation key is empty, which
is the case when creating a new record.
Overrides the method in order for the control to pass if the operation key is empty, which
is the case when creating a new record.
|
protected
array
|
#
lazy_get_properties( )
Filters out the operation's parameters, which are not defined as fields by the
primary model of the module, and take care of filtering or resolving properties values.
Filters out the operation's parameters, which are not defined as fields by the
primary model of the module, and take care of filtering or resolving properties values.
Fields defined as 'boolean'
The value of the property is filtered using the filter_var() function and the
FILTER_VALIDATE_BOOLEAN filter. If the property in the operation params is empty, the
property value is set the false .
Fields defined as 'varchar'
If the property is not empty in the operation params, the property value is trimmed using the
trim() function, ensuring that there is no leading or trailing white spaces.
Returns
array The properties of the operation.
|
protected
boolean
|
#
validate( ICanBoogie\Errors $errors )
The method simply returns true.
The method simply returns true.
Parameters
Returns
boolean
|
protected
array
|
#
process( )
Creates or updates a record in the module's primary model.
Creates or updates a record in the module's primary model.
A record is created if the operation's key is empty, otherwise an existing record is
updated.
The method uses the properties property to get the properties used to create or update
the record.
Returns
array An array composed of the save mode ('update' or 'new') and the record's
key.
Throws
RuntimeException when saving the record fails.
|