Exemplo n.º 1
0
        private void UpdatePageEntity(EditPageRequest editPageRequest)
        {
            DiaryPage page = _pageRepository.GetPageById(editPageRequest.DiaryId, editPageRequest.PageId);

            page.Title = editPageRequest.Title;
            _diaryModifier.UpdatePage(page);
        }
Exemplo n.º 2
0
        public Response GetPage(Request request)
        {
            var response = new Response();

            // Administrator and user "bobo" should have full access

            if (request.User.IsInRole("Administrator") || request.User.Name == "bobo")
            {
                response.Authorized = true;
                response.Page       = _pageRepository.GetPageById(request.PageId);
                return(response);
            }

            // Is user is not admin + don't belong to Editor => not authenticated

            if (!request.User.IsInRole("Editor"))
            {
                response.Authorized = false;
                return(response);
            }

            // Load page, maybe the user have access

            response.Page = _pageRepository.GetPageById(request.PageId);

            // If user belongs to the right type of editor => access

            if (response.Page.PageType == PageType.Politics && request.User.IsInRole("PoliticsEditor"))
            {
                response.Authorized = true;
            }
            else
            {
                response.Authorized = false;
                return(response);
            }

            return(response);
        }
Exemplo n.º 3
0
        public DiaryPageDto GetPageById(long diaryId, long pageId)
        {
            DiaryPage page = _pageRepository.GetPageById(diaryId, pageId);

            if (page == null)
            {
                return(null);
            }

            DiaryPageDto diaryPageDto = Mapper.Map <DiaryPageDto>(page);
            Dictionary <Guid, ReviewQuestionnaireAnswerDto> pageReviews = _reviewGetter.GetPageReviews(pageId);

            diaryPageDto.Reviews = pageReviews;
            return(diaryPageDto);
        }