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>"); }
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>"); }
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>"); }
private static void AddPageContent(PagesApiContext pagesApi, PageProperties page, HtmlContentWidget header, HtmlContentWidget footer, string mainHtml) { pagesApi.AddHtmlContentWidgetToPage(new AddWidgetToPageRequest() { PageId = page.Id, ContentId = header.Id, RegionIdentifier = Template.Regions.Header }); pagesApi.AddHtmlContentWidgetToPage(new AddWidgetToPageRequest() { PageId = page.Id, ContentId = footer.Id, RegionIdentifier = Template.Regions.Footer }); var contentRequest = new CreatePageHtmlContentRequest() { PageId = page.Id, RegionIdentifier = Template.Regions.Main, Name = "Main Content", Html = mainHtml, ContentStatus = ContentStatus.Published }; pagesApi.CreatePageHtmlContent(contentRequest); }
/// <summary> /// Creates the HTML content widget. /// </summary> /// <param name="request">The request.</param> /// <returns> /// Created widget entity /// </returns> /// <exception cref="CmsApiException"></exception> /// <exception cref="BetterCms.Core.Exceptions.Api.CmsApiException"></exception> public HtmlContentWidget CreateHtmlContentWidget(CreateHtmlContentWidgetRequest request) { ValidateRequest(request); try { UnitOfWork.BeginTransaction(); var htmlWidget = new HtmlContentWidget { Name = request.Name, Html = request.Html, CustomCss = request.Css, CustomJs = request.JavaScript, UseHtml = !string.IsNullOrWhiteSpace(request.Html), UseCustomCss = !string.IsNullOrWhiteSpace(request.Css), UseCustomJs = !string.IsNullOrWhiteSpace(request.JavaScript) }; if (request.CategoryId.HasValue && !request.CategoryId.Value.HasDefaultValue()) { htmlWidget.Category = Repository.AsProxy<Category>(request.CategoryId.Value); } var service = Resolve<IContentService>(); var widgetToSave = (HtmlContentWidget)service.SaveContentWithStatusUpdate(htmlWidget, ContentStatus.Published); Repository.Save(widgetToSave); UnitOfWork.Commit(); // Notify Events.OnWidgetCreated(widgetToSave); return widgetToSave; } catch (Exception inner) { var message = string.Format("Failed to create HTML content widget."); Logger.Error(message, inner); throw new CmsApiException(message, inner); } }