//multiple feeds script -standard all in ONE holder, XML


var collectedPosts = [];
var rnd = Math.floor(Math.random()*1001);

function returnErrorXML(theID){
	if(document.getElementById(theID).innerHTML=="<li>loading...</li>"){
		document.getElementById(theID).innerHTML="The feed servers are temporarily unavailable. Please try again later.";
		}
	}
//////////////////// FEEDS //////////////////////////



function collectFeeds(whichFeed, whichArray, _howLong){
var feed = new google.feeds.Feed(whichFeed);
feed.setResultFormat(google.feeds.Feed.XML_FORMAT);
//feed.includeHistoricalEntries();
//console.log(whichFeed);
if (_howLong){
	var theAmount = _howLong;
	
}else{
	var theAmount = 8;
	}
	
	feed.setNumEntries(theAmount);
	
var entryHolder = new Array(theAmount);
	//prep 2-Dim-array;
  for (c=0; c < entryHolder.length; c++){
  	entryHolder[c] = new Array(5);
  }
	
feed.load(function(result) {
				   
  var container = document.getElementById("feed");
  if (!result.error) {
    var items = result.xmlDocument.getElementsByTagName("item");
    for (var i = 0; i < items.length; i++) {
      var titleElement = items[i].getElementsByTagName("title")[0];
      var title = titleElement.firstChild.nodeValue;
	   
	  var linkElement = items[i].getElementsByTagName("link")[0];
      var linkRef = linkElement.firstChild.nodeValue;
	  
  	  var dateElement = items[i].getElementsByTagName("pubDate")[0];
      var tempPubDate = dateElement.firstChild.nodeValue;
		
		//fix length
		
      if(tempPubDate.length>16){
		  var tempPubDate2 = tempPubDate.substr(0, 14);
		  var year = tempPubDate2.substr(12, 14); 
		  //console.log(year);
		  
		  
		 // console.log(year.charAt(1));
		  
		  if(year.charAt(1) == " "){
			  //console.log("sdfsd");
			  year = "0" + year;
			  //year = year.substr(0, 2);
			  //console.log("new:"+year);
			  }
		
		 // console.log("length "+year.length+":"+year+"-");
		  
		  
		  //add a 0 in case date < 10:
		 // console.log(parseInt(tempPubDate2.charAt(6)));
		  if(isNaN(parseInt(tempPubDate2.charAt(6)))){
				var  tempChar = tempPubDate2.charAt(5);
				var tempPubDate2 =  tempPubDate2.substr(0, 4) + " 0" + tempChar + " " + tempPubDate2.substr(7, 9);
				tempPubDate2 = tempPubDate2.substr(0, 12) + "20"+year;
			 }else
				 {
				tempPubDate2 = tempPubDate2.substr(0, 12) + "20"+year;
				 }
			  
			 // console.log(parseInt(tempPubDate2.charAt(6)));
			 //console.log(tempPubDate2);
			 
		   var pubDate = Date.parse(tempPubDate2);
		   //console.log("tempPubDate2: "+tempPubDate2+"---"+pubDate);
		  }
		else{
			 var pubDate = Date.parse(tempPubDate);
			// console.log("tempPubDate: "+tempPubDate+"---"+pubDate);
			}
	
	if(trimDate){
			if(tempPubDate.length>15){
				tempPubDate = tempPubDate.substr(0, 16);
				}
		}
		
      var contentList=[pubDate, title, linkRef, tempPubDate];
	 
	 //console.log(title);
	  
	  collectedPosts.push(contentList);

    }
  }
});
}



var mymultiFeedInterval = window.setInterval(function (a,b) {
											  
  if (collectedPosts.length >=(maxNum)-1){
	  
	  collectedPosts.sort();
	  collectedPosts.reverse();
	 // collectedPosts.reverse();
	// console.log(collectedPosts);
	  var html ='';
	 
	 if(!showPubDate)
	 {
		for(i=0; i<displayLimit; i++){
			html+='<li><a href="'+collectedPosts[i][2]+'">' + collectedPosts[i][1] +'</a></li>';
	 	}
	 }
	 else{
		 for(i=0; i<displayLimit; i++){
			html+='<li><a href="'+collectedPosts[i][2]+'">' + collectedPosts[i][1] +'</a><p class="date">'+collectedPosts[i][3]+'</p></li>';
	 		}
	 }
		
		if(document.getElementById("feedHolder")){
		document.getElementById("feedHolder").innerHTML = html;
		}
		
	delete collectedPosts;
	
	clearInterval(mymultiFeedInterval);
  }
  
},1000);


//collect the feeds 
for (i in feedList){
	 collectFeeds(feedList[i]+"?rnd="+rnd, collectedPosts, maxNum);
	}
