Class AclShell
Shell for ACL management. This console is known to have issues with zend.ze1_compatibility_mode being enabled. Be sure to turn it off when using this shell.
Copyright: Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org)
License: License (http://www.opensource.org/licenses/mit-license.php)
Location: acl.php
Properties summary
-
$Acl
publicContains instance of AclComponent -
$args
publicarray
Contains arguments parsed from the command line. -
$connection
publicstring
Contains database source to use -
$tasks
publicarray
Contains tasks to load and instantiate
Inherited Properties
Method Summary
-
__dataVars() public
Build data parameters based on node type -
__getParams() public
get params for standard Acl methods -
_getNodeId() public
Get the node for a given identifier. $identifier can either be a string alias or an array of properties to use in AcoNode::node()
-
_outputNode() public
Outputs a single node, Either using the alias or Model.key -
check() public
Check permission for a given ARO to a given ACO. -
checkNodeType() public
Check that first argument specifies a valid Node type (ARO/ACO) -
create() public
Creates an ARO/ACO node -
delete() public
Delete an ARO/ACO node. -
deny() public
Deny access for an ARO to an ACO. -
getPath() public
Get path to specified ARO/ACO node. -
grant() public
Grant permission for a given ARO to a given ACO. -
help() public
Show help screen. -
inherit() public
Set an ARO to inhermit permission to an ACO. -
initdb() public
Initialize ACL database. -
main() public
Override main() for help message hook -
nodeExists() public
Checks that given node exists -
parseIdentifier() public
Parse an identifier into Model.foriegnKey or an alias. Takes an identifier determines its type and returns the result as used by other methods.
-
setParent() public
Set parent for an ARO/ACO node. -
startup() public
Override startup of the Shell -
view() public
Show a specific ARO/ACO node.
Method Detail
__dataVars() public ¶
__dataVars( string $type = null )
Build data parameters based on node type
Parameters
- string $type optional null
- Node type (ARO/ACO)
Returns
Variables
__getParams() public ¶
__getParams( )
get params for standard Acl methods
Returns
aro, aco, action
_getNodeId() public ¶
_getNodeId( string $class , mixed $identifier )
Get the node for a given identifier. $identifier can either be a string alias or an array of properties to use in AcoNode::node()
Parameters
- string $class
- Class type you want (Aro/Aco)
- mixed $identifier
- A mixed identifier for finding the node.
Returns
Integer of NodeId. Will trigger an error if nothing is found.
_outputNode() public ¶
_outputNode( string $class , array $node , integer $indent )
Outputs a single node, Either using the alias or Model.key
Parameters
- string $class
- Class name that is being used.
- array $node
- Array of node information.
- integer $indent
- indent level.
checkNodeType() public ¶
checkNodeType( )
Check that first argument specifies a valid Node type (ARO/ACO)
nodeExists() public ¶
nodeExists( string $type ,…, integer $id ,… )
Checks that given node exists
Parameters
- string $type ,…
- Node type (ARO/ACO)
- integer $id ,…
- Node id
Returns
Success
parseIdentifier() public ¶
parseIdentifier( string $identifier )
Parse an identifier into Model.foriegnKey or an alias. Takes an identifier determines its type and returns the result as used by other methods.
Parameters
- string $identifier
- Identifier to parse
Returns
a string for aliases, and an array for model.foreignKey
Methods inherited from Shell
_checkArgs() public ¶
_checkArgs( integer $expectedNum , string $command = null )
Will check the number args matches otherwise throw an error
Parameters
- integer $expectedNum
- Expected number of paramters
- string $command optional null
- Command
_controllerName() public ¶
_controllerName( string $name )
Creates the proper controller plural name for the specified controller class name
Parameters
- string $name
- Controller class name
Returns
Controller plural name
_controllerPath() public ¶
_controllerPath( string $name )
Creates the proper controller path for the specified controller class name
Parameters
- string $name
- Controller class name
Returns
Path to controller
_loadDbConfig() public ¶
_loadDbConfig( )
Loads database file and constructs DATABASE_CONFIG class makes $this->DbConfig available to subclasses
Returns
_loadModels() public ¶
_loadModels( )
if var $uses = true Loads AppModel file and constructs AppModel class makes $this->AppModel available to subclasses if var $uses is an array of models will load those models
Returns
_modelKey() public ¶
_modelKey( string $name )
Creates the proper underscored model key for associations
Parameters
- string $name
- Model class name
Returns
Singular model key
_modelName() public ¶
_modelName( string $name )
Creates the proper controller camelized name (singularized) for the specified name
Parameters
- string $name
- Name
Returns
Camelized and singularized controller name
_modelNameFromKey() public ¶
_modelNameFromKey( string $key )
Creates the proper model name from a foreign key
Parameters
- string $key
- Foreign key
Returns
Model name
_pluginPath() public ¶
_pluginPath( string $pluginName )
Find the correct path for a plugin. Scans $pluginPaths for the plugin you want.
Parameters
- string $pluginName
- Name of the plugin you want ie. DebugKit
Returns
$path path to the correct plugin.
_pluralHumanName() public ¶
_pluralHumanName( string $name )
Creates the plural human name used in views
Parameters
- string $name
- Controller name
Returns
Plural human name
_pluralName() public ¶
_pluralName( string $name )
Creates the plural name for views
Parameters
- string $name
- Name to use
Returns
Plural name for views
_singularHumanName() public ¶
_singularHumanName( string $name )
Creates the singular human name used in views
Parameters
- string $name
- Controller name
Returns
Singular human name
_singularName() public ¶
_singularName( string $name )
creates the singular name for use in views.
Parameters
- string $name
Returns
$name
createFile() public ¶
createFile( string $path , string $contents )
Creates a file at given path
Parameters
- string $path
- Where to put the file.
- string $contents
- Content to put in the file.
Returns
Success
err() public ¶
err( mixed $message = null , integer $newlines = 1 )
Outputs a single or multiple error messages to stderr. If no parameters are passed outputs just a newline.
Parameters
- mixed $message optional null
- A string or a an array of strings to output
- integer $newlines optional 1
- Number of newlines to append
error() public ¶
error( string $title , string $message = null )
Displays a formatted error message and exits the application with status code 1
Parameters
- string $title
- Title of the error
- string $message optional null
- An optional error message
hr() public ¶
hr( integer $newlines = 0 )
Outputs a series of minus characters to the standard output, acts as a visual separator.
Parameters
- integer $newlines optional 0
- Number of newlines to pre- and append
in() public ¶
in( string $prompt , mixed $options = null , string $default = null )
Prompts the user for input, and returns it.
Parameters
- string $prompt
- Prompt text.
- mixed $options optional null
- Array or string of options.
- string $default optional null
- Default input value.
Returns
the default value, or the user-provided input.
initialize() public ¶
initialize( )
Initializes the Shell acts as constructor for subclasses allows configuration of tasks prior to shell execution
nl() public ¶
nl( integer $multiplier = 1 )
Returns a single or multiple linefeeds sequences.
Parameters
- integer $multiplier optional 1
- Number of times the linefeed sequence should be repeated
Returns
out() public ¶
out( mixed $message = null , integer $newlines = 1 )
Outputs a single or multiple messages to stdout. If no parameters are passed outputs just a newline.
Parameters
- mixed $message optional null
- A string or a an array of strings to output
- integer $newlines optional 1
- Number of newlines to append
Returns
Returns the number of bytes returned from writing to stdout.
shortPath() public ¶
shortPath( string $file )
Makes absolute file path easier to read
Parameters
- string $file
- Absolute file path
Returns
short path
Methods inherited from Object
Object() public ¶
Object( )
A hack to support __construct() on PHP 4 Hint: descendant classes have no PHP4 class_name() constructors, so this constructor gets called first and calls the top-layer __construct() which (if present) should call parent::__construct()
Returns
__openPersistent() public ¶
__openPersistent( string $name , string $type = null )
Open the persistent class file for reading Used by Object::_persist()
Parameters
- string $name
- Name of persisted class
- string $type optional null
- Type of persistance (e.g: registry)
_persist() public ¶
_persist( string $name , string $return , $object , $type = null )
Checks for a persistent class file, if found file is opened and true returned If file is not found a file is created and false returned If used in other locations of the model you should choose a unique name for the persistent file There are many uses for this method, see manual for examples
Parameters
- string $name
- name of the class to persist
- string $return
- $object the object to persist
- $object
- $type optional null
Returns
Success
_savePersistent() public ¶
_savePersistent( string $name , object $object )
You should choose a unique name for the persistent file
There are many uses for this method, see manual for examples
Parameters
- string $name
- name used for object to cache
- object $object
- the object to persist
Returns
true on save, throws error if file can not be created
_set() public ¶
_set( array $properties = array() )
Allows 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.
_stop() public ¶
_stop( $status = 0 )
Stop execution of the current script. Wraps exit() making testing easier.
Parameters
- $status optional 0
- http://php.net/exit for values
cakeError() public ¶
cakeError( string $method , array $messages = array() )
Used to report user friendly errors. If there is a file app/error.php or app/app_error.php this file will be loaded error.php is the AppError class it should extend ErrorHandler class.
Parameters
- string $method
- Method to be called in the error class (AppError or ErrorHandler classes)
- array $messages optional array()
- Message that is to be displayed by the error class
Returns
message
dispatchMethod() public ¶
dispatchMethod( string $method , array $params = array() )
Calls a method on this object with the given parameters. Provides an OO wrapper
for call_user_func_array
Parameters
- string $method
- Name of the method to call
- array $params optional array()
- Parameter list to use when calling $method
Returns
Returns the result of the method call
log() public ¶
log( string $msg , integer $type = LOG_ERROR )
Convience method to write a message to CakeLog. See CakeLog::write() for more information on writing to logs.
Parameters
- string $msg
- Log message
- integer $type optional LOG_ERROR
- Error type constant. Defined in app/config/core.php.
Returns
Success of log write
requestAction() public ¶
requestAction( mixed $url , array $extra = array() )
Calls 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.
Parameters
- mixed $url
- String or array-based url.
- array $extra optional array()
- if array includes the key "return" it sets the AutoRender to true.
Returns
Boolean true or false on success/failure, or contents of rendered action if 'return' is set in $extra.
toString() public ¶
toString( )
Object-to-string conversion. Each class can override this method as necessary.
Returns
The name of this class