protected virtual IEnumerable <IPublishedContent> ValidateGroupSubNavigationItems(IEnumerable <IPublishedContent> items)
        {
            var role = _intranetUserService.GetCurrentUser().Role;

            foreach (var item in items)
            {
                var validatePermission = _groupPermissionsService.ValidatePermission(item, role);
                if (validatePermission)
                {
                    yield return(item);
                }
            }
        }
Пример #2
0
        private IEnumerable <GroupLeftNavigationItemViewModel> GetMenuItems(IPublishedContent rootGroupPage)
        {
            var isPageActive = GetIsPageActiveFunc(_umbracoHelper.AssignedContentItem);
            var role         = _intranetUserService.GetCurrentUser().Role;

            var groupPageChildren = rootGroupPage.Children.Where(el => el.IsShowPageInSubNavigation()).ToList();

            foreach (var subPage in groupPageChildren)
            {
                if (subPage.IsShowPageInSubNavigation())
                {
                    if (_groupPermissionsService.ValidatePermission(subPage, role))
                    {
                        yield return(MapToLeftNavigationItem(subPage, isPageActive));
                    }
                }
                else
                {
                    yield return(MapToLeftNavigationItem(subPage, isPageActive));
                }
            }
        }