// JavaScript Document
/* 
 * Retrieve a specific blog post
 */

// Create the blogger service object
var bloggerService = new google.gdata.blogger.BloggerService('GoogleInc-jsguide-1.0');

// The default "metafeed" feed is used to retrieve a list of blogs for a particular logged-in user
var feedUri = 'http://drtheronbaker.blogspot.com';

// The callback method that will be called when getBlogFeed() returns the list of our blogs
var handleBlogFeed = function(blogFeedRoot) {
  var blogEntries = blogFeedRoot.feed.getEntries(); 
  
  if (blogEntries.length) {
    var blogEntry = blogEntries[0]; // only get first blog
    var postsFeedUri = blogEntry.getEntryPostLink().getHref();
  
    bloggerService.getBlogPostFeed(postsFeedUri, handleBlogPostFeed, handleError);
  }
};

// Called when getBlogPostFeed() returns the list of blog posts
var handleBlogPostFeed = function(postsFeedRoot) {
  var blogTitle = postsFeedRoot.feed.getTitle().getText();
  var postEntry = postsFeedRoot.feed.getEntries()[0]; // only get first post
  var entryUri = postEntry.getSelfLink().getHref();   // post's uri
  
  // Get the blog post entry
  bloggerService.getBlogPostEntry(entryUri, 
      function(postRoot) {
        var postTitle = postRoot.entry.getTitle().getText(); 
        PRINT('Title of latest post to ' + blogTitle + ':');
        PRINT('<b>"' + postTitle + '"</b>');
      }, 
      handleError
  );
};

var handleError = function(error) {
  alert(error);
};

bloggerService.getBlogFeed(feedUri, handleBlogFeed, handleError);