var numFeeds=9;
var RSSRequestObject = new Array (false, false, false, false, false, false, false, false, false); // XMLHttpRequest Object
/*
var Backend = new Array ('http://' . $HTTP_HOST . '/rss/feeds/twistmail.php',
						 'http://' . $HTTP_HOST . '/rss/feeds/deco.php',
						 'http://' . $HTTP_HOST . '/rss/feeds/classified.php',
						 'http://' . $HTTP_HOST . '/rss/feeds/calendar.php',
						 'http://' . $HTTP_HOST . '/rss/feeds/photospriv.php',
						 'http://' . $HTTP_HOST . '/rss/feeds/column.php',
						 'http://' . $HTTP_HOST . '/rss/feeds/hotnews.php');
*/
var Backend = new Array ('http://www.balloonhq.net/rss/feeds/twistmail.php',
						 'http://www.balloonhq.net/rss/feeds/deco.php',
						 'http://www.balloonhq.net/rss/feeds/classified.php',
						 'http://www.balloonhq.net/rss/feeds/calendar.php',
						 'http://www.balloonhq.net/rss/feeds/photospriv.php',
						 'http://www.balloonhq.net/rss/feeds/column.php',
						 'http://www.balloonhq.net/rss/feeds/hotnews.php',
						 'http://www.balloonhq.net/rss/feeds/videopriv.php',
						 'http://www.balloonhq.net/rss/feeds/recipespriv.php');
//window.setInterval("update_timer(0)", 1200000); // update the data every 20 mins
//window.setInterval("update_timer(1)", 1200000); // update the data every 20 mins
window.setInterval("update_timer(0)", 600000); // update the data every 10 mins
window.setInterval("update_timer(1)", 600000); // update the data every 10 mins
window.setInterval("update_timer(2)", 3600000); // update the data every 60 mins
window.setInterval("update_timer(3)", 7200000); // update the data every 120 mins
window.setInterval("update_timer(4)", 600000); // update the data every 10 mins
window.setInterval("update_timer(5)", 86400000); // update the data every day
window.setInterval("update_timer(6)", 120003); // update the data every 60 mins
window.setInterval("update_timer(7)", 600000); // update the data every 60 mins
window.setInterval("update_timer(8)", 600000); // update the data every 60 mins

for(var i = 0; i<numFeeds; i++) {
	if (window.XMLHttpRequest) // try to create XMLHttpRequest
		RSSRequestObject[i] = new XMLHttpRequest();

	if (window.ActiveXObject)	// if ActiveXObject use the Microsoft.XMLHTTP
		RSSRequestObject[i] = new ActiveXObject("Microsoft.XMLHTTP");
}

/*
* onreadystatechange function
*/
function ReqChange(loop) {
//	var i =0;

//  for(var loop=0; loop< numFeeds; loop++) {
	// If data received correctly
	if (RSSRequestObject[loop].readyState==4) {
	
		// if data is valid
		if (RSSRequestObject[loop].responseText.indexOf('invalid') == -1) 
		{ 	
			// Parsing RSS
			var node = RSSRequestObject[loop].responseXML.documentElement; 
			
			
			// Get Channel information
			var channel = node.getElementsByTagName('channel').item(0);
			var title = channel.getElementsByTagName('title').item(0).firstChild.data;
			var link = channel.getElementsByTagName('link').item(0).firstChild.data;
			
			if(loop == 4 || loop == 7 || loop == 8) {
				content = '<div class="channeltitle"><a href="'+link+'">'+title+'</a></div>';
			} else if(loop==6){
				numTickerItems = 0;
				// content isn't used.
			} else {
				content = '<div class="channeltitle"><a href="'+link+'">'+title+'</a></div><ul>';
			}

			// Browse items
			var items = channel.getElementsByTagName('item');
			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 itemPubDate = '<font color=gray>['+items[n].getElementsByTagName('pubDate').item(0).firstChild.data+'] ';
				} 
				catch (e) 
				{ 
					var itemPubDate = '';
				}
			
				if(loop == 4 || loop == 7 || loop == 8) {
//					itemTitle = itemTitle.replace(/&quot;/, '');
//					var itemImgNo = itemTitle.replace(/.*=/, '');
					var itemImg = items[n].getElementsByTagName('Img').item(0).firstChild.data;
					var itemImgBig = items[n].getElementsByTagName('ImgBig').item(0).firstChild.data;

					if(loop == 4) {
					  content += '<a href="'+itemLink+
						'" onmouseover=\'document.largepic.src="'+itemImgBig+
						'"; document.getElementById("caption").innerHTML="'+itemTitle+'"\'><img src="'+itemImg+'" border=0></a> ';
					} else if (loop == 7){
					  content += '<a href="'+itemLink+
						'" target="bhqvid" onmouseover=\'document.getElementById("vidcaption").innerHTML="'+itemTitle+'"\'><img src="'+itemImg+'" border=0></a> ';
					} else {
					  content += '<a href="'+itemLink+
						'" target="bhqrecipe" onmouseover=\'document.getElementById("reccaption").innerHTML="'+itemTitle+'"\'><img src="'+itemImg+'" border=0></a> ';
					}
				} else if (loop==6) {
					headlineText[n] = itemTitle;
					headlineLink[n] = itemLink;
//					alert(headlineText[n]);
					numTickerItems++;
				} else {
					content += '<li class="rss">'+itemPubDate+'</font><a href="'+itemLink+'">'+itemTitle+'</a></li>';
				}
			}
			
			if(loop != 4 && loop != 6 && loop != 7 && loop != 8) 
				content += '</ul>';

			// Display the result
			switch (loop) {
				case 0:
					document.getElementById("ajaxTwister").innerHTML = content;
					break;
				case 1:
					document.getElementById("ajaxDeco").innerHTML = content;
					break;
				case 2:
					document.getElementById("ajaxClassified").innerHTML = content;
					break;
				case 3:
					document.getElementById("ajaxEvents").innerHTML = content;
					break;
				case 4:
					document.getElementById("ajaxPhoto").innerHTML = content;
					break;
				case 5:
					document.getElementById("ajaxColumn").innerHTML = content;
					break;
				case 7:
					document.getElementById("ajaxVideo").innerHTML = content;
					break;
				case 8:
					document.getElementById("ajaxRecipes").innerHTML = content;
					break;
			}
			// 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(i) {
//	var i = 0;

	// change the status to requesting data
	HideShow('status');
	document.getElementById("status").innerHTML = "Requesting data ...";
	
	// Prepare the request
	RSSRequestObject[i].open("GET", Backend[i] , true);
	// Set the onreadystatechange function
	RSSRequestObject[i].onreadystatechange = function() { ReqChange(i) };
	// Send
	RSSRequestObject[i].send(null); 
}

/*
* Timer
*/
function update_timer(i) {
	RSSRequest(i);
}


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);
}
