1: <?php
2: /**
3: * PHP 5
4: *
5: * CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
6: * Copyright 2005-2011, Cake Software Foundation, Inc. (http://cakefoundation.org)
7: *
8: * Licensed under The MIT License
9: * Redistributions of files must retain the above copyright notice.
10: *
11: * @copyright Copyright 2005-2011, Cake Software Foundation, Inc. (http://cakefoundation.org)
12: * @link http://cakephp.org CakePHP(tm) Project
13: * @license MIT License (http://www.opensource.org/licenses/mit-license.php)
14: */
15:
16: App::uses('BaseAuthorize', 'Controller/Component/Auth');
17:
18: /**
19: * An authorization adapter for AuthComponent. Provides the ability to authorize using the AclComponent,
20: * If AclComponent is not already loaded it will be loaded using the Controller's ComponentCollection.
21: *
22: * @package Cake.Controller.Component.Auth
23: * @since 2.0
24: * @see AuthComponent::$authenticate
25: * @see AclComponent::check()
26: */
27: class ActionsAuthorize extends BaseAuthorize {
28:
29: /**
30: * Authorize a user using the AclComponent.
31: *
32: * @param array $user The user to authorize
33: * @param CakeRequest $request The request needing authorization.
34: * @return boolean
35: */
36: public function authorize($user, CakeRequest $request) {
37: $Acl = $this->_Collection->load('Acl');
38: $user = array($this->settings['userModel'] => $user);
39: return $Acl->check($user, $this->action($request));
40: }
41: }
42: