Exemple #1
0
        //webpage
        public static WebPageFrontEndModel ToFrontEndModel(this WebPage entity, IWebPageService webPageService, ISectionService sectionService, ClaimsPrincipal user, int languageId, ILocalizedEntityService leService)
        {
            if (entity == null)
            {
                return(null);
            }

            bool userIsAdmin         = user.IsInRole(SystemRoleNames.Administrators);
            bool userHasEditRights   = webPageService.HasEditRights(entity.Id);
            bool userHasCreateRights = webPageService.HasCreateRights(entity.Id);

            var model = new WebPageFrontEndModel()
            {
                Id                  = entity.Id,
                VirtualPath         = entity.VirtualPath,
                UserHasCreateRights = userHasCreateRights,
                AvailableSections   = sectionService.GetAvailableSections()
            };

            foreach (var sectionEntity in entity.Sections)
            {
                var sm = GetSectionModel(sectionEntity, languageId);
                sm.Id = sectionEntity.Id;
                //sm.WebPage = sectionEntity.WebPage;
                sm.UserHasEditRights = userHasEditRights;
                sm.UserIsAdmin       = userIsAdmin;
                model.Sections.Add(sm);
            }
            return(model);
        }