public function tearDown() { if (isset($this->roleId) && isset($this->userId)) { $testRole = new Opus_UserRole($this->roleId); $testRole->delete(); $userAccount = new Opus_Account($this->userId); $userAccount->delete(); } parent::tearDown(); }
public function testRoleNameLikeUserName() { $userAccount = new Opus_Account(); $userAccount->setLogin('_test')->setPassword('role_tester'); $userAccount->setRole(new Opus_UserRole($this->roleId)); $userId = $userAccount->store(); Zend_Auth::getInstance()->getStorage()->write('_test'); $aclProvider = new Application_Security_AclProvider(); $acl = $aclProvider->getAcls(); $userAccount->delete(); $this->assertTrue($acl instanceof Zend_Acl, 'Excpected instance of Zend_Acl'); $this->assertTrue($acl->isAllowed(Application_Security_AclProvider::ACTIVE_ROLE, 'documents'), "expected user has access to resource 'documents'"); $this->assertFalse($acl->isAllowed(Application_Security_AclProvider::ACTIVE_ROLE, 'accounts'), "expected user has no access to resource 'account'"); }
/** * Deletes account. */ public function deleteAction() { $accountId = $this->getRequest()->getParam('id'); $message = null; if (!empty($accountId)) { $account = new Opus_Account($accountId); if (!empty($account)) { $currentUser = Zend_Auth::getInstance()->getIdentity(); // Check that user does not delete himself and protect admin // account if ($currentUser === strtolower($account->getLogin())) { $message = 'admin_account_error_delete_self'; } else { if (strtolower($account->getLogin()) === 'admin') { $message = 'admin_account_error_delete_admin'; } else { $account->delete(); } } } else { $message = 'admin_account_error_badid'; } } else { $message = 'admin_account_error_missingid'; } $messages = array(); if ($message === null) { $messages['notice'] = $this->view->translate('admin_account_delete_success'); } else { $messages['failure'] = $this->view->translate($message); } $this->_redirectTo('index', $messages); }