public function testGetPermissionNamesForSeveralAclExtensions() { $extensionKey1 = 'test1'; $permissions1 = array('VIEW', 'EDIT'); $extensionKey2 = 'test2'; $permissions2 = array('VIEW', 'CREATE'); $this->manager->expects($this->exactly(2))->method('getRootOid')->will($this->returnValueMap(array(array($extensionKey1, new ObjectIdentity($extensionKey1, ObjectIdentityFactory::ROOT_IDENTITY_TYPE)), array($extensionKey2, new ObjectIdentity($extensionKey2, ObjectIdentityFactory::ROOT_IDENTITY_TYPE))))); $this->extension->expects($this->at(0))->method('getPermissions')->will($this->returnValue($permissions1)); $this->extension->expects($this->at(1))->method('getPermissions')->will($this->returnValue($permissions2)); $this->assertEquals(array('VIEW', 'EDIT', 'CREATE'), $this->repository->getPermissionNames(array($extensionKey1, $extensionKey2))); }
/** * Create form for role manipulation * * @param Role $role * @return FormInterface */ public function createForm(Role $role) { foreach ($this->privilegeConfig as $configName => $config) { $this->privilegeConfig[$configName]['permissions'] = $this->privilegeRepository->getPermissionNames($config['types']); } $this->form = $this->formFactory->create(new ACLRoleType($this->privilegeConfig), $role); return $this->form; }
/** * Create form for role manipulation * * @param AbstractRole $role * @return FormInterface */ public function createForm(AbstractRole $role) { foreach ($this->privilegeConfig as $configName => $config) { $this->privilegeConfig[$configName]['permissions'] = $this->privilegeRepository->getPermissionNames($config['types']); } $this->form = $this->createRoleFormInstance($role, $this->privilegeConfig); return $this->form; }
/** * @param bool $ignoreShare */ protected function loadPrivilegeConfigPermissions($ignoreShare = false) { foreach ($this->privilegeConfig as $configName => $config) { $this->privilegeConfig[$configName]['permissions'] = $this->privilegeRepository->getPermissionNames($config['types']); } //TODO: Removing 'SHARE' from config. Remove this code after sharing is implemented. if ($ignoreShare && isset($this->privilegeConfig['entity']['permissions']) && ($key = array_search('SHARE', $this->privilegeConfig['entity']['permissions'], true))) { unset($this->privilegeConfig['entity']['permissions'][$key]); } }
/** * @param bool $ignoreShare */ protected function loadPrivilegeConfigPermissions($ignoreShare = false) { foreach ($this->privilegeConfig as $configName => $config) { $this->privilegeConfig[$configName]['permissions'] = $this->privilegeRepository->getPermissionNames($config['types']); } }