public static ValidationResult ValidateWritaPost(WritaPost p, IDataHelper d) { WritaPostValidator validator = new WritaPostValidator(d, p); ValidationResult results = validator.Validate(p); return(results); }
public WritaPost CreatePost(WritaPost p) { using (var session = docStore.OpenSession()) { p.PostId = System.Guid.NewGuid().ToString(); if (p.PostCreated == null) { p.PostCreated = DateTime.Now; } if (p.PostLastEdited == null) { p.PostLastEdited = DateTime.Now; } if (p.PostStartDate == null) { p.PostStartDate = DateTime.Now; } p.PostSlug = p.PostTitle.ToLower().Replace(" ", "-"); p.PostParent = ""; session.Store(p); session.SaveChanges(); WritaPostContent c = new WritaPostContent(); c.PostContentId = System.Guid.NewGuid().ToString(); c.PostId = p.PostId; c.PostEditDate = DateTime.Now; c.PostEditAuthor = p.PostAuthor; c.PostMarkdown = p.PostContent; session.Store(c); session.SaveChanges(); return(p); } }
public WritaPost UpdatePost(WritaPost p) { using (var session = docStore.OpenSession()) { WritaPost pl = session.Load <WritaPost>("writaposts/" + p.PostId); //pl.PostAuthor = p.PostAuthor; pl.PostContent = p.PostContent; pl.PostLastEdited = DateTime.Now; pl.PostSlug = p.PostSlug; pl.PostStatus = p.PostStatus; pl.PostSummary = p.PostSummary; pl.PostTags = p.PostTags; pl.PostAuthor = p.PostAuthor; pl.PostLastEditedAuthor = p.PostLastEditedAuthor; pl.PostThumbnail = p.PostThumbnail; pl.PostTitle = p.PostTitle; pl.PostType = p.PostType; pl.PostParent = p.PostParent; pl.Featured = p.Featured; if (p.PostCreated != pl.PostCreated) { pl.PostCreated = p.PostCreated; } session.SaveChanges(); return(p); } }
public ActionResult Read(string id) { bool pagefound = false; // for testing what resources are available //string[] resourceNames = this.GetType().Assembly.GetManifestResourceNames(); //foreach (string resourceName in resourceNames) //{ //Response.Write(resourceName); //} WritaPage p = new WritaPage(); p.Settings = Writa.Frontend.MvcApplication.GlobalSettings; WritaPost pagepost = _dtahelper.GetPostFromSlug(id); if (pagepost != null) { if (pagepost.PostRedirect != null) { if (pagepost.PostRedirect.Length > 2) { Response.Redirect("~/" + pagepost.PostRedirect); } } pagefound = true; p.Post = pagepost; p.PageTitle = p.Post.PostTitle; p.PageDescription = p.Post.PostSummary; p.NextPost = _dtahelper.GetNextPost(pagepost); p.PreviousPost = _dtahelper.GetPreviousPost(pagepost); } if (!pagefound) { return(HttpNotFound()); } else { p.BlogSettings = _blogsettings.LoadSettings(); var updater = new ContainerBuilder(); updater.RegisterInstance(p).As <IWritaPage>(); updater.Update(MvcApplication.container); if (p.Post.PostType == WritaPostType.BLOGPOST) { return(View("Read", "Masterpage", p)); } else { return(View("StaticPage", "Masterpage", p)); } } }
public WritaPost GetPreviousPost(WritaPost p) { var x = database.GetCollection <WritaPost>("Posts").AsQueryable().Where(w => w.PostCreated < p.PostCreated && w.PostType == WritaPostType.BLOGPOST && w.PostStatus == WritaPostStatus.PUBLISHED).OrderByDescending(w => w.PostCreated).Take(1).ToList(); if (x.Count == 1) { return(x[0]); } else { return(null); } }
public WritaPost GetPreviousPost(WritaPost p) { var db = new WritaBlogContext(); var x = db.WritaPosts.AsQueryable().Where(w => w.PostCreated < p.PostCreated && w.PostType == WritaPostType.BLOGPOST && w.PostStatus == WritaPostStatus.PUBLISHED).OrderByDescending(w => w.PostCreated).Take(1).ToList(); if (x.Count == 1) { return(x[0]); } else { return(null); } }
public WritaPost GetPreviousPost(WritaPost p) { using (var session = docStore.OpenSession()) { var x = session.Query <WritaPost>().Where(w => w.PostCreated < p.PostCreated && w.PostType == WritaPostType.BLOGPOST && w.PostStatus == WritaPostStatus.PUBLISHED).OrderByDescending(w => w.PostCreated).Take(1).ToList(); if (x.Count == 1) { return(x[0]); } else { return(null); } } }
public string CreatePost(string PostTitle, string PostMarkdown, string poststartdate) { WritaPost checkexists = _dbhelper.GetPostFromSlug(PostTitle.Replace(" ", "-").ToLower()); if (checkexists == null) { WritaUser u = _dbhelper.GetUserById(new WritaUser() { Id = User.Identity.Name }); WritaPost post = new WritaPost(); post.PostAuthorID = User.Identity.Name; post.PostAuthor = u.UserFullName; post.PostLastEditedAuthor = u.UserFullName; post.PostLastEditedAuthorID = User.Identity.Name; post.Homepage = false; post.PostSlug = PostTitle.Replace(" ", "-").ToLower(); post.PostTitle = PostTitle; post.PostType = WritaPostType.BLOGPOST; post.PostStatus = WritaPostStatus.DRAFT; post.PostContent = PostMarkdown; post.PostThumbnail = "/content/logo.jpg"; post.PostCreated = DateTime.Now; post.PostLastEdited = DateTime.Now; DateTime dateValue; if (DateTime.TryParse(poststartdate, out dateValue)) { post.PostStartDate = dateValue; } else { post.PostStartDate = DateTime.Now; } _dbhelper.CreatePost(post); RebuildRoutes.Rebuild(true, _dbhelper); return("Success"); } else { return("That post title has been used before, it must be unique."); } }
public string Post(string PostTitle, string PostMarkdown) { WritaPost post = new WritaPost(); post.PostAuthor = User.Identity.Name; post.Homepage = false; post.PostSlug = PostTitle.Replace(" ", "-").Replace(".", "").ToLower(); post.PostTitle = PostTitle; post.PostContent = PostMarkdown; post.PostCreated = DateTime.Now; post.PostLastEdited = DateTime.Now; post.PostThumbnail = "/content/logo.jpg"; _datahelper.CreatePost(post); RebuildRoutes.Rebuild(true, _datahelper); return("done"); }
public WritaPost CreatePost(WritaPost p) { p.PostId = ObjectId.GenerateNewId().ToString(); p.PostCreated = DateTime.Now; p.PostLastEdited = DateTime.Now; p.PostSlug = p.PostTitle.ToLower().Replace(" ", "-"); database.GetCollection <WritaPost>("Posts").Save(p); WritaPostContent c = new WritaPostContent(); c.PostContentId = ObjectId.GenerateNewId().ToString(); c.PostId = p.PostId; c.PostEditDate = DateTime.Now; c.PostEditAuthor = p.PostAuthor; c.PostMarkdown = p.PostContent; database.GetCollection <WritaPostContent>("Content").Save(c); return(p); }
public string Updatesettings(WritaPost u) { ValidationResult results = ValidationHelper.ValidateWritaPost(u, _dbhelper); if (results.IsValid) { WritaUser user = _dbhelper.GetUserById(new WritaUser() { Id = User.Identity.Name }); WritaPost x = _dbhelper.GetPostFromId(u.PostId); x.PostSlug = StringTools.ReplaceBadInUrl(u.PostSlug); x.PostTitle = u.PostTitle; x.PostRedirect = u.PostRedirect; x.PostType = u.PostType; x.PostStatus = u.PostStatus; x.PostCreated = u.PostCreated; x.PostSummary = u.PostSummary; x.PostThumbnail = u.PostThumbnail; x.PostParent = u.PostParent; x.PostLastEditedAuthorID = User.Identity.Name; x.PostLastEditedAuthor = user.UserFullName; x.Featured = u.Featured; _dbhelper.UpdatePost(x); RebuildRoutes.Rebuild(true, _dbhelper); return("Success - post updated"); } else { var s = "Error"; foreach (ValidationFailure f in results.Errors) { s += f.ErrorMessage; } return(s); } }
public WritaPost CreatePost(WritaPost p) { using (var db = new WritaBlogContext()) { p.PostId = System.Guid.NewGuid().ToString(); p.PostCreated = DateTime.Now; p.PostLastEdited = DateTime.Now; p.PostSlug = p.PostTitle.ToLower().Replace(" ", "-"); db.WritaPosts.Add(p); db.SaveChanges(); WritaPostContent c = new WritaPostContent(); c.PostContentId = System.Guid.NewGuid().ToString(); c.PostId = p.PostId; c.PostEditDate = DateTime.Now; c.PostEditAuthor = p.PostAuthor; c.PostMarkdown = p.PostContent; db.WritaPostContents.Add(c); db.SaveChanges(); return(p); } }
public void DeletePost(WritaPost p) { throw new NotImplementedException(); }
public WritaPost UpdatePost(WritaPost p) { throw new NotImplementedException(); }
public WritaPost UpdatePost(WritaPost p) { database.GetCollection <WritaPost>("Posts").Save(p); return(p); }