AclBehavior Class Info:
- Class Declaration:
class AclBehavior extends ModelBehavior
- File name:
- Cake/Model/Behavior/AclBehavior.php
- Description:
ACL behavior
Enables objects to easily tie into an ACL system
- Class Inheritance
Properties:
-
mapMethods array
Allows the mapping of preg-compatible regular expressions to public or private methods in this class, where the array key is a /-delimited regular expression, and the value is a class method. Similar to the functionality of the findBy* / findAllBy* magic methods.
-
settings array
Contains configuration settings for use with individual model objects. This is used because if multiple models use this Behavior, each will use the same object instance. Individual model settings should be stored as an associative array, keyed off of the model name.
-
_typeMaps array
Maps ACL type options to ACL models
Method Summary:
- _addToWhitelist( $model, $field )
- afterDelete( $model )
- afterFind( $model, $results, $primary )
- afterSave( $model, $created )
- beforeDelete( $model, $cascade = true )
- beforeFind( $model, $query )
- beforeSave( $model )
- beforeValidate( $model )
- cleanup( $model )
- __construct( )
- dispatchMethod( $method, $params = array ( ) )
- log( $msg, $type = 2 )
- _mergeVars( $properties, $class, $normalize = true )
- node( $model, $ref = NULL, $type = NULL )
- onError( $model, $error )
- requestAction( $url, $extra = array ( ) )
- _set( $properties = array ( ) )
- setup( $model, $config = array ( ) )
- _stop( $status = 0 )
- toString( )
_addToWhitelist
topIf $model's whitelist property is non-empty, $field will be added to it. Note: this method should only be used in beforeValidate or beforeSave to ensure that it only modifies the whitelist for the current save operation. Also make sure you explicitly set the value of the field which you are allowing.
- Parameters:
-
-
Model $model required
Model using this behavior
-
string $field required
Field to be added to $model's whitelist
-
- Method defined in:
- Cake/Model/ModelBehavior.php on line 212
- Return
void
afterDelete
topDestroys the ARO/ACO node bound to the deleted record
- Parameters:
-
-
Model $model required
-
- Method defined in:
- Cake/Model/Behavior/AclBehavior.php on line 128
- Return
void
afterFind
topAfter find callback. Can be used to modify any results returned by find.
- Parameters:
-
-
Model $model required
Model using this behavior
-
mixed $results required
The results of the find operation
-
boolean $primary required
Whether this model is being queried directly (vs. being queried as an association)
-
- Method defined in:
- Cake/Model/ModelBehavior.php on line 134
- Return
mixed An array value will replace the value of $results - any other value will be ignored.
afterSave
topCreates a new ARO/ACO node bound to this record
- Parameters:
-
-
Model $model required
-
boolean $created required
True if this is a new record
-
- Method defined in:
- Cake/Model/Behavior/AclBehavior.php on line 98
- Return
void
beforeDelete
topBefore delete is called before any delete occurs on the attached model, but after the model's beforeDelete is called. Returning false from a beforeDelete will abort the delete.
- Parameters:
-
-
Model $model required
Model using this behavior
-
boolean $cascade optional true
If true records that depend on this record will also be deleted
-
- Method defined in:
- Cake/Model/ModelBehavior.php on line 179
- Return
mixed False if the operation should abort. Any other result will continue.
beforeFind
topbeforeFind can be used to cancel find operations, or modify the query that will be executed. By returning null/false you can abort a find. By returning an array you can modify/replace the query that is going to be run.
- Parameters:
-
-
Model $model required
Model using this behavior
-
array $query required
Data used to execute this query, i.e. conditions, order, etc.
-
- Method defined in:
- Cake/Model/ModelBehavior.php on line 122
- Return
boolean|array False or null will abort the operation. You can return an array to replace the $query that will be eventually run.
beforeSave
topbeforeSave is called before a model is saved. Returning false from a beforeSave callback will abort the save operation.
- Parameters:
-
-
Model $model required
Model using this behavior
-
- Method defined in:
- Cake/Model/ModelBehavior.php on line 156
- Return
mixed False if the operation should abort. Any other result will continue.
beforeValidate
topbeforeValidate is called before a model is validated, you can use this callback to add behavior validation rules into a models validate array. Returning false will allow you to make the validation fail.
- Parameters:
-
-
Model $model required
Model using this behavior
-
- Method defined in:
- Cake/Model/ModelBehavior.php on line 145
- Return
mixed False or null will abort the operation. Any other result will continue.
cleanup
topClean up any initialization this behavior has done on a model. Called when a behavior is dynamically detached from a model using Model::detach().
- Parameters:
-
-
Model $model required
Model using this behavior
-
- Method defined in:
- Cake/Model/ModelBehavior.php on line 106
- Return
void
- See
dispatchMethod
topCalls a method on this object with the given parameters. Provides an OO wrapper
for call_user_func_array
- Parameters:
-
-
string $method required
Name of the method to call
-
array $params optional array ( )
Parameter list to use when calling $method
-
- Method defined in:
- Cake/Core/Object.php on line 110
- Return
mixed Returns the result of the method call
log
topConvenience method to write a message to CakeLog. See CakeLog::write() for more information on writing to logs.
- Parameters:
-
-
string $msg required
Log message
-
integer $type optional 2
Error type constant. Defined in app/Config/core.php.
-
- Method defined in:
- Cake/Core/Object.php on line 149
- Return
boolean Success of log write
_mergeVars
topMerges this objects $property with the property in $class' definition. This classes value for the property will be merged on top of $class'
This provides some of the DRY magic CakePHP provides. If you want to shut it off, redefine this method as an empty function.
- Parameters:
-
-
array $properties required
The name of the properties to merge.
-
string $class required
The class to merge the property with.
-
boolean $normalize optional true
Set to true to run the properties through Set::normalize() before merging.
-
- Method defined in:
- Cake/Core/Object.php on line 187
- Return
void
node
topRetrieves the Aro/Aco node for this model
- Parameters:
-
-
Model $model required
-
mixed $ref optional NULL
-
string $type optional NULL
Only needed when Acl is set up as 'both', specify 'Aro' or 'Aco' to get the correct node
-
- Method defined in:
- Cake/Model/Behavior/AclBehavior.php on line 77
- Return
array
- Link
- http://book.cakephp.org/2.0/en/core-libraries/behaviors/acl.html#node
onError
topDataSource error callback
- Parameters:
-
-
Model $model required
Model using this behavior
-
string $error required
Error generated in DataSource
-
- Method defined in:
- Cake/Model/ModelBehavior.php on line 199
- Return
void
requestAction
topCalls a controller's method from any location. Can be used to connect controllers together or tie plugins into a main application. requestAction can be used to return rendered views or fetch the return value from controller actions.
Under the hood this method uses Router::reverse() to convert the $url parameter into a string URL. You should use URL formats that are compatible with Router::reverse()
Passing POST and GET data
POST and GET data can be simulated in requestAction. Use $extra['url'] for
GET data. The $extra['data'] parameter allows POST data simulation.
- Parameters:
-
-
mixed $url required
String or array-based url. Unlike other url arrays in CakePHP, this url will not automatically handle passed and named arguments in the $url parameter.
-
array $extra optional array ( )
if array includes the key "return" it sets the AutoRender to true. Can also be used to submit GET/POST data, and named/passed arguments.
-
- Method defined in:
- Cake/Core/Object.php on line 66
- Return
mixed Boolean true or false on success/failure, or contents of rendered action if 'return' is set in $extra.
_set
topAllows setting of multiple properties of the object in a single line of code. Will only set properties that are part of a class declaration.
- Parameters:
-
-
array $properties optional array ( )
An associative array containing properties and corresponding values.
-
- Method defined in:
- Cake/Core/Object.php on line 164
- Return
void
setup
topSets up the configuration for the model, and loads ACL models if they haven't been already
- Parameters:
-
-
Model $model required
-
array $config optional array ( )
-
- Method defined in:
- Cake/Model/Behavior/AclBehavior.php on line 47
- Return
void
_stop
topStop execution of the current script. Wraps exit() making testing easier.
- Parameters:
-
-
integer|string $status optional 0
see http://php.net/exit for values
-
- Method defined in:
- Cake/Core/Object.php on line 137
- Return
void
toString
topObject-to-string conversion. Each class can override this method as necessary.
- Method defined in:
- Cake/Core/Object.php on line 41
- Return
string The name of this class
