//XML CODE

var http_request = false;
var dataFileName = new Array();
dataFileName[1] = "http://www.defense.gov/home/features/widgets/afps_news1/afpstest.xml";
dataFileName[2] = "http://www.defense.gov/news/afps2.xml";
dataFileName[3] = "afpstest.xml";




function getData(dataFileIndex) {
	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", "link", "description", "pubDate", "guid");
    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 = "";
    for (var i=0; i<RSS.items.length; i++) {
		dataString += "<div class='itemBlock'>";
		newDate = new Date(RSS.items[i].pubDate);
		dateString = (newDate.getMonth()+1) + "/" + newDate.getDate() + "/" + newDate.getFullYear();
		dataString += "<div class='itemDate'>" + dateString + "</div>";
		dataString += "<div class='itemTitle'><a href='" + RSS.items[i].link + "' target='afps_news'>" + RSS.items[i].title + "</a></div>";
		//dataString += "<div class='itemDescription'>" + RSS.items[i].description + "</div>";
		dataString += "</div>";
    }
	document.getElementById('outputBlock').innerHTML = dataString;
}





//SCROLL BAR CODE

var ie=document.all;
var nn6=document.getElementById&&!document.all;

var isdrag=false;
var x,y;
var dobj;
var scrollPercent;
var boxTop;
var maxHeight;
var toppoint;

function movemouse(e) {
	if (isdrag) {
		//dobj.style.left = nn6 ? tx + e.clientX - x : tx + event.clientX - x;

		toppoint = (nn6) ? ty + e.clientY - y : ty + event.clientY - y;
		boxTop = parseInt(document.getElementById('scrollBarBox').style.top) - scrollBarBoxOffset;
		if (toppoint < boxTop) toppoint = boxTop;

		boxHeight = parseInt(document.getElementById('scrollBarBox').style.height);
		maxHeight = boxTop + boxHeight - parseInt(document.getElementById('scrollBar').style.height);
		if (toppoint > maxHeight) toppoint = maxHeight;

		dobj.style.top = toppoint + "px";
		
		scrollPercent = toppoint / maxHeight;
		document.getElementById('textWindow').style.top = parseInt(0 - (document.getElementById('textWindow').offsetHeight - parseInt(document.getElementById('scrollBarBox').style.height)) * scrollPercent );

		return false;
	}
}

function selectmouse(e) {
	var fobj = nn6 ? e.target : event.srcElement;
	var topelement = nn6 ? "HTML" : "BODY";
	while (fobj.tagName != topelement && fobj.className != "dragme") {
		fobj = nn6 ? fobj.parentNode : fobj.parentElement;
	}
	
	if (fobj.className == "dragme") {
		isdrag = true;
		dobj = fobj;
		//tx = parseInt(dobj.style.left + 0);
		ty = parseInt(dobj.style.top + 0);
		//x = nn6 ? e.clientX : event.clientX;
		y = nn6 ? e.clientY : event.clientY;
		document.onmousemove = movemouse;
		return false;
	}
}

document.onmousedown = selectmouse;
document.onmouseup = new Function("isdrag=false;");


