0cfb418b08ad522ab96693e84b73abcc63f44f83

Author: Phally

Date: 2009-08-18 11:01:38 +0200

Fixed bug in lazyLogin and cookieLogin.

diff --git a/plugins/users/controllers/components/access.php b/plugins/users/controllers/components/access.php index 2cfbd94..925f2d7 100755 --- a/plugins/users/controllers/components/access.php +++ b/plugins/users/controllers/components/access.php @@ -90,6 +90,14 @@ class AccessComponent extends Object { */ public $params = array(); +/** + * Model to use for Auth. Should only be touched in test cases. + * + * @var string + * @access public + */ + public $userModel = 'Users.User'; + /** * List of permissions from the config file. * @@ -196,7 +204,7 @@ class AccessComponent extends Object { */ public function lazyLogin($username) { if ((Configure::read('debug') > 0) && (!$this->__auth->user())) { - return $this->__auth->login(ClassRegistry::init($this->__auth->userModel)->find('first', array( + return $this->__auth->login($this->__auth->getModel()->find('first', array( 'conditions' => array( $this->__auth->fields['username'] => $username ), @@ -269,6 +277,7 @@ class AccessComponent extends Object { */ private function __configureAuth() { $auth = $this->__auth; + $auth->userModel = $this->userModel; $auth->authorize = 'object'; $auth->object = $auth->authenticate = $this; diff --git a/plugins/users/tests/cases/components/access.test.php b/plugins/users/tests/cases/components/access.test.php index 5b8c202..47281e1 100644 --- a/plugins/users/tests/cases/components/access.test.php +++ b/plugins/users/tests/cases/components/access.test.php @@ -5,6 +5,7 @@ class FakeTestController extends UsersAppController { public $components = array('Auth', 'Users.Access'); public function beforeFilter() { + $this->Access->userModel = 'User'; $this->Access->file = 'test_suite_permissions'; } } diff --git a/plugins/users/tests/cases/controllers/conversations_controller.test.php b/plugins/users/tests/cases/controllers/conversations_controller.test.php index 206c670..0225e30 100644 --- a/plugins/users/tests/cases/controllers/conversations_controller.test.php +++ b/plugins/users/tests/cases/controllers/conversations_controller.test.php @@ -40,6 +40,7 @@ class ConversationsControllerTestCase extends CakeTestCase { public function startTest() { $this->Conversations = new TestConversationsController(); $this->Conversations->constructClasses(); + $this->Conversations->Access->userModel = 'User'; $this->Conversations->Access->file = 'test_suite_permissions'; } diff --git a/plugins/users/tests/cases/controllers/messages_controller.test.php b/plugins/users/tests/cases/controllers/messages_controller.test.php index bc928fc..c374ae4 100644 --- a/plugins/users/tests/cases/controllers/messages_controller.test.php +++ b/plugins/users/tests/cases/controllers/messages_controller.test.php @@ -40,6 +40,7 @@ class MessagesControllerTestCase extends CakeTestCase { public function startTest() { $this->Messages = new TestMessagesController(); $this->Messages->constructClasses(); + $this->Messages->Access->userModel = 'User'; $this->Messages->Access->file = 'test_suite_permissions'; } diff --git a/plugins/users/tests/cases/controllers/users_controller.test.php b/plugins/users/tests/cases/controllers/users_controller.test.php index da964b0..977674e 100644 --- a/plugins/users/tests/cases/controllers/users_controller.test.php +++ b/plugins/users/tests/cases/controllers/users_controller.test.php @@ -40,6 +40,7 @@ class UsersControllerTestCase extends CakeTestCase { public function startTest() { $this->Users = new TestUsersController(); $this->Users->constructClasses(); + $this->Users->Access->userModel = 'User'; $this->Users->Access->file = 'test_suite_permissions'; }