// Feed-Display Skript basierend auf der Google-Feed API 
// http://code.google.com/apis/ajaxfeeds/
// zusammengetragen und gebastelt von Christian Muecke
// http://wwww.coldheat.de

google.load("feeds", "1") // Google Ajax Feed API (V1)

function rssdisplayer(divid, url, feedlimit, showoptions){
	// Display-Optionen auswerten
	this.showoptions=showoptions || ""
	// Google AJAX Feed API rufen
	var feedpointer=new google.feeds.Feed(url) 
	//Anzahl darzustellender Eintraege
	feedpointer.setNumEntries(feedlimit) 
	document.write('<div id="'+divid+'">Feeds werden geladen...</div>')
	this.feedcontainer=document.getElementById(divid)
	var displayer=this
	feedpointer.load(function(r){displayer.formatoutput(r)})
	}

// Formatierung fuer Datumsausgabe eines einzelnen Items
rssdisplayer.prototype.formatdate=function(datestr){
	var itemdate=new Date(datestr)
	return "<span class='date'>"+itemdate.toLocaleString()+"</span>"
	}

rssdisplayer.prototype.formatoutput=function(result){
	// Feed erfolgreich ausgelesen
	if (!result.error){ 
	// Feed-Titel holen in li-Tags packen und Klasse zuweisen
	var feedtitle="<li class='blogtitle'>"+ result.feed.title + "</li>" 
	// Feed-Beschreibung holen in li-Tags packen und Klasse zuweisen
	var feeddescription="<li class='tagline'>" + result.feed.description + "</li>" 
	// Daten als thefeeds-Variable speichern
	var thefeeds=result.feed.entries 
	// Feed-Titel ausgeben
//	var rssoutput="<ul>" + feedtitle + feeddescription
  var rssoutput="<h1>" + feeddescription + "</h1><table width='80%' border='0' cellpadding='5' cellspacing='5'>"
	// fuer alle Feeds
	 for (var i=0; i<thefeeds.length; i++){ 
	// HTML fuer Titel schreiben
	var itemtitle="<h2>" + thefeeds[i].title + "</h2>"
	// HTML fuer Link schreiben
	var itemlink="<a href='" + thefeeds[i].link + "' title='" + thefeeds[i].title + "' target='blank'>Artikel lesen</a>"
	
  // HTML fuer Datum schreiben
	var itemdate=/date/i.test(this.showoptions)? this.formatdate(thefeeds[i].publishedDate) : ""
	// HTML fuer Content schreiben alles zusammenfuegen und als rssoutput speichern
	var itemdescription=/description/i.test(this.showoptions)? ""+thefeeds[i].content : /snippet/i.test(this.showoptions)? ""+thefeeds[i].contentSnippet  : ""
	rssoutput+=
	// hier geschieht die Magie, wer mehr als die einfache Ueberschrift haben moechte, fuegt hier zusaetzlich itemdate oder itemdescription als Variablen ein
	 "<tr><td>" + itemtitle + "<center>" + itemlink + "</center><br><font size='-1'>" + itemdate + "</font><br><font size='-1'>" + itemdescription + "</font><hr width='95%' align='left'></td><tr>"
	}
	rssoutput+="</table>"
	this.feedcontainer.innerHTML=rssoutput
	}
	else // Fehler beim Laden
	alert("Fehler beim Laden: "+result.error.message)
	}


//SYNTAX: new rssdisplayer("id", "URL", Anzahl, "Optionen")
//new rssdisplayer("div-id", "http://coldheat.de/feed", 10, "title")
