Ejemplo n.º 1
0
        public async stt::Task CreatePageResourceNamesAsync()
        {
            moq::Mock <Pages.PagesClient> mockGrpcClient = new moq::Mock <Pages.PagesClient>(moq::MockBehavior.Strict);
            CreatePageRequest             request        = new CreatePageRequest
            {
                ParentAsFlowName = FlowName.FromProjectLocationAgentFlow("[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]"),
                Page             = new Page(),
            };
            Page expectedResponse = new Page
            {
                PageName         = PageName.FromProjectLocationAgentFlowPage("[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]", "[PAGE]"),
                DisplayName      = "display_name137f65c2",
                Form             = new Form(),
                EntryFulfillment = new Fulfillment(),
                TransitionRoutes =
                {
                    new TransitionRoute(),
                },
                EventHandlers = { new EventHandler(), },
                TransitionRouteGroupsAsTransitionRouteGroupNames =
                {
                    TransitionRouteGroupName.FromProjectLocationAgentFlowTransitionRouteGroup("[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]", "[TRANSITION_ROUTE_GROUP]"),
                },
            };

            mockGrpcClient.Setup(x => x.CreatePageAsync(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(new grpccore::AsyncUnaryCall <Page>(stt::Task.FromResult(expectedResponse), null, null, null, null));
            PagesClient client = new PagesClientImpl(mockGrpcClient.Object, null);
            Page        responseCallSettings = await client.CreatePageAsync(request.ParentAsFlowName, request.Page, gaxgrpc::CallSettings.FromCancellationToken(st::CancellationToken.None));

            xunit::Assert.Same(expectedResponse, responseCallSettings);
            Page responseCancellationToken = await client.CreatePageAsync(request.ParentAsFlowName, request.Page, st::CancellationToken.None);

            xunit::Assert.Same(expectedResponse, responseCancellationToken);
            mockGrpcClient.VerifyAll();
        }
Ejemplo n.º 2
0
        public async Task <Company> CreateCompany(CreatePageRequest request, User user)
        {
            if (user == null)
            {
                Notify("User not found");
            }

            var city = await _cityRepository.GetById(request.CityId);

            if (city == null)
            {
                Notify("City not found");
            }


            if (!HasNotification())
            {
                var newCompany = new Company(request.Name, city, request.LinkedIn, user);
                await _companyRepository.Add(newCompany);

                return(await _companyRepository.GetById(newCompany.Id));
            }
            else
            {
                return(null);
            }
        }
Ejemplo n.º 3
0
        public void CreatePageResourceNames()
        {
            moq::Mock <Pages.PagesClient> mockGrpcClient = new moq::Mock <Pages.PagesClient>(moq::MockBehavior.Strict);
            CreatePageRequest             request        = new CreatePageRequest
            {
                ParentAsFlowName = FlowName.FromProjectLocationAgentFlow("[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]"),
                Page             = new Page(),
            };
            Page expectedResponse = new Page
            {
                PageName         = PageName.FromProjectLocationAgentFlowPage("[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]", "[PAGE]"),
                DisplayName      = "display_name137f65c2",
                Form             = new Form(),
                EntryFulfillment = new Fulfillment(),
                TransitionRoutes =
                {
                    new TransitionRoute(),
                },
                EventHandlers = { new EventHandler(), },
                TransitionRouteGroupsAsTransitionRouteGroupNames =
                {
                    TransitionRouteGroupName.FromProjectLocationAgentFlowTransitionRouteGroup("[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]", "[TRANSITION_ROUTE_GROUP]"),
                },
            };

            mockGrpcClient.Setup(x => x.CreatePage(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(expectedResponse);
            PagesClient client   = new PagesClientImpl(mockGrpcClient.Object, null);
            Page        response = client.CreatePage(request.ParentAsFlowName, request.Page);

            xunit::Assert.Same(expectedResponse, response);
            mockGrpcClient.VerifyAll();
        }
Ejemplo n.º 4
0
 public async Task <GetPageResponse> EditPage(int databaseId, int recordId, CreatePageRequest request)
 {
     return(await SendRequest <GetPageResponse>(
                $"cms/records/{databaseId}/{recordId}",
                HttpMethod.Post,
                request));
 }
Ejemplo n.º 5
0
        public ActionResult CreatePage([FromBody] CreatePageRequest createRequest, CancellationToken cancellationToken)
        {
            var result = _futureNhsPageHandler.CreatePage(createRequest.PageName,
                                                          createRequest.PageParentId,
                                                          cancellationToken);

            if (result.Succeeded)
            {
                return(Ok(result));
            }

            return(Problem("Error creating the content."));
        }
Ejemplo n.º 6
0
        public async Task <IActionResult> CreatePage(CreatePageRequest request)
        {
            var user = await _userService.GetById(request.UserId);

            var newCompany = await _companyService.CreateCompany(request, user);

            if (newCompany != null)
            {
                await _pageService.CreatePage(newCompany, user);
            }

            return(Response(code: 201));
        }
Ejemplo n.º 7
0
 /// <summary>Snippet for CreatePage</summary>
 public void CreatePageRequestObject()
 {
     // Snippet: CreatePage(CreatePageRequest, CallSettings)
     // Create client
     PagesClient pagesClient = PagesClient.Create();
     // Initialize request argument(s)
     CreatePageRequest request = new CreatePageRequest
     {
         ParentAsFlowName = FlowName.FromProjectLocationAgentFlow("[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]"),
         Page             = new Page(),
         LanguageCode     = "",
     };
     // Make the request
     Page response = pagesClient.CreatePage(request);
     // End snippet
 }
        // ReSharper disable once UnusedMethodReturnValue.Global
        public static Page CreateDatabasePage(string datebaseId, Dictionary <string, Property> properties,
                                              string token)
        {
            string apiProvider = $"{ApiProviderPrefix}{ApiProviderPagesPart}";

            var parent = new DatabaseParent {
                DatabaseId = datebaseId
            };

            var dto = new CreatePageRequest
            {
                Parent     = parent,
                Properties = properties
            };

            return(RestHelper.CallPostMethod <Page>(apiProvider, "", dto, Settings, token));
        }
Ejemplo n.º 9
0
        private static void AddDefaultPage(PagesApiContext pagesApi, Layout layout, HtmlContentWidget header, HtmlContentWidget footer)
        {
            var pageRequest = new CreatePageRequest()
            {
                LayoutId        = layout.Id,
                PageUrl         = Urls.DefaultPage,
                Title           = "Better CMS",
                Description     = "Better CMS main page.",
                Status          = PageStatus.Published,
                MetaTitle       = "Better CMS main page meta title",
                MetaDescription = "Better CMS main page meta description.",
                MetaKeywords    = "Better CMS"
            };
            var page = pagesApi.CreatePage(pageRequest);

            AddPageContent(pagesApi, page, header, footer, "<p>Hello world!</p>");
        }
Ejemplo n.º 10
0
        private static void Add500ErrorPage(PagesApiContext pagesApi, Layout layout, HtmlContentWidget header, HtmlContentWidget footer)
        {
            var pageRequest = new CreatePageRequest()
            {
                LayoutId        = layout.Id,
                PageUrl         = Urls.Page500,
                Title           = "Internal server error",
                Description     = "Internal server error",
                Status          = PageStatus.Published,
                MetaTitle       = "Better CMS internal server error meta title",
                MetaDescription = "Better CMS internal server error meta description.",
                MetaKeywords    = "Better CMS"
            };
            var page = pagesApi.CreatePage(pageRequest);

            AddPageContent(pagesApi, page, header, footer, "<p>Oops! The Web server encountered an unexpected condition that prevented it from fulfilling your request. Please try again later or contact the administrator.</p>");
        }
Ejemplo n.º 11
0
        private static void Add404ErrorPage(PagesApiContext pagesApi, Layout layout, HtmlContentWidget header, HtmlContentWidget footer)
        {
            var pageRequest = new CreatePageRequest()
            {
                LayoutId        = layout.Id,
                PageUrl         = Urls.Page404,
                Title           = "Page Not Found",
                Description     = "Page Not Found",
                Status          = PageStatus.Published,
                MetaTitle       = "Better CMS page not found meta title",
                MetaDescription = "Better CMS page not found meta description.",
                MetaKeywords    = "Better CMS"
            };
            var page = pagesApi.CreatePage(pageRequest);

            AddPageContent(pagesApi, page, header, footer, "<p>Oops! The page you are looking for can not be found.</p>");
        }
Ejemplo n.º 12
0
        /// <summary>Snippet for CreatePageAsync</summary>
        public async Task CreatePageRequestObjectAsync()
        {
            // Snippet: CreatePageAsync(CreatePageRequest, CallSettings)
            // Additional: CreatePageAsync(CreatePageRequest, CancellationToken)
            // Create client
            PagesClient pagesClient = await PagesClient.CreateAsync();

            // Initialize request argument(s)
            CreatePageRequest request = new CreatePageRequest
            {
                ParentAsFlowName = FlowName.FromProjectLocationAgentFlow("[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]"),
                Page             = new Page(),
                LanguageCode     = "",
            };
            // Make the request
            Page response = await pagesClient.CreatePageAsync(request);

            // End snippet
        }
Ejemplo n.º 13
0
        public async Task <Guid> CreateAsync(CreatePageRequest request)
        {
            var uid  = Guid.NewGuid();
            var page = new PageEntity
            {
                Id              = uid,
                Title           = request.Title.Trim(),
                Slug            = request.Slug.ToLower().Trim(),
                MetaDescription = request.MetaDescription,
                CreateOnUtc     = DateTime.UtcNow,
                HtmlContent     = request.HtmlContent,
                CssContent      = request.CssContent,
                HideSidebar     = request.HideSidebar,
                IsPublished     = request.IsPublished
            };

            await _pageRepo.AddAsync(page);

            await _audit.AddAuditEntry(EventType.Content, AuditEventId.PageCreated, $"Page '{page.Id}' created.");

            return(uid);
        }
Ejemplo n.º 14
0
        public async Task <ActionResult <TPageDto> > CreatePageAsync(CreatePageRequest pageParams)
        {
            var page = await PageService.CreateAsync(pageParams.UserId, pageParams.Year, pageParams.Month);

            return(Ok(page));
        }
Ejemplo n.º 15
0
        /// <summary>
        /// Creates the page.
        /// </summary>
        /// <returns></returns>
        public PageProperties CreatePage(CreatePageRequest pageDto)
        {
            ValidateRequest(pageDto);

            try
            {
                var pageUrl = CreateOrFixPageUrl(pageDto.PageUrl, pageDto.Title);

                var layout = Repository.AsProxy <Layout>(pageDto.LayoutId);

                MediaImage image;
                if (pageDto.ImageId != null && !pageDto.ImageId.Value.HasDefaultValue())
                {
                    image = Repository.AsProxy <MediaImage>(pageDto.ImageId.Value);
                }
                else
                {
                    image = null;
                }

                Category category;
                if (pageDto.CategoryId != null && !pageDto.CategoryId.Value.HasDefaultValue())
                {
                    category = Repository.AsProxy <Category>(pageDto.CategoryId.Value);
                }
                else
                {
                    category = null;
                }

                UnitOfWork.BeginTransaction();

                var page = pageDto.ToPageProperties();
                page.Layout   = layout;
                page.Image    = image;
                page.Category = category;
                page.PageUrl  = pageUrl;
                if (pageDto.Status == PageStatus.Published)
                {
                    page.PublishedOn = DateTime.Now;
                }

                Repository.Save(page);
                UnitOfWork.Commit();

                // Notifying, that page is created
                Events.OnPageCreated(page);

                return(page);
            }
            catch (ValidationException inner)
            {
                var message = string.Format("Failed to create page. Title: {0}, Url: {1}", pageDto.Title, pageDto.PageUrl);
                Logger.Error(message, inner);
                throw new CmsApiException(inner.Message, inner);
            }
            catch (Exception inner)
            {
                var message = string.Format("Failed to create page.");
                Logger.Error(message, inner);
                throw new CmsApiException(message, inner);
            }
        }