private Oxite.Models.User getUser(string username, string password) { if (username == null || password == null) { throw new ArgumentException("Invalid login"); } Oxite.Models.User user = userService.GetUser(username, password); if (user == null) { throw new InvalidCredentialException(); } return(user); }
public string NewPost(string blogId, string username, string password, Post post, bool publish) { Oxite.Models.User user = getUser(username, password); Oxite.Models.Area area = areaService.GetArea(new Guid(blogId)); Oxite.Models.Post newPost = new Oxite.Models.Post { Title = post.title, Body = post.description, Created = post.dateCreated == default(DateTime) ? DateTime.Now : post.dateCreated, Slug = string.IsNullOrEmpty(post.mt_basename) ? expressions.Slugify(post.title) : post.mt_basename, BodyShort = post.mt_excerpt, Creator = user, State = Oxite.Models.EntityState.Normal }; if (publish) { newPost.Published = DateTime.Now; } if (post.categories != null) { newPost.Tags = new List <Oxite.Models.Tag>(post.categories.Select(s => new Oxite.Models.Tag() { Name = s })); } postService.AddPost(newPost); Oxite.Models.Post createdPost = postService.GetPost(new Oxite.Models.PostAddress(area.Name, newPost.Slug)); return(createdPost.ID.ToString()); }