Example #1
0
        public async stt::Task UpdatePageAsync()
        {
            moq::Mock <Pages.PagesClient> mockGrpcClient = new moq::Mock <Pages.PagesClient>(moq::MockBehavior.Strict);
            UpdatePageRequest             request        = new UpdatePageRequest
            {
                Page       = new Page(),
                UpdateMask = new wkt::FieldMask(),
            };
            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.UpdatePageAsync(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.UpdatePageAsync(request.Page, request.UpdateMask, gaxgrpc::CallSettings.FromCancellationToken(st::CancellationToken.None));

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

            xunit::Assert.Same(expectedResponse, responseCancellationToken);
            mockGrpcClient.VerifyAll();
        }
        public async Task <bool> EditPageAsync(string blogid, string pageid, string username, string password, Page page, bool publish)
        {
            EnsureUser(username, password);

            try
            {
                if (!Guid.TryParse(pageid, out var id))
                {
                    throw new ArgumentException("Invalid ID", nameof(pageid));
                }

                var pageRequest = new UpdatePageRequest
                {
                    Title           = page.title,
                    HideSidebar     = true,
                    MetaDescription = string.Empty,
                    HtmlContent     = page.description,
                    CssContent      = string.Empty,
                    IsPublished     = publish,
                    Slug            = ToSlug(page.title)
                };

                await _pageService.UpdateAsync(id, pageRequest);

                return(true);
            }
            catch (Exception e)
            {
                _logger.LogError(e, e.Message);
                throw new MetaWeblogException(e.Message);
            }
        }
Example #3
0
        public void UpdatePage()
        {
            moq::Mock <Pages.PagesClient> mockGrpcClient = new moq::Mock <Pages.PagesClient>(moq::MockBehavior.Strict);
            UpdatePageRequest             request        = new UpdatePageRequest
            {
                Page       = new Page(),
                UpdateMask = new wkt::FieldMask(),
            };
            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.UpdatePage(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(expectedResponse);
            PagesClient client   = new PagesClientImpl(mockGrpcClient.Object, null);
            Page        response = client.UpdatePage(request.Page, request.UpdateMask);

            xunit::Assert.Same(expectedResponse, response);
            mockGrpcClient.VerifyAll();
        }
Example #4
0
        public Task <bool> EditPageAsync(string blogid, string pageid, string username, string password, WilderMinds.MetaWeblog.Page page, bool publish)
        {
            EnsureUser(username, password);

            return(TryExecuteAsync(async() =>
            {
                if (!Guid.TryParse(pageid, out var id))
                {
                    throw new ArgumentException("Invalid ID", nameof(pageid));
                }

                var pageRequest = new UpdatePageRequest
                {
                    Title = page.title,
                    HideSidebar = true,
                    MetaDescription = string.Empty,
                    HtmlContent = page.description,
                    CssContent = string.Empty,
                    IsPublished = publish,
                    Slug = ToSlug(page.title)
                };

                await _blogPageService.UpdateAsync(id, pageRequest);
                return true;
            }));
        }
        public async Task <string> AddPageAsync(string blogid, string username, string password, Page page, bool publish)
        {
            EnsureUser(username, password);

            try
            {
                var pageRequest = new UpdatePageRequest
                {
                    Title           = page.title,
                    HideSidebar     = true,
                    MetaDescription = string.Empty,
                    HtmlContent     = page.description,
                    CssContent      = string.Empty,
                    IsPublished     = publish,
                    Slug            = ToSlug(page.title)
                };

                var uid = await _pageService.CreateAsync(pageRequest);

                return(uid.ToString());
            }
            catch (Exception e)
            {
                _logger.LogError(e, e.Message);
                throw new MetaWeblogException(e.Message);
            }
        }
Example #6
0
        private async Task <IActionResult> CreateOrEdit(PageEditModel model, Func <UpdatePageRequest, Task <Guid> > pageServiceAction)
        {
            if (!string.IsNullOrWhiteSpace(model.CssContent))
            {
                var uglifyTest = Uglify.Css(model.CssContent);
                if (uglifyTest.HasErrors)
                {
                    foreach (var err in uglifyTest.Errors)
                    {
                        ModelState.AddModelError(model.CssContent, err.ToString());
                    }
                    return(BadRequest(ModelState.CombineErrorMessages()));
                }
            }

            var req = new UpdatePageRequest
            {
                HtmlContent     = model.RawHtmlContent,
                CssContent      = model.CssContent,
                HideSidebar     = model.HideSidebar,
                Slug            = model.Slug,
                MetaDescription = model.MetaDescription,
                Title           = model.Title,
                IsPublished     = model.IsPublished
            };

            var uid = await pageServiceAction(req);

            _cache.Remove(CacheDivision.Page, req.Slug.ToLower());
            return(Ok(new { PageId = uid }));
        }
Example #7
0
        public async Task <IActionResult> CreateOrEdit(PageEditViewModel model)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                if (!string.IsNullOrWhiteSpace(model.CssContent))
                {
                    var uglifyTest = Uglify.Css(model.CssContent);
                    if (uglifyTest.HasErrors)
                    {
                        foreach (var err in uglifyTest.Errors)
                        {
                            ModelState.AddModelError(model.CssContent, err.ToString());
                        }
                        return(BadRequest(ModelState));
                    }
                }

                var req = new UpdatePageRequest
                {
                    HtmlContent     = model.RawHtmlContent,
                    CssContent      = model.CssContent,
                    HideSidebar     = model.HideSidebar,
                    Slug            = model.Slug,
                    MetaDescription = model.MetaDescription,
                    Title           = model.Title,
                    IsPublished     = model.IsPublished
                };

                var uid = model.Id == Guid.Empty ?
                          await _pageService.CreateAsync(req) :
                          await _pageService.UpdateAsync(model.Id, req);

                _cache.Remove(CacheDivision.Page, req.Slug.ToLower());

                return(Json(new { PageId = uid }));
            }
            catch (Exception e)
            {
                _logger.LogError(e, "Error Create or Edit CustomPage.");
                Response.StatusCode = (int)HttpStatusCode.InternalServerError;
                return(Json(e.Message));
            }
        }
Example #8
0
 /// <summary>Snippet for UpdatePage</summary>
 public void UpdatePageRequestObject()
 {
     // Snippet: UpdatePage(UpdatePageRequest, CallSettings)
     // Create client
     PagesClient pagesClient = PagesClient.Create();
     // Initialize request argument(s)
     UpdatePageRequest request = new UpdatePageRequest
     {
         Page         = new Page(),
         LanguageCode = "",
         UpdateMask   = new FieldMask(),
     };
     // Make the request
     Page response = pagesClient.UpdatePage(request);
     // End snippet
 }
Example #9
0
        /// <summary>Snippet for UpdatePageAsync</summary>
        public async Task UpdatePageRequestObjectAsync()
        {
            // Snippet: UpdatePageAsync(UpdatePageRequest, CallSettings)
            // Additional: UpdatePageAsync(UpdatePageRequest, CancellationToken)
            // Create client
            PagesClient pagesClient = await PagesClient.CreateAsync();

            // Initialize request argument(s)
            UpdatePageRequest request = new UpdatePageRequest
            {
                Page         = new Page(),
                LanguageCode = "",
                UpdateMask   = new FieldMask(),
            };
            // Make the request
            Page response = await pagesClient.UpdatePageAsync(request);

            // End snippet
        }
        public IActionResult Update([FromBody] UpdatePageRequest page)
        {
            if (page == null)
            {
                return(BadRequest());
            }

            var pageToUpdate = _context.Pages.FirstOrDefault(p => p.PageId == page.Id);

            if (pageToUpdate == null)
            {
                return(NotFound());
            }
            pageToUpdate.ModDate        = DateTime.Now;
            pageToUpdate.ControlsJson   = page.Controls;
            pageToUpdate.XamlPageString = page.XamlSchema;

            _context.Pages.Update(pageToUpdate);
            _context.SaveChanges();
            return(new NoContentResult());
        }
Example #11
0
        public Task <string> AddPageAsync(string blogid, string username, string password, WilderMinds.MetaWeblog.Page page, bool publish)
        {
            EnsureUser(username, password);

            return(TryExecuteAsync(async() =>
            {
                var pageRequest = new UpdatePageRequest
                {
                    Title = page.title,
                    HideSidebar = true,
                    MetaDescription = string.Empty,
                    HtmlContent = page.description,
                    CssContent = string.Empty,
                    IsPublished = publish,
                    Slug = ToSlug(page.title)
                };

                var uid = await _blogPageService.CreateAsync(pageRequest);
                return uid.ToString();
            }));
        }
        public IActionResult Update([FromBody] UpdatePageRequest menu)
        {
            if (menu == null)
            {
                return(BadRequest());
            }

            var menuToUpdate = _context.Menus.FirstOrDefault(m => m.MenuId == menu.Id);

            if (menuToUpdate == null)
            {
                return(NotFound());
            }
            menuToUpdate.ModDate        = DateTime.Now;
            menuToUpdate.ControlsJson   = menu.Controls;
            menuToUpdate.XamlPageString = menu.XamlSchema;

            _context.Menus.Update(menuToUpdate);
            _context.SaveChanges();
            return(new NoContentResult());
        }
        public async void OnEditModeChangeAsync()
        {
            if (_mainWindowVM.ControlsWindow == null)
            {
                _mainWindowVM.ControlsWindow = new Views.Controls();
            }
            if (_mainWindowVM.PropertWindow == null)
            {
                _mainWindowVM.PropertWindow = new Views.Property();
            }

            switch (_editMode)
            {
            case -1:
                if (_mainWindowVM.ControlsWindow != null)
                {
                    _mainWindowVM.ControlsWindow.Hide();
                }
                if (_mainWindowVM.PropertWindow != null)
                {
                    _mainWindowVM.PropertWindow.Hide();
                }
                break;

            case 0:
                _mainWindowVM.ControlsWindow.Show();
                _mainWindowVM.PropertWindow.Hide();
                break;

            case 1:
                _mainWindowVM.ControlsWindow.Hide();
                _mainWindowVM.PropertWindow.Hide();
                break;

            case 2:
                _mainWindowVM.ControlsWindow.Hide();
                _mainWindowVM.PropertWindow.Hide();
                break;

            case 3:
                _mainWindowVM.ControlsWindow.Hide();
                _mainWindowVM.PropertWindow.Hide();
                break;

            case 4:
                _mainWindowVM.ControlsWindow.Hide();
                _mainWindowVM.PropertWindow.Hide();
                break;

            case 5:
                _mainWindowVM.ControlsWindow.Hide();
                _mainWindowVM.PropertWindow.Show();
                break;

            case 6:
                _mainWindowVM.ControlsWindow.Hide();
                _mainWindowVM.PropertWindow.Hide();

                StyleBuilder _styleBuilder = new StyleBuilder("C:\\Users\\MichaƂ\\Desktop\\Praca Inzynierska\\WebSiteArchitect\\WebSiteArchitectDev\\WebSiteArchitect.ClientWeb\\Content\\Style");
                _styleBuilder.ClearFile(_mainWindowVM.SelectedSite.Name);

                if (_mainWindowVM.SelectedPage != null)
                {
                    _mainWindowVM.SelectedPage.XamlPageString = Settings.XamlToSring(this.XamlPage);
                    UpdatePageRequest req = new UpdatePageRequest()
                    {
                        Id         = _mainWindowVM.SelectedPage.PageId,
                        XamlSchema = _mainWindowVM.SelectedPage.XamlPageString,
                        Controls   = null
                    };
                    _mainWindowVM.Consumer.UpdateAsync("api/page", req);
                }
                else if (_mainWindowVM.SelectedMenu != null)
                {
                    _mainWindowVM.SelectedMenu.XamlPageString = Settings.XamlToSring(this.XamlPage);

                    UpdatePageRequest req = new UpdatePageRequest()
                    {
                        Id         = _mainWindowVM.SelectedMenu.MenuId,
                        XamlSchema = _mainWindowVM.SelectedMenu.XamlPageString,
                        Controls   = null
                    };
                    _mainWindowVM.Consumer.UpdateAsync("api/menu", req);
                }

                Thread.Sleep(1000);
                if (_mainWindowVM.SelectedSite != null)
                {
                    var pages = _mainWindowVM.Consumer.GetPageForSite(_mainWindowVM.SelectedSite.SiteId).ToList();
                    var menus = _mainWindowVM.Consumer.GetMenusForSite(_mainWindowVM.SelectedSite.SiteId).ToList();
                    ControlCounter.Clear();
                    foreach (Base.Menu menu in menus)
                    {
                        Translator        translator = new Translator(Settings.StringToXaml(menu.XamlPageString), _mainWindowVM.SelectedSite.Name, false);
                        UpdatePageRequest req        = new UpdatePageRequest()
                        {
                            Id         = menu.MenuId,
                            XamlSchema = menu.XamlPageString,
                            Controls   = Settings.ConvertToJson(translator.Content)
                        };
                        _mainWindowVM.Consumer.UpdateAsync("api/menu", req);
                    }

                    foreach (Base.Page page in pages)
                    {
                        var               islast     = pages.IndexOf(page) == pages.Count() - 1 ? true : false;
                        Translator        translator = new Translator(Settings.StringToXaml(page.XamlPageString), _mainWindowVM.SelectedSite.Name, islast);
                        UpdatePageRequest req        = new UpdatePageRequest()
                        {
                            Id         = page.PageId,
                            XamlSchema = page.XamlPageString,
                            Controls   = Settings.ConvertToJson(translator.Content)
                        };
                        _mainWindowVM.Consumer.UpdateAsync("api/page", req);
                    }



                    ControlCounter.Clear();
                }

                break;
            }
        }