public async Task <PostResult> EditPost(BlogPost post, INewCategoryContext newCategoryContext, bool publish) { // initialize result (for edits the id never changes) PostResult result = new PostResult(); var editpostResult = new EditPostResult(); result.PostId = post.Id; try { //apply any publishing filters and make the post using (new ContentFilterApplier(post, ClientOptions, ContentFilterMode.Publish)) { // make the post if (post.IsPage) { await BlogClient.EditPage(_settings.HostBlogId, post, publish, result.ETag, result.AtomRemotePost); } else { await BlogClient.EditPost(_settings.HostBlogId, post, newCategoryContext, publish, editpostResult); } } // note success _settings.LastPublishFailed = false; } catch (BlogClientProviderException ex) { if (ErrorIsInvalidPostId(ex)) { return(await NewPost(post, newCategoryContext, publish)); } else { throw; } } catch { _settings.LastPublishFailed = true; throw; } // determine the date-published based on whether there was an override if (post.HasDatePublishedOverride) { result.DatePublished = post.DatePublishedOverride; } else { result.DatePublished = DateTime.UtcNow; } // return result return(result); }
public async Task <PostResult> NewPost(BlogPost post, INewCategoryContext newCategoryContext, bool publish) { // initialize result PostResult result = new PostResult(); try { using (new ContentFilterApplier(post, ClientOptions, ContentFilterMode.Publish)) { // make the post if (post.IsPage) { result.PostId = await BlogClient.NewPage(_settings.HostBlogId, post, publish, result.ETag, result.AtomRemotePost); } else { result.PostId = await BlogClient.NewPost(_settings.HostBlogId, post, newCategoryContext, publish, result); } } // note success _settings.LastPublishFailed = false; } catch { _settings.LastPublishFailed = true; throw; } // determine the date-published based on whether there was an override if (post.HasDatePublishedOverride) { result.DatePublished = post.DatePublishedOverride; } else { result.DatePublished = DateTime.UtcNow; } // return result return(result); }
void IBlogPostEditor.OnPublishSucceeded(BlogPost blogPost, PostResult postResult) { }
public PostResult NewPost(BlogPost post, INewCategoryContext newCategoryContext, bool publish) { // initialize result PostResult result = new PostResult(); try { using (new ContentFilterApplier(post, ClientOptions, ContentFilterMode.Publish)) { // make the post if (post.IsPage) result.PostId = BlogClient.NewPage(_settings.HostBlogId, post, publish, out result.ETag, out result.AtomRemotePost); else result.PostId = BlogClient.NewPost(_settings.HostBlogId, post, newCategoryContext, publish, out result.ETag, out result.AtomRemotePost); } // note success _settings.LastPublishFailed = false; } catch { _settings.LastPublishFailed = true; throw; } // determine the date-published based on whether there was an override if (post.HasDatePublishedOverride) result.DatePublished = post.DatePublishedOverride; else result.DatePublished = DateTimeHelper.UtcNow; // return result return result; }
public PostResult EditPost(BlogPost post, INewCategoryContext newCategoryContext, bool publish) { // initialize result (for edits the id never changes) PostResult result = new PostResult(); result.PostId = post.Id; try { //apply any publishing filters and make the post using (new ContentFilterApplier(post, ClientOptions, ContentFilterMode.Publish)) { // make the post if (post.IsPage) BlogClient.EditPage(_settings.HostBlogId, post, publish, out result.ETag, out result.AtomRemotePost); else BlogClient.EditPost(_settings.HostBlogId, post, newCategoryContext, publish, out result.ETag, out result.AtomRemotePost); } // note success _settings.LastPublishFailed = false; } catch (BlogClientProviderException ex) { if (ErrorIsInvalidPostId(ex)) return NewPost(post, newCategoryContext, publish); else throw; } catch { _settings.LastPublishFailed = true; throw; } // determine the date-published based on whether there was an override if (post.HasDatePublishedOverride) result.DatePublished = post.DatePublishedOverride; else result.DatePublished = DateTimeHelper.UtcNow; // return result return result; }
public void OnPublishSucceeded(BlogPost blogPost, PostResult postResult) { controller.OnPublishSucceeded(blogPost, postResult); ((IBlogPostEditor)postPropertiesForm).OnPublishSucceeded(blogPost, postResult); }
void IBlogPostEditor.OnPublishSucceeded(BlogPost blogPost, PostResult postResult) { _isDirty = false; }
public virtual void OnPublishSucceeded(BlogPost blogPost, PostResult postResult) { }
public void OnPublishSucceeded(BlogPost blogPost, PostResult postResult) { ((IBlogPostEditor)categoryDropDown).OnPublishSucceeded(blogPost, postResult); List<BlogPostKeyword> keywords = new List<BlogPostKeyword>(); keywords.AddRange(_targetBlog.Keywords); string[] keywordList = blogPost.Keywords.Split(','); foreach (string str in keywordList) { string name = str.Trim(); if (string.IsNullOrEmpty(name)) continue; keywords.Add(new BlogPostKeyword(name)); } _targetBlog.Keywords = keywords.ToArray(); LoadTagValues(); isDirty = false; }
public override void OnPublishSucceeded(BlogPost blogPost, PostResult postResult) { // delegate to property editor _postPropertyEditor.OnPublishSucceeded(blogPost, postResult); IsDirty = false; }