/*
Use:
      google.load("feeds", "1");

      var format = "<a href='$link' alt='$title'>$title ($content)</a><br/>";
      var feed_url = "http://blog.syntext.com/feed/";
      var target_element = document.getElementById("feed");
      var n = new NewsReader(feed_url, format, target_element, 0);

 */

function replace_all(source, target, new_target)
{
    var temp = source;
    var index = temp.indexOf(target);
    
    while (index != -1){
	temp = temp.replace(target, new_target);
	index = temp.indexOf(target);
    }

    return temp;
}

function NewsReader(url, newsFormat, elementToInsert, maxCount)
{
    this.__newsObtained = function(result) {
	if (result.error) {
	    alert("RSS feed obtaining error");
	    return 0;
	}

	formattedNews = "";

	count = (0 == maxCount) ? result.feed.entries.length : maxCount;
	for(var index = 0; index < count; index++) {
	    var entry = result.feed.entries[index];

	    var p_date = Date.parse(entry.publishedDate);

	    var news = newsFormat;
	    news = replace_all(news, "$title", entry.title);
	    news = replace_all(news, "$content", entry.content);
	    news = replace_all(news, "$link", entry.link);
	    news = replace_all(news, "$date", p_date.toString('MMMM d, yyyy'));

	    formattedNews += news;
	}

	elementToInsert.innerHTML = formattedNews + elementToInsert.innerHTML;
    }

    var feed = new google.feeds.Feed(url);
    feed.load(this.__newsObtained);
}
