public function checkSitePagePermissions($page_id, $action)
    {
        $group_id = self::getInstance()->getUserData('group_id');

        // Check if current group have access to any page
        if (self::getInstance()->getGroupData('structure_permissions', $group_id)) {
            return true;
        }

        // Check and init cache
        if (!self::$_structure_permissions) {
            // Build access tree for every page
            $structure_pages = new StructurePagePermissionEntityRepository();
            $structure_pages->setWhereGroupId((int)$group_id);
            foreach ($structure_pages->getAsArrayOfObjectData() as $v) {
                self::$_structure_permissions[$v['id']] = $v;
            }
        }

        // Check that user have access to desired action on selected stucture page
        return isset(self::$_structure_permissions[$page_id], self::$_structure_permissions[$page_id][$action]) && self::$_structure_permissions[$page_id][$action];
    }
public function checkSitePagePermissions($page_id, $action)
    {
        $group_id = self::getInstance()->getUserData('group_id');

        // Check if current group have access to any page
        if (self::getInstance()->getGroupData('structure_permissions', $group_id)) {
            return true;
        }

        // Check and init cache
        if (!self::$_structure_permissions) {
            // Build access tree for every page
            $structure_pages = new StructurePagePermissionEntityRepository();
            $structure_pages->setWhereGroupId((int)$group_id);
            foreach ($structure_pages->getAsArrayOfObjectData() as $v) {
                self::$_structure_permissions[$v['id']] = $v;
            }
        }

        // Check that user have access to desired action on selected stucture page
        return isset(self::$_structure_permissions[$page_id], self::$_structure_permissions[$page_id][$action]) && self::$_structure_permissions[$page_id][$action];
    }
public function checkSitePagePermissions ( $ page_id , $ action ) { $ group_id = self :: getInstance ( ) -> getUserData ( 'group_id' ) ; // Check if current group have access to any page if ( self :: getInstance ( ) -> getGroupData ( 'structure_permissions' , $ group_id ) ) { return true ; } // Check and init cache if ( ! self :: $ _structure_permissions ) { // Build access tree for every page $ structure_pages = new StructurePagePermissionEntityRepository ( ) ; $ structure_pages -> setWhereGroupId ( ( int ) $ group_id ) ; foreach ( $ structure_pages -> getAsArrayOfObjectData ( ) as $ v ) { self :: $ _structure_permissions [ $ v [ 'id' ] ] = $ v ; } } // Check that user have access to desired action on selected stucture page return isset ( self :: $ _structure_permissions [ $ page_id ] , self :: $ _structure_permissions [ $ page_id ] [ $ action ] ) && self :: $ _structure_permissions [ $ page_id ] [ $ action ] ; }
Permissions for site structure

@param int    $page_id
@param string $action

@return bool
Permissions for site structure