function feedReader(oFeed,oDivId) {
	var oXmlDom = zXmlDom.createDocument();
	oXmlDom.onreadystatechange = function () {
		if (oXmlDom.readyState == 4) {
			if (oXmlDom.parseError.errorCode == 0) {
				parseRssFeed(oXmlDom,oDivId);
			} else {
				var str = "An error occurred!!\n" +
				"Description: " + oXmlDom.parseError.reason + "\n" +
				"File: " + oXmlDom.parseError.url + "\n" +
				"Line: " + oXmlDom.parseError.line + "\n" +
				"Line Position: " + oXmlDom.parseError.linepos + "\n" +
				"Source Code: " + oXmlDom.parseError.srcText;
				alert(str);
			}
		}
	};
	oXmlDom.load(oFeed);
}
function parseRssFeed(oXmlDom,oDivId) {
	var oRoot = oXmlDom.documentElement;
	var oFragment = document.createDocumentFragment();

	var oH5 = document.createElement("h5");
	var aTitles = oRoot.getElementsByTagName("title");
	oH5.appendChild(document.createTextNode(aTitles[0].text));

	var oUL = document.createElement("ul");

	var aItems = oRoot.getElementsByTagName("item");
	for (var i = 0; i < aItems.length; i++) {
		var sItemTitle, sItemLink, sItemDescription, sItemPubDate, sItemCategory, oLI;
		var oCurrentChild = aItems[i].firstChild;

		do {
			switch (oCurrentChild.tagName) {
				case "title":
					sItemTitle = oCurrentChild.text;
    				break;

    			case "link":
    				sItemLink = oCurrentChild.text;
    				break;

    			case "description":
    				sItemDescription = oCurrentChild.text;
    				break;

    			case "pubDate":
    				sItemPubDate = oCurrentChild.text;
    				break;

    			case "jf:modificationDate":
    				sItemPubDate = oCurrentChild.text;
    				break;

    			case "category":
    				sItemCategory = oCurrentChild.text;
    				break;

				default:
					break;
			}
		} while (oCurrentChild = oCurrentChild.nextSibling);

		oLI = document.createElement("li");

		if (sItemTitle) {
			if (sItemLink) {
				var oAtag = document.createElement("a");
				oAtag.href = sItemLink;
				oAtag.appendChild(document.createTextNode(sItemTitle));
				oLI.appendChild(oAtag);
			} else {
				oLI.appendChild(document.createTextNode(sItemTitle));
			}
		}

		if (sItemPubDate) {
			var divPubDate = document.createElement("div");
			divPubDate.className = "feedItemPubDate";
			divPubDate.appendChild(document.createTextNode("[Posted: " + sItemPubDate + "]"));
			oLI.appendChild(divPubDate);
		}

		if (sItemDescription) {
			//var divDescription = document.createElement("div");
			//divDescription.className = "feedItemDescription";
			//divDescription.appendChild(document.createTextNode(sItemDescription));
			// oLI.appendChild(divDescription);
		}

		if (sItemCategory) {
			// oLI.appendChild(document.createElement("br"));
			// oLI.appendChild(document.createTextNode(sItemCategory));
		}

		oUL.appendChild(oLI);
	}

	oFeedDiv = document.getElementById(oDivId);
	oFeedDiv.innerHTML = "";
	oFeedDiv.appendChild(oH5);
	oFeedDiv.appendChild(oUL);
}

function parseRssFeed1(oXmlDom,oDivId) {
	var oRoot = oXmlDom.documentElement;
	var oFragment = document.createDocumentFragment();

	var aChannels = oRoot.getElementsByTagName("channel");

	for (var i = 0; i < aChannels.length; i++) {
    	var sFeedTitle, sFeedLink, sFeedDescription, sFeedCopyright;
    	var oCurrentChild = aChannels[i].firstChild;

    	do {
    		switch (oCurrentChild.tagName) {
    			case "title":
    				sFeedTitle = oCurrentChild.text;
    				break;

    			case "link":
    				sFeedLink = oCurrentChild.text;
    				break;

    			case "description":
    				sFeedDescription = oCurrentChild.text;
    				break;

    			case "copyright":
    				sFeedCopyright = oCurrentChild.text;
    				break;

				default:
					break;
    		}
    	} while (oCurrentChild = oCurrentChild.nextSibling);
	}

	var feedTitle = document.createElement("h4");
	feedTitle.appendChild(document.createTextNode(sFeedTitle));
	oFragment.appendChild(feedTitle);

	var aItems = oRoot.getElementsByTagName("item");
	for (var i = 0; i < aItems.length; i++) {
		var sItemTitle, sItemLink, sItemDescription, sItemPubDate, sItemCategory;
		var oCurrentChild = aItems[i].firstChild;

		do {
			switch (oCurrentChild.tagName) {
				case "title":
					sItemTitle = oCurrentChild.text;
    				break;

    			case "link":
    				sItemLink = oCurrentChild.text;
    				break;

    			case "description":
    				sItemDescription = oCurrentChild.text;
    				break;

    			case "pubDate":
    				sItemPubDate = oCurrentChild.text;
    				break;

    			case "jf:modificationDate":
    				sItemPubDate = oCurrentChild.text;
    				break;

    			case "category":
    				sItemCategory = oCurrentChild.text;
    				break;

				default:
					break;
			}
		} while (oCurrentChild = oCurrentChild.nextSibling);

		var divContainer = document.createElement("div");
		var divContent = document.createElement("div");

		var sOdd = (i % 2)?"":"-odd";
		divContainer.className = "itemContainer" + sOdd;

		if (sItemTitle) {
			var divItemTitle = document.createElement("div");
			divItemTitle.className = "feedItemTitle";

			if (sItemLink) {
				var oAtag = document.createElement("a");
				oAtag.href = sItemLink;
				oAtag.appendChild(document.createTextNode(sItemTitle));
				divItemTitle.appendChild(oAtag);
			} else {
				divItemTitle.appendChild(document.createTextNode(sItemTitle));
			}

			divContent.appendChild(divItemTitle);
		}

		if (sItemPubDate) {
			var divPubDate = document.createElement("div");
			divPubDate.className = "feedItemPubDate";
			divPubDate.appendChild(document.createTextNode("[Posted: " + sItemPubDate + "]"));
			divContent.appendChild(divPubDate);
		}

		if (sItemDescription) {
			var divDescription = document.createElement("div");
			divDescription.className = "feedItemDescription";
			divDescription.appendChild(document.createTextNode(sItemDescription));
			//divContent.appendChild(divDescription);
		}
/*
		if (sItemCategory) {
			divContent.appendChild(document.createElement("br"));
			divContent.appendChild(document.createTextNode(sItemCategory));
		}
*/
		divContent.className = "itemContent";
		divContainer.appendChild(divContent);
		oFragment.appendChild(divContainer);
	}

	oFeedDiv = document.getElementById(oDivId);
	oFeedDiv.innerHTML = "";
	oFeedDiv.appendChild(oFragment);

	return;
}


