//XML CODE

var http_request = false;
var resultLimit;
var resultTarget;
var dataFileName = new Array();
//dataFileName[1] = "http://www.defense.gov/news/rss_releases2.xml";
dataFileName[2] = "http://www.acq.osd.mil/cgi-bin/defensegov_rss.pl";



function getData(dataFileIndex,limit,targetElement) {
	resultLimit = limit;
	resultTarget = targetElement;
	if (window.ActiveXObject) { //IE
		http_request = new ActiveXObject("Microsoft.XMLHTTP");
	} else if (window.XMLHttpRequest) { //other
		http_request = new XMLHttpRequest();
	} else {
		alert("your browser does not support AJAX");
	}
	http_request.open("GET",dataFileName[dataFileIndex],true);
	http_request.setRequestHeader("Cache-Control", "no-cache");
 	http_request.setRequestHeader("Pragma", "no-cache");
	http_request.onreadystatechange = function() {
		if (http_request.readyState == 4) {
			if (http_request.status == 200) {
				if (http_request.responseText != null) {
					processRSS(http_request.responseXML);
				} else {
					alert("Failed to receive RSS file from the server - file not found.");
					return false;
				}
			} 
		}
	}
	http_request.send(null);
}

function processRSS(rssxml) {
	RSS = new RSS2Channel(rssxml);
	outputData(RSS);
}

function RSS2Channel(rssxml) {
	this.items = new Array();
	var itemElements = rssxml.getElementsByTagName("item");
	
	for (var i=0; i<itemElements.length; i++) {
		Item = new RSS2Item(itemElements[i]);
		this.items.push(Item);
	}
}

function RSS2Item(itemxml) {
    this.title;
    this.link;
    this.description;
    this.pubDate;
    this.guid;

    var properties = new Array("title", "description", "link","guid", "pubDate");
    var tmpElement = null;
    for (var i=0; i<properties.length; i++) {
        tmpElement = itemxml.getElementsByTagName(properties[i])[0];
        if (tmpElement != null) {
            eval("this."+properties[i]+"=tmpElement.childNodes[0].nodeValue");
		}
    }
}

function outputData(RSS) {
	dataString = "";

var m_names = new Array("January", "February", "March", 
"April", "May", "June", "July", "August", "September", 
"October", "November", "December");


	resultLength = (resultLimit > RSS.items.length)? RSS.items.length : resultLimit;
    for (var i=0; i<resultLength; i++) {
		dataString += "<div class='itemBlock'>";
		newDate = new Date(RSS.items[i].pubDate);
		dateString = (m_names[newDate.getMonth()]) + " " + newDate.getDate() + " " + newDate.getFullYear();
		dataString += "<h5><a href='" + RSS.items[i].link + "' target='_blank'>" + RSS.items[i].title + "</a></h5>";
		dataString += "<div class='itemDate'> <a href='" + RSS.items[i].link + "' target='_blank'>" + dateString + "</a></div>";	
		dataString += "<p>" + RSS.items[i].description + "</p>";
		dataString += "</div>";
    }
	document.getElementById(resultTarget).innerHTML = dataString;
}


