//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); }