function BlogPreview(container) {
  this.container_ = container;
}

BlogPreview.prototype.show = function(url, opt_noTitle, numEntries) {
  var feed = new google.feeds.Feed(url);
  var preview = this;
  feed.setNumEntries(numEntries == null ? 1 : numEntries)
  feed.load(function(result) {
    preview.render_(result, opt_noTitle);
  });
}

BlogPreview.prototype.render_ = function(result, opt_noTitle) {
  if (!result.feed || !result.feed.entries) return;
  var blog = this.createDiv_(this.container_, "blog");
  if (!opt_noTitle) {
    var header = this.createElement_("h3", blog, "");
    this.createLink_(header, result.feed.link, result.feed.title);
  }

  for (var i = 0; i < result.feed.entries.length; i++) {
    var entry = result.feed.entries[i];
    var div = this.createDiv_(blog, "blogEntry");
    var linkDiv = this.createDiv_(div, "blogTitle");
    this.createLink_(linkDiv, entry.link, entry.title);
	var entryFrom = "";
    if (entry.author) {
      entryFrom = entry.author;
    }
	this.createDiv_(div, "blogAuthor", entryFrom + ", eingestellt am "+toDate(new Date(entry.publishedDate)));
    this.createDiv_(div, "blogBody" /*, entry.contentSnippet */ ).innerHTML = entry.content;
  }
}

BlogPreview.prototype.createDiv_ = function(parent, className, opt_text) {
  return this.createElement_("div", parent, className, opt_text);
}

BlogPreview.prototype.createLink_ = function(parent, href, text) {
  var link = this.createElement_("a", parent, "", text);
  link.href = href;
  return link;
}

BlogPreview.prototype.createElement_ = function(tagName, parent, className,
                                                opt_text) {
  var tag = document.createElement(tagName);
  tag.className = className;
  parent.appendChild(tag);
  if (opt_text) {
    tag.appendChild(document.createTextNode(opt_text));
  }
  return tag;
}

