/*	
RSS Feed Reader v1.0
Copyright (c) 2009 Wijix, LLC
Written by Brad Merrell
email: webmaster@wijix.com
*/
function getNode(TagName, node)
{
	var currentNode = (node == null) ? xmlDoc.getElementsByTagName(TagName) : 
					items[node].getElementsByTagName(TagName);
	if(currentNode.length > 0)
		return currentNode[0].firstChild.nodeValue;
}

function ReadRSS(rssFeed, htmlFormat, divName, itemCount) 
{
    divContent = document.getElementById(divName);	
	
	try
	{
		if (document.all)
		{
			var errorHappendHere = "Check Browser and security settings";
			xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
		}
		else
		{
			var errorHappendHere = "Apparently one cant read remote xml via firefox, please copy the file to your server";
			xmlDoc = document.implementation.createDocument("","",null);
		}
	
		xmlDoc.async=false;
		xmlDoc.load(rssFeed);
	
		items=xmlDoc.getElementsByTagName('item');
		SetRSSTemplates(divContent, htmlFormat, itemCount);
	}
	
	catch(e)
	{
	    divContent.innerHTML = 'Error occured. <br/>Thrown Error:' + e.message + "<br/>Note: " + errorHappendHere;
	}
}

function SetRSSTemplates(divContent, htmlFormat, itemCount)
{
    var itemCnt = itemCount;
    if (items.length < itemCnt)
    {
        itemCnt = items.length;
    }

	var buffer = "";
	for(var i=0; i< itemCnt; i++) 
	{
	    var output = htmlFormat;
	    output = output.replace('[[LINK]]',getNode('link',i));
	    output = output.replace('[[TITLE]]', getNode('title', i));
	    var dateInputString = getNode('pubDate', i);
	    dateInputString = dateInputString.substr(0, 25);	    
	    output = output.replace('[[PUBDATE]]', formatDate(new Date(getDateFromFormat(dateInputString, "E, dd NNN yyyy kk:mm:ss")), "MM.dd"));	
		output = output.replace('[[DESCRIPTION]]', getNode('description', i));
		output = (getNode('author', i) == null) ? output.replace('[[AUTHOR]]', '') : 
		            output.replace('[[AUTHOR]]', getNode('author', i));
		buffer += output;
	}
	divContent.innerHTML = buffer;
	
}

