//XML CODE

var http_request = false;
var dataFileName = "data.xml";
var fadeInValue = 0;
var fadeOutValue = 100;
var layerIndex = 1;
var previousLayerIndex;
var transitionSpeed = 5;
var transitionRate = 5;
var dataIndex = 0;



function getData() {
	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,true);
	http_request.onreadystatechange = function() {
	if (http_request.overrideMimeType) {
		http_request.overrideMimeType('text/xml');
	}
		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);
}

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.headline;
	this.link;
	this.text1;
	this.text2;
	var properties = new Array("headline", "text1", "text2", "link");
	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");
		}
	}
}

var fieldArray = new Array("headline","text1","text2");

function showText(i) {
	document.getElementById("headline"+layerIndex).innerHTML = RSS.items[i].headline;
	document.getElementById("text1"+layerIndex).innerHTML = RSS.items[i].text1;
	document.getElementById("text2"+layerIndex).innerHTML = RSS.items[i].text2;
	fadeInTimer = setInterval("fadeIn(layerIndex);",transitionSpeed);

	if (previousLayerIndex) {
		fadeOutTimer = setInterval("fadeOut(previousLayerIndex)",transitionSpeed);
	}
	
	document.getElementById('homeStoryLink').innerHTML = "<a href=\"" + RSS.items[i].link + "\">Read More<span class=\"carotLink\">&#187;</span></a>";
	
	resetvariables = setTimeout("resetIndex()",800);
}

function fadeOut(i) {
	fadeOutValue = fadeOutValue - transitionRate;
	for (c=0;c<fieldArray.length;c++) {
		fadeObj = document.getElementById(fieldArray[c] + i).style;
		setOpacity(fadeObj,fadeOutValue);
	}
	if (fadeOutValue <= 0) {
		clearTimeout(fadeOutTimer);
		fadeOutValue = 100;
	}
}

function fadeIn(i) {
	fadeInValue = fadeInValue + transitionRate;
	for (c=0;c<fieldArray.length;c++) {
		fadeObj = document.getElementById(fieldArray[c] + i).style;
		setOpacity(fadeObj,fadeInValue);
	}
	if (fadeInValue >= 100) {
		clearTimeout(fadeInTimer);
		fadeInValue = 0;
	}
}

function setOpacity(fadeObj,op) {
	fadeObj.MozOpacity = op/100;
	fadeObj.opacity = op/100;
	fadeObj.filter = 'alpha(opacity=' + op + ')';
}

function resetIndex() {
	previousLayerIndex = layerIndex;
	layerIndex = (layerIndex == 1)? 2:1;
}


