public JsonResult AddNewPageFromTemplate(string templatePath, string viewTemplate, string permalink, string title, int parent) { var result = new JsonResult() { Data = new { success = false, message = "There was an error processing you request." } }; // check to see if permalink exists if (Context.ContentPages.Any(x => x.Permalink == permalink)) { result.Data = new { success = false, message = "Permalink is already in use." }; return(result); } var success = 0; var urlLink = ""; var page = new ContentPage { Title = title, IsActive = false, CreateDate = DateTime.UtcNow, Permalink = permalink, DisplayName = permalink, ParentNavigationItemId = parent, Template = !String.IsNullOrEmpty(viewTemplate) ? viewTemplate.ToLower() : "blank", HTMLContent = ContentUtils.RenderPartialViewToString(templatePath, null, ControllerContext, ViewData, TempData), }; Context.ContentPages.Add(page); success = Context.SaveChanges(); var parentHref = NavigationUtils.GetNavItemUrl(parent); if (!String.IsNullOrEmpty(parentHref)) { urlLink = parentHref + page.Permalink; } if (success > 0) { urlLink = string.IsNullOrEmpty(urlLink) ? "/" + page.Permalink : urlLink; result.Data = new { id = page.ContentPageId, url = urlLink, success = true, message = "Page created, redirecting." }; } return(result); }
/// <summary> /// /// </summary> /// <param name="take"></param> /// <param name="skip"></param> /// <param name="category"></param> /// <param name="id"></param> /// <returns></returns> public JsonResult LoadMoreRelatedBlogs(int take, int skip, string category, int id = 0) { var result = new JsonResult(); List <Blog> blogs = model.GetMoreRelatedBlogs(take, skip, category, id); string html = ContentUtils.RenderPartialViewToString("/Views/Shared/Partials/RelatedBlogSinglePartial.cshtml", blogs, ControllerContext, ViewData, TempData); result.Data = new { html, skip = skip + take, buttonClass = blogs.Count() < take ? "hide" : "" }; return(result); }
/// <summary> /// Get a list of blogs based on search term /// </summary> /// <param name="tags"></param> /// <returns></returns> public JsonResult LoadBlogsByTags(string tags = "", string category = "") { var result = new JsonResult(); List <Blog> blogs = model.GetMoreBlogsByTags(tags, category); string html = ContentUtils.RenderPartialViewToString("/Views/Shared/Partials/BlogArticleSinglePartial.cshtml", blogs, ControllerContext, ViewData, TempData); result.Data = new { html = html, skip = 0, buttonClass = "hide" }; return(result); }
/// <summary> /// /// </summary> /// <param name="lastMonth"></param> /// <param name="count"></param> /// <param name="idList"></param> /// <param name="user"></param> /// <param name="date"></param> /// <returns></returns> public JsonResult LoadMoreArchives(string lastMonth, int count, List <string> idList, string user = "", string date = "") { var result = new JsonResult(); IEnumerable <string> archives = model.GetArchives(lastMonth, count, idList, user, date); string html = ContentUtils.RenderPartialViewToString("/Views/Shared/Partials/BlogArchiveSinglePartial.cshtml", archives, ControllerContext, ViewData, TempData); lastMonth = !archives.Any() ? "0" : ""; result.Data = new { html = html, lastMonth = lastMonth }; return(result); }
public ActionResult ResponsiveImageTemplate(ResponsiveImageUtils.ResponsiveImageObject imageObject) { var result = new JsonResult(); try { var html = ContentUtils.RenderPartialViewToString( "~/Views/Shared/Partials/_ResponsiveImagePartial.cshtml", imageObject, ControllerContext, ViewData, TempData); result.Data = new { success = true, html }; } catch (Exception err) { result.Data = new { success = false, error = err }; } return(result); }
public JsonResult GetRevisionList(int id) { var result = new JsonResult { JsonRequestBehavior = JsonRequestBehavior.AllowGet }; var drafts = Context.ContentPages.Where(x => x.ParentContentPageId == id || x.ContentPageId == id).OrderByDescending(x => x.PublishDate).ToList().Select(rev => new RevisionViewModel { Date = TimeUtils.ConvertUTCToLocal(rev.PublishDate), ContentId = rev.ContentPageId, AuthorName = rev.DraftAuthorName, WasPublished = rev.WasPublished }).ToList(); var html = ContentUtils.RenderPartialViewToString("/Areas/Admin/Views/Shared/Partials/RevisionsListInnerPartial.cshtml", drafts, ControllerContext, ViewData, TempData); result.Data = new { html }; return(result); }
public JsonResult GetNewNavItem(int parentId) { var result = new JsonResult() { Data = new { success = false, message = "There was an error processing your request." } }; string html = ""; var success = 0; var navItem = new NavigationItem { ParentNavigationId = parentId, Name = "Menu Item" }; Context.NavigationItems.Add(navItem); success = Context.SaveChanges(); var container = new ParentNavViewContainer { NavItem = navItem, NavViewModel = new EditNavigationViewModel(parentId) { } }; html = ContentUtils.RenderPartialViewToString("/Areas/Admin/Views/Navigation/ParentNavItemPartial.cshtml", container, ControllerContext, ViewData, TempData); result.Data = new { html }; if (success > 0) { result.Data = new { success = true, message = "Retrieved new nav item", html = html }; } return(result); }
public JsonResult AddNewPageFromTemplate(string templatePath, string viewTemplate, string permalink, string title, int parent) { var result = new JsonResult(); var contentUtility = new ContentUtils(); // check to see if permalink exists if (contentUtility.CheckPermalink(permalink, 0, parent)) { result.Data = new { success = false, message = "Permalink is already in use." }; return(result); } var urlLink = ""; var page = new ContentPage { Title = title, IsActive = false, CreateDate = DateTime.UtcNow, Permalink = permalink, DisplayName = permalink, ParentNavigationItemId = parent, Template = !String.IsNullOrEmpty(viewTemplate) ? viewTemplate.ToLower() : "blank", HTMLUnparsed = ContentUtils.RenderPartialViewToString(templatePath, null, ControllerContext, ViewData, TempData), HTMLContent = ContentUtils.RenderPartialViewToString(templatePath, null, ControllerContext, ViewData, TempData) }; try { Context.ContentPages.Add(page); Context.SaveChanges(); page.HTMLContent = ContentUtils.ReplacePageParametersInHtmlContent(page.HTMLUnparsed, page); Context.SaveChanges(); } catch (Exception) { result.Data = new { success = false, message = "Page could not be created." }; return(result); } CachedObjects.GetCacheContentPages(true); var parentHref = NavigationUtils.GetNavItemUrl(parent); if (!String.IsNullOrEmpty(parentHref)) { urlLink = parentHref + page.Permalink; } urlLink = string.IsNullOrEmpty(urlLink) ? "/" + page.Permalink : urlLink; result.Data = new { id = page.ContentPageId, url = urlLink, success = true, message = "Page created, redirecting." }; return(result); }