/**
  * {@inheritdoc}
  */
 public function getAccessLevelNames()
 {
     if (!$this->hasOwner()) {
         return [AccessLevel::NONE_LEVEL => AccessLevel::NONE_LEVEL_NAME, AccessLevel::SYSTEM_LEVEL => AccessLevel::getAccessLevelName(AccessLevel::SYSTEM_LEVEL)];
     }
     if ($this->isBasicLevelOwned()) {
         $maxLevel = AccessLevel::LOCAL_LEVEL;
         $minLevel = AccessLevel::BASIC_LEVEL;
     } elseif ($this->isLocalLevelOwned()) {
         $maxLevel = AccessLevel::LOCAL_LEVEL;
         $minLevel = AccessLevel::LOCAL_LEVEL;
     } else {
         throw new \BadMethodCallException(sprintf('Owner type %s is not supported', $this->ownerType));
     }
     return AccessLevel::getAccessLevelNames($minLevel, $maxLevel);
 }
Esempio n. 2
0
 /**
  * {@inheritdoc}
  */
 public function getAccessLevelNames()
 {
     if (!$this->hasOwner()) {
         return [AccessLevel::NONE_LEVEL => AccessLevel::NONE_LEVEL_NAME, AccessLevel::SYSTEM_LEVEL => AccessLevel::getAccessLevelName(AccessLevel::SYSTEM_LEVEL)];
     }
     $minLevel = AccessLevel::BASIC_LEVEL;
     $maxLevel = AccessLevel::SYSTEM_LEVEL;
     if ($this->isBasicLevelOwned()) {
         $minLevel = AccessLevel::BASIC_LEVEL;
         $maxLevel = AccessLevel::GLOBAL_LEVEL;
     } elseif ($this->isLocalLevelOwned()) {
         $minLevel = AccessLevel::LOCAL_LEVEL;
         $maxLevel = AccessLevel::GLOBAL_LEVEL;
     } elseif ($this->isGlobalLevelOwned()) {
         $minLevel = AccessLevel::GLOBAL_LEVEL;
         $maxLevel = AccessLevel::GLOBAL_LEVEL;
     }
     return AccessLevel::getAccessLevelNames($minLevel, $maxLevel);
 }
Esempio n. 3
0
 /**
  * {@inheritdoc}
  */
 public function getAccessLevelNames($object)
 {
     if ($this->getObjectClassName($object) === ObjectIdentityFactory::ROOT_IDENTITY_TYPE) {
         /**
          * In community version root entity should not have GLOBAL(Organization) access level
          */
         return AccessLevel::getAccessLevelNames(AccessLevel::BASIC_LEVEL, AccessLevel::SYSTEM_LEVEL, [AccessLevel::GLOBAL_LEVEL]);
     } else {
         return $this->getMetadata($object)->getAccessLevelNames();
     }
 }
Esempio n. 4
0
 /**
  * {@inheritdoc}
  */
 public function getAccessLevelNames($object)
 {
     $minLevel = AccessLevel::BASIC_LEVEL;
     $maxLevel = AccessLevel::SYSTEM_LEVEL;
     if ($this->getObjectClassName($object) === ObjectIdentityFactory::ROOT_IDENTITY_TYPE) {
         /**
          * In community version root entity should not have GLOBAL(Organization) access level
          */
         return AccessLevel::getAccessLevelNames($minLevel, $maxLevel, [AccessLevel::GLOBAL_LEVEL]);
     } else {
         $metadata = $this->getMetadata($object);
         if (!$metadata->hasOwner()) {
             return array(AccessLevel::NONE_LEVEL => AccessLevel::NONE_LEVEL_NAME, AccessLevel::SYSTEM_LEVEL => AccessLevel::getAccessLevelName(AccessLevel::SYSTEM_LEVEL));
         }
         if ($metadata->isUserOwned()) {
             $maxLevel = AccessLevel::GLOBAL_LEVEL;
             $minLevel = AccessLevel::BASIC_LEVEL;
         } elseif ($metadata->isBusinessUnitOwned()) {
             $maxLevel = AccessLevel::GLOBAL_LEVEL;
             $minLevel = AccessLevel::LOCAL_LEVEL;
         } elseif ($metadata->isOrganizationOwned()) {
             $maxLevel = AccessLevel::GLOBAL_LEVEL;
             $minLevel = AccessLevel::GLOBAL_LEVEL;
         }
     }
     return AccessLevel::getAccessLevelNames($minLevel, $maxLevel);
 }
 /**
  * {@inheritdoc}
  */
 public function setDefaultOptions(OptionsResolverInterface $resolver)
 {
     $resolver->setDefaults(array('choices' => AccessLevel::getAccessLevelNames()));
 }
 /**
  * {@inheritdoc}
  */
 public function getAccessLevelNames($object)
 {
     if ($this->getObjectClassName($object) === ObjectIdentityFactory::ROOT_IDENTITY_TYPE) {
         $minLevel = AccessLevel::BASIC_LEVEL;
     } else {
         $metadata = $this->getMetadata($object);
         if (!$metadata->hasOwner()) {
             return array(AccessLevel::NONE_LEVEL => AccessLevel::NONE_LEVEL_NAME, AccessLevel::SYSTEM_LEVEL => AccessLevel::getAccessLevelName(AccessLevel::SYSTEM_LEVEL));
         }
         if ($metadata->isUserOwned()) {
             $minLevel = AccessLevel::BASIC_LEVEL;
         } elseif ($metadata->isBusinessUnitOwned()) {
             $minLevel = AccessLevel::DEEP_LEVEL;
         } elseif ($metadata->isOrganizationOwned()) {
             $minLevel = AccessLevel::GLOBAL_LEVEL;
         }
     }
     return AccessLevel::getAccessLevelNames($minLevel);
 }