public IList <BlogEntryDescriptor> GetBlogEntries(BlogDescriptor blogDescriptor) { var gateway = GetGateway(blogDescriptor); var result = new List <BlogEntryDescriptor>(); var blogId = GetBlogId(gateway, blogDescriptor); if (!String.IsNullOrEmpty(blogId)) { var posts = gateway.getRecentPosts( blogId, blogDescriptor.Username, blogDescriptor.Password, 20); foreach (var post in posts) { result.Add( new BlogEntryDescriptor() { Content = post.description, Date = post.dateCreated, Sender = blogDescriptor.Username, Subject = post.title }); } } return(result); }
private String GetFeedUri(BlogDescriptor blogDescriptor) { String feedUri = null; var blogDescriptorExists = _descriptor2FeedUriMap.Keys.Contains(blogDescriptor); if (blogDescriptorExists) { feedUri = _descriptor2FeedUriMap[blogDescriptor]; } if (String.IsNullOrEmpty(feedUri)) { feedUri = GetFeedUriFromQuery(blogDescriptor); if (blogDescriptorExists) { _descriptor2FeedUriMap[blogDescriptor] = feedUri; } else { _descriptor2FeedUriMap.Add(blogDescriptor, feedUri); } } return(feedUri); }
public IList <BlogEntryDescriptor> GetBlogEntries(BlogDescriptor blogDescriptor) { var result = new List <BlogEntryDescriptor>(); foreach (var item in GetGateway().GetEvents( new GetEventsRequest() { Username = blogDescriptor.Username, Password = blogDescriptor.Password, HowMany = 20, LineEndings = GetLineEndings(), SelectType = "lastn", NoProps = true }).Events) { result.Add( new BlogEntryDescriptor() { Content = item.Content, Sender = String.IsNullOrEmpty(item.Poster) ? blogDescriptor.Username : item.Poster, Subject = item.Subject, Date = DateTime.Parse(item.EventTime) }); } return(result); }
public string CrossPost(string WebBlogID, string BlogService, string Username, string Password, string WPAddress) { string ErrorMessage = string.Empty; BlogDescriptor bDescr = new BlogDescriptor(); bDescr.Username = Username; bDescr.Password = Password; BlogEntry blog = BlogEntry.GetBlogEntryByWebBlogEntryID(WebBlogID); if (blog == null) { throw new Exception("invalid blog entry"); } try { switch (BlogService) { case "blogger": bDescr.BlogType = BlogType.Blogger; bDescr.Address = "http://www.blogger.com"; Service service = new Service("blogger", ""); service.Credentials = new GDataCredentials(Username, Password); Uri blogPostUri = SelectUserBlog(service); AtomEntry createdEntry = PostNewEntry(service, blogPostUri, blog.Title, blog.Body); break; case "wordpress": bDescr.BlogType = BlogType.WordPress; bDescr.Address = WPAddress; WordPressEngine wpe = new WordPressEngine(); wpe.PublishNewEntry(bDescr, blog.Title, blog.Body); break; case "livejournal": bDescr.BlogType = BlogType.LiveJournal; bDescr.Address = "http://www.livejournal.com"; LiveJournalEngine lje = new LiveJournalEngine(); lje.PublishNewEntry(bDescr, blog.Title, blog.Body); break; default: break; } } catch (Exception ex) { //ErrorMessage = ex.Message; ErrorMessage = "Could not login, please check your credentials"; } return(ErrorMessage); }
private static MetaWeblogGateway GetGateway(BlogDescriptor blogDescriptor) { return(new MetaWeblogGateway() { Credentials = new NetworkCredential(blogDescriptor.Username, blogDescriptor.Password), KeepAlive = false, Url = blogDescriptor.Address }); }
/// <summary> /// Creates a new instance of the <code>WizardFinishedEventArgs</code> class. /// </summary> /// <exception cref="ArgumentNullException"> /// If the specified <code>blogDescriptor</code> is <code>null</code>. /// </exception> public WizardFinishedEventArgs(Boolean cancelled, BlogDescriptor blogDescriptor) { if (blogDescriptor == null) { throw new ArgumentNullException("blogDescriptor"); } Cancelled = cancelled; BlogDescriptor = blogDescriptor; }
private static String GetBlogId(MetaWeblogGateway gateway, BlogDescriptor blogDescriptor) { var blogs = gateway.getUsersBlogs("", blogDescriptor.Username, blogDescriptor.Password); if (blogs != null && blogs.Length > 0) { return(blogs[0].blogid); } return(null); }
/// <summary> /// </summary> /// <param name="blogDescriptor"></param> /// <exception cref="ArgumentNullException"> /// If the specified <code>blogDescriptor</code> is <code>null</code>. /// </exception> public void Start(BlogDescriptor blogDescriptor) { if (blogDescriptor == null) { throw new ArgumentNullException("blogDescriptor"); } if (_steps.Count == 0) { return; } _currentStepIndex = 0; _steps[_currentStepIndex].Show(_wizardOwner, blogDescriptor); }
public IList <BlogEntryDescriptor> GetBlogEntries(BlogDescriptor blogDescriptor) { if (blogDescriptor == null) { throw new ArgumentNullException("blogDescriptor"); } try { return(GetBlogEntries(blogDescriptor, GetFeedUri(blogDescriptor))); } catch (gClient.GDataRequestException e) { Console.WriteLine(e.InnerException.Message); return(new List <BlogEntryDescriptor>()); } }
protected override void PreviewShow(BlogDescriptor blogDescriptor) { var url = "http://www.blogger.com/feeds/default/blogs"; switch (blogDescriptor.BlogType) { case BlogType.WordPress: url = "http://nickname.wordpress.com/xmlrpc.php"; break; case BlogType.LiveJournal: url = "http://www.livejournal.com/interface/xmlrpc"; break; } _addressTextBox.Text = url; }
private static String GetFeedUriFromQuery(BlogDescriptor blogDescriptor) { var query = new gClient.FeedQuery(blogDescriptor.Address); var service = new gClient.Service("blogger", GoogleSucks.GetApplicationName()) { Credentials = new gClient.GDataCredentials(blogDescriptor.Username, blogDescriptor.Password) }; var bloggerFeed = service.Query(query); var feeds = new List <gClient.AtomEntry>(); while (bloggerFeed != null && bloggerFeed.Entries.Count > 0) { foreach (gClient.AtomEntry entry in bloggerFeed.Entries) { feeds.Add(entry); } if (bloggerFeed.NextChunk != null) { query.Uri = new Uri(bloggerFeed.NextChunk); bloggerFeed = service.Query(query); } else { bloggerFeed = null; } } foreach (gClient.AtomEntry entry in feeds) { if (entry != null) { foreach (gClient.AtomLink link in entry.Links) { if (link.Rel == gClient.BaseNameTable.ServiceFeed) { return(link.HRef.ToString()); } } } } return(null); }
private void _composeButton_Click(Object sender, EventArgs e) { if (_blogList.SelectedNode != null) { BlogDescriptor blogDescriptor = (BlogDescriptor)_blogList.SelectedNode.Tag; using (var composeForm = new ComposeForm()) { if (composeForm.ShowDialog() == DialogResult.OK && !String.IsNullOrEmpty(composeForm.Message)) { Cursor.Current = Cursors.WaitCursor; BlogEngineFactory.GetEngine(blogDescriptor.BlogType).PublishNewEntry(blogDescriptor, composeForm.Title, composeForm.Message); RefreshBlogEntries(blogDescriptor); Cursor.Current = Cursors.Default; } } } }
public DialogResult ShowDialog(BlogDescriptor blogDescriptor) { if (blogDescriptor == null) { throw new ArgumentNullException("blogDescriptor"); } BlogDescriptor = blogDescriptor; _blogAddressTextBox.Text = blogDescriptor.Address; _blogNameTextBox.Text = blogDescriptor.BlogName; _passwordTextBox.Text = blogDescriptor.Password; _usernameTextBox.Text = blogDescriptor.Username; switch (blogDescriptor.BlogType) { default: _blogList.SelectedIndex = 0; break; } return(base.ShowDialog()); }
public void PublishNewEntry(BlogDescriptor blogDescriptor, String title, String content) { var now = DateTime.Now; GetGateway().PostEvent( new PostRequest() { Username = blogDescriptor.Username, Password = blogDescriptor.Password, LineEndings = GetLineEndings(), Subject = title, Content = content, Year = now.Year, Month = now.Month, Day = now.Day, Hour = now.Hour, Minute = now.Minute }); }
private static IList <BlogEntryDescriptor> GetBlogEntries(BlogDescriptor blogDescriptor, String feedUri) { IList <BlogEntryDescriptor> result = new List <BlogEntryDescriptor>(); if (feedUri != null) { var query = new gClient.FeedQuery(feedUri); var service = new gClient.Service("blogger", GoogleSucks.GetApplicationName()) { Credentials = new gClient.GDataCredentials(blogDescriptor.Username, blogDescriptor.Password) }; var bloggerFeed = service.Query(query); while (bloggerFeed != null && bloggerFeed.Entries.Count > 0) { foreach (gClient.AtomEntry entry in bloggerFeed.Entries) { result.Add( new BlogEntryDescriptor() { Content = entry.Content.Content, Subject = entry.Title.Text, Sender = entry.Authors[0].Name, Date = entry.Published }); } if (bloggerFeed.NextChunk != null) { query.Uri = new Uri(bloggerFeed.NextChunk); bloggerFeed = service.Query(query); } else { bloggerFeed = null; } } } return(result); }
public void PublishNewEntry(BlogDescriptor blogDescriptor, String title, String content) { var gateway = GetGateway(blogDescriptor); var blogId = GetBlogId(gateway, blogDescriptor); if (!String.IsNullOrEmpty(blogId)) { gateway.newPost( blogId, blogDescriptor.Username, blogDescriptor.Password, new Post() { categories = new[] { "Uncategorized" }, dateCreated = DateTime.Now, description = content, title = title }, true); } }
private void RefreshBlogEntries(BlogDescriptor blogDescriptor) { var blogEntries = BlogEngineFactory.GetEngine(blogDescriptor.BlogType).GetBlogEntries(blogDescriptor); _blogEntries.BeginUpdate(); _blogEntries.Items.Clear(); foreach (BlogEntryDescriptor entry in blogEntries) { _blogEntries.Items.Add( new ListViewItem( new[] { entry.Subject, entry.Sender, String.Format(CultureInfo.CurrentUICulture, "{0} {1}", entry.Date.ToShortDateString(), entry.Date.ToShortTimeString()) }) { Tag = entry.Content }); } _blogEntries.EndUpdate(); }
public void PublishNewEntry(BlogDescriptor blogDescriptor, String title, String content) { if (blogDescriptor == null) { throw new ArgumentNullException("blogDescriptor"); } if (String.IsNullOrEmpty(blogDescriptor.Username)) { throw new ArgumentException("blogDescriptor.Username cannot be null or an empty string."); } var entry = new gClient.AtomEntry(); entry.Content.Content = content; entry.Content.Type = "html"; entry.Title.Text = title; var service = new gClient.Service("blogger", GoogleSucks.GetApplicationName()); service.Credentials = new gClient.GDataCredentials(blogDescriptor.Username, blogDescriptor.Password); service.Insert(new Uri(GetFeedUri(blogDescriptor)), entry); }
protected virtual void PreviewShow(BlogDescriptor blogDescriptor) { }
public int CrossPost(string BlogService, string Username, string Password, string WPAddress, bool AutoSubmit) { member = (Member)Session["Member"]; int Result = 0; BlogDescriptor bDescr = new BlogDescriptor(); bDescr.Username = Username; bDescr.Password = Password; string Title = "Next2Friends test post"; string Body = "If you are reading this post then your username and password have been entered correctly"; bool LoginOK = false; try { switch (BlogService) { case "blogger": bDescr.BlogType = BlogType.Blogger; bDescr.Address = "http://www.blogger.com"; Service service = new Service("blogger", ""); service.Credentials = new GDataCredentials(Username, Password); Uri blogPostUri = SelectUserBlog(service); AtomEntry createdEntry = PostNewEntry(service, blogPostUri, Title, Body); LoginOK = true; break; case "wordpress": bDescr.BlogType = BlogType.WordPress; bDescr.Address = WPAddress; WordPressEngine wpe = new WordPressEngine(); wpe.PublishNewEntry(bDescr, Title, Body); LoginOK = true; break; case "livejournal": bDescr.BlogType = BlogType.LiveJournal; bDescr.Address = "http://www.livejournal.com"; LiveJournalEngine lje = new LiveJournalEngine(); lje.PublishNewEntry(bDescr, Title, Body); LoginOK = true; break; default: break; } Result = 0; } catch (Exception ex) { Result = 1; } //if (LoginOK) if (true) // always save { MemberBlogSettings memberBlogSettings = MemberBlogSettings.GetMemberBlogSettingsByMemberID(member.MemberID); switch (BlogService) { case "blogger": memberBlogSettings.BloggerUserName = Username; memberBlogSettings.BloggerPassword = Password; memberBlogSettings.BloggerAutoSubmit = AutoSubmit; break; case "wordpress": memberBlogSettings.WordPressUserName = Username; memberBlogSettings.WordPressPassword = Password; memberBlogSettings.WordPressURL = WPAddress; memberBlogSettings.WordPressAutoSubmit = AutoSubmit; break; case "livejournal": memberBlogSettings.LiveJournalUserName = Username; memberBlogSettings.LiveJournalPassword = Password; memberBlogSettings.LiveJournalAutoSubmit = AutoSubmit; break; default: break; } memberBlogSettings.Save(); } return(Result); }
void IWizardStep.Show(Form wizardOwner, BlogDescriptor blogDescriptor) { BlogDescriptor = blogDescriptor; PreviewShow(blogDescriptor); Show(wizardOwner); }