
// initial function called when dom is ready
function initRSSFeedDisplay ( )
{
	var newshourfeed = "/newshour/rss/rss_vote2008.xml";
	var rssdisplay = new RSSReaderDisplay ( newshourfeed );
	rssdisplay.loadFeed();
}

// parsing xml feed and display results
var RSSReaderDisplay = new Class(
{
	initialize: function( rssURL )
	{
		feed = rssURL;	
	},
	
	parseFeed: function( tree , target )
	{
		var totalItems = 2;
		var count = 0;
		var feedItemHTML = "<ul>";
		var curFeedItem;
		
		for( count; count < totalItems; count++ )
		{
			curFeedItem = tree.rss[ 0 ].channel[ 0 ].item[ count ];
			/*
			var rsslink = tree.rss.channel.item[ count ].link;
			var desc = tree.rss.channel.item[ count ].title;
			var pdate = tree.rss.channel.item[ count ].pubDate;
			*/
			//Sat, 26 Jan 2008 22:17:00 EST
			//convert time string into array split on white space
			var fdate = curFeedItem.pubDate[ 0 ]._text.split( ' ' );
			var tconvert = fdate[ 4 ]; // 22:17
			var mins = tconvert.substr( tconvert.indexOf( ":" ), 3 );
			//console.log( "mins " + mins );
			var hour = parseInt( tconvert.substring( 0, tconvert.indexOf( ":" ) ) );
			//console.log( "hour " + hour );
			if( hour > 12 )
			{
				// pm time
				mins += " PM";
				hour -= 12;
			}
			else
			{
				mins += " AM;"
			}
			
			var timedisplay = fdate[ 2 ] + " " + fdate[ 1 ] + " " + hour + mins;
			// write out html 
			feedItemHTML += '<li>';
			feedItemHTML += '<a href="' + curFeedItem.link[ 0 ]._text + '" target="_blank">' + curFeedItem.title[ 0 ]._text + '</a>';
			feedItemHTML += '<div class="post_age">' + timedisplay + '</div>';
			feedItemHTML += '</li>';
		}
		
		// close list
		feedItemHTML += "</ul>";
		
		// Update html
		$( 'rss_list' ).setHTML( feedItemHTML );
		
	},
	
	onFeedLoaded: function ( pStrXML , pObjXML , pEvtObj ) 
	{
		if (document.implementation.createDocument) { // mozilla
			var parser = new DOMParser();
			doc = parser.parseFromString(pStrXML, 'text/xml');
		} else if (window.ActiveXObject) { // ie
			doc = new ActiveXObject('Microsoft.XMLDOM');
			doc.async = 'false';
			doc.loadXML( pStrXML );
		}
		var object = parseXML( doc );
		pEvtObj.target.parseFeed( object , pEvtObj.target );
	},
	
	loadFeed: function()
	{
		var ajaxXML = new Ajax( feed , { method:'get' } ).request();
		ajaxXML.eventObj = { target:this };
		ajaxXML.addEvent( 'onComplete' , function ( pStrXML , pObjXML ) { this.eventObj.target.onFeedLoaded( pStrXML , pObjXML , this.eventObj ) } );
	}
} );

window.addEvent( 'domready', initRSSFeedDisplay );