///////////////////////////////////////////////////
// script by Daniel Lemire with some bits from   //
// all over the web                              //
// http://www.daniel-lemire.com/                 // 
///////////////////////////////////////////////////
 
var items_found = 0; 

function shorttext (inputtext) {
	var outputshort = inputtext.substr(0, 60);
	if (inputtext.length > 60) {
		outputshort	+= "...";
	}
	return outputshort;
}

function displayRSS(URI, anzahl, category) {
	var xmlhttp=false;
	var mydiv = document.getElementById("rss");
	
	h2=document.createElement("h2");
	/*h2.appendChild(document.createTextNode(xmlDoc.getElementsByTagName('title')[0].firstChild.nodeValue));*/
	h2.appendChild(document.createTextNode(""));
	mydiv.appendChild(h2);
	ul = document.createElement("ul");
	ul.id = 'scrollbox';
	mydiv.appendChild(ul);
	litag = document.createElement("li");
	litag.id = 'load';
	litext = document.createTextNode('Lade Daten...');
	litag.appendChild(litext);
	ul.appendChild(litag);
	h2link =document.createElement("a");
	h2link.setAttribute("href","http://www.scouty.de/"+category);
	h2link.setAttribute("title","Zur Kategorie "+document.getElementsByTagName('title')[0].text+" auf scouty.de");
	h2link.setAttribute("target","_blank");
	h2link.appendChild(document.createTextNode(string));
	h2.appendChild(h2link);
	refresh = document.createElement('a');
	onclick = document.createAttribute('onClick');
	onclick.nodeValue = "location.reload()";
	refresh.setAttributeNode(onclick);
	refresh.appendChild(document.createTextNode('Aktualisieren'));
	datemsgs = document.createElement("div");
	datemsgs.id = 'date';
	datemsgs.appendChild(refresh);
	mydiv.appendChild(datemsgs);
	
	/*@cc_on @*/
	/*@if (@_jscript_version >= 5)
	// JScript gives us Conditional compilation, we can cope with old IE versions.
	// and security blocked creation of the objects.
	 try {
	  xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
	  try {
	   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	  } catch (E) {
	   xmlhttp = false;
	  }
	 }
	@end @*/
	if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
	  xmlhttp = new XMLHttpRequest();
	}
	xmlhttp.open("GET", URI,true);
	xmlhttp.onreadystatechange=function() {
	if (xmlhttp.readyState==4) {
	  xmlDoc=xmlhttp.responseXML;
	  items=xmlDoc;
		if (items && items.getElementsByTagName('item').length > 0) {
				formatRSS(anzahl);
		} else {
				litag.firstChild.nodeValue = 'Keine News gefunden :-(';
		}
	  }
	 }
	 xmlhttp.send(null);
}

function formatRSS(anzahl) {
	litag.removeChild(litext);
	var items_count=items.getElementsByTagName('item').length;
	if (anzahl<items_count) items_count = anzahl;
	items_found = items_count;	
	var link=new Array();
	var title=new Array();
	var date=new Array();
	//var description=new Array();
	for(var i=0; i<items_count; i++) {
		if(items.getElementsByTagName('item')[i].getElementsByTagName('link').length==1)
			link[i]=items.getElementsByTagName('item')[i].getElementsByTagName('link')[0];
		if(items.getElementsByTagName('item')[i].getElementsByTagName('title').length==1)
			title[i]=items.getElementsByTagName('item')[i].getElementsByTagName('title')[0];
		if(items.getElementsByTagName('item')[i].getElementsByTagName('pubDate').length==1)
			date[i]=items.getElementsByTagName('item')[i].getElementsByTagName('pubDate')[0];
		/*if(items.getElementsByTagName('item')[i].getElementsByTagName('description').length==1)
			description[i]=items.getElementsByTagName('item')[i].getElementsByTagName('description')[0];*/
	}
	if(title.length==0) return false;

	var ws=/\S/;

	for(var i=0; i<items_count; i++) {
		var title_w, link_w;
		title_w=(title.length>0)?title[i].firstChild.nodeValue:"<i>Untitled</i>";
		link_w=(link.length>0)?link[i].firstChild.nodeValue:"";
		date_w=(date.length>0)?date[i].firstChild.nodeValue:"";
		//description_w=(description.length>0)?description[i].firstChild.nodeValue:"";
		litag = document.createElement("li");
		litag.id = 'msg'+(i+1);
		linktag =document.createElement("a");
		linktag.setAttribute("href",link_w);
		linktag.setAttribute("title",title_w);
		linktag.setAttribute("target","_blank");
		linktag.appendChild(document.createTextNode(shorttext(title_w)));
		
		litag.appendChild(linktag);
		var msgdate_unformatted = new Date(Date.parse(date_w));
		var msgdate = document.createTextNode(formatDate(msgdate_unformatted, 0));
		//var msgdate = document.createTextNode(formatDate(msgdate_unformatted, 0) );
		var dateline = document.createElement('span');
		dateline.id = 'msgdate'+(i+1);
		dateline.appendChild(msgdate);
		litag.appendChild(dateline);
		ul.appendChild(litag);
	}
	init();
}

function formatDate(thedate, format) {
	var stunden = thedate.getHours();
	if (stunden > 0)
		stunden += -1;
	stunden = (stunden < 10) ? "0" + stunden : stunden;
	var minuten = thedate.getMinutes();
	minuten = (minuten < 10) ? "0" + minuten : minuten;
	var sekunden = thedate.getSeconds();
	sekunden = (sekunden < 10) ? "0" + sekunden : sekunden;
	var tag = thedate.getDate();
	tag = (tag < 10) ? "0" + tag : tag;
	var monat = thedate.getMonth()+1;
	monat = (monat < 10) ? "0" + monat : monat;
	
	if (format ==1) {
		return thedate.getHours() + ":" + minuten + ":" + sekunden;
	} else {
		return tag + "." + monat + "." + thedate.getFullYear() + "  " + (stunden) + ":" + minuten + ":" + sekunden;
	}
}