/// <summary> /// Translate an XML RPC Post in Database Post /// </summary> /// <param name="db"></param> /// <param name="post"></param> /// <returns></returns> private static Engine.Data.Models.Post TranslatePost(DataService db, PostNew post, Boolean publish) { // Create a new post var result = new Engine.Data.Models.Post { Title = post.Title, DateCreatedGmt = post.DateCreatedGmt ?? post.DateCreated ?? DateTime.UtcNow, Published = publish }; result.SetContentFromHtml(post.Description); // Get categories result.Categories = new Collection <Engine.Data.Models.Category>(); var categories = db.GetCategoriesAndCreatIfNotExists(post.Categories); if (categories?.Length > 0) { // Add categories foreach (var category in categories) { result.Categories.Add(category); } } return(result); }
/// <summary> /// Translate a database Post in Xml RPC Post /// </summary> /// <param name="post"></param> /// <returns></returns> private static Post TranslatePost(Engine.Data.Models.Post post) { String url = DataService.GetPostUrl(post); // Return the post return(new Post { Id = post.Id, Title = post.Title, Description = post.GetFullContentForOpenLiveWriter(), DateCreatedGmt = post.DateCreatedGmt, Status = post.Published ? Published : Draft, UserId = MetaWeblogConfiguration.UserId, Categories = post.Categories.Select(c => c.Name).ToArray(), Url = url, PermaLink = url }); }