Пример #1
0
 /**
  *
  * @param $groupName
  * @param $actionName
  * @param bool $readFromLocalCache
  * @return BOL_AuthorizationAction
  */
 public function findAction($groupName, $actionName, $readFromLocalCache = false)
 {
     $groupDto = null;
     if ($readFromLocalCache) {
         /* @var $groupItem BOL_AuthorizationGroup */
         foreach ($this->groupDaoCache as $groupItem) {
             if ($groupItem->getName() == $groupName) {
                 $groupDto = $groupItem;
                 break;
             }
         }
     } else {
         $groupDto = $this->groupDao->findByName($groupName);
     }
     if ($groupDto === null) {
         return null;
     }
     if ($readFromLocalCache) {
         /* @var $actionItem BOL_AuthorizationAction */
         foreach ($this->actionDaoCache as $actionItem) {
             if ($actionItem->getGroupId() == $groupDto->getId() && $actionItem->getName() == $actionName) {
                 return $actionItem;
             }
         }
     } else {
         return $this->actionDao->findAction($actionName, $groupDto->getId());
     }
     return null;
 }