//from http://ajax.phpmagazine.net/2005/11/ajax_rss_reader_step_by_step_t.html

var RSSRequestObject = false; // XMLHttpRequest Object
window.setInterval("update_timer()", 1200000); // update the data every 20 mins


if (window.XMLHttpRequest) // try to create XMLHttpRequest
	RSSRequestObject = new XMLHttpRequest();

if (window.ActiveXObject)	// if ActiveXObject use the Microsoft.XMLHTTP
	RSSRequestObject = new ActiveXObject("Microsoft.XMLHTTP");



/*
* onreadystatechange function
*/
function ReqChange() {

	// If data received correctly
	if (RSSRequestObject.readyState==4) {
	
		// if data is valid
		if (RSSRequestObject.responseText.indexOf('invalid') == -1) 
		{ 	
			// Parsing RSS
			var node = RSSRequestObject.responseXML.documentElement; 
			
			
			// Get Channel information
			var channel = node.getElementsByTagName('channel').item(0);
			var title = channel.getElementsByTagName('title').item(0).firstChild.data;
			//NOTE: Firefox2, Chrome, and Safari have problems with the link div here.
			//var link = channel.getElementsByTagName('link').item(0).firstChild.data;
			
			//mycontent = '<div class=channeltitle><a href="';
			//mycontent += link + '">';
			//mycontent += title + '</a></div><ul>';
			mycontent = '<div class=channeltitle>'+title+'</div><ul>';
			//mycontent = '<ul>';
		
			// Browse items
			var items = channel.getElementsByTagName('item');
                        //if (items.length<maxnum) {maxnum=items.length};
                        //for (var n=0; n < maxnum; n++)
			for (var n=0; n < items.length; n++)
			{
				var itemTitle = items[n].getElementsByTagName('title').item(0).firstChild.data;
				var itemLink = items[n].getElementsByTagName('link').item(0).firstChild.data;
				try 
				{ 
					var itemDescription = items[n].getElementsByTagName('description').item(0).firstChild.data;
                                        var pubDate= items[n].getElementsByTagName('pubDate').item(0).firstChild.data;
                                        var mydate = pubDate.match(/(\w+), (\d+ \w+) \d+ \S+/)[2];
                                        var itemPubDate = '<font color=gray>['+mydate+'] </font>';

//					var itemPubDate = '<font color=gray>['+items[n].getElementsByTagName('pubDate').item(0).firstChild.data+'] ';
				} 
				catch (e) 
				{ 
					var itemPubDate = '';
				}
				
			
//				mycontent += '<li>'+itemPubDate+'</font><a href="'+itemLink+'">'+itemTitle+'</a></li>';
				mycontent += '<li><a href="'+itemLink+'">'+itemTitle+'</a> '+itemPubDate+'<span class="description">'+itemDescription+'</span></li>';
			}
			
			
			mycontent += '</ul>';
			// Display the result
			document.getElementById("ajaxreader").innerHTML = mycontent;

			// Tell the reader the everything is done
			document.getElementById("status").innerHTML = "Done.";
			
		}
		else {
			// Tell the reader that there was error requesting data
			document.getElementById("status").innerHTML = "<div class=error>Error requesting data.<div>";
		}
		
		HideShow('status');
	}
	
}

/*
* Main AJAX RSS reader request
*/
function RSSRequest(Backend,maxnum) {

	// change the status to requesting data
	HideShow('status');
	document.getElementById("status").innerHTML = "Requesting data ...";
	
	// Prepare the request
	RSSRequestObject.open("GET", Backend+'?dummy='+new Date().getTime() , true);
	// Set the onreadystatechange function
	RSSRequestObject.onreadystatechange = ReqChange;
	// Send
	RSSRequestObject.send(null); 
}

/*
* Timer
*/
function update_timer() {
	RSSRequest();
}


function HideShow(id){
	var el = GetObject(id);
	if(el.style.display=="none")
	el.style.display='';
	else
	el.style.display='none';
}

function GetObject(id){
	var el = document.getElementById(id);
	return(el);
}


