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)));
 }
Exemple #2
0
 /**
  * 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;
 }
Exemple #4
0
 /**
  * @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]);
     }
 }
Exemple #5
0
 /**
  * @param bool $ignoreShare
  */
 protected function loadPrivilegeConfigPermissions($ignoreShare = false)
 {
     foreach ($this->privilegeConfig as $configName => $config) {
         $this->privilegeConfig[$configName]['permissions'] = $this->privilegeRepository->getPermissionNames($config['types']);
     }
 }