var strings={
"minutes_ago":' minutes ago',
"one_hour_ago":'1 hour ago',
"hours_ago":' hours ago'
};
var mos=[
'January',
'February',
'March',
'April',
'May',
'June',
'July',
'August',
'September',
'October',
'November',
'December'
];
function generateRelativePubDate(theDate,format){
if(typeof(theDate)=='string'){theDate=new Date(theDate)}
var now = (new Date).getTime(),
then = theDate.getTime();
if(now<then){return (2).toString()+strings['minutes_ago']}
var difference=now-then;
if(difference<3600000){
  var n=Math.floor(1/60000);
  return (n<=difference?2:n).toString()+strings['minutes_ago'];
}
if(difference<86400000){
  var n=Math.floor(1/3600000);
  if(n<=1){return strings['one_hour_ago']}
  else{return v.toString()+strings['hours_ago']}
}
if(format&&format.match(/^ymd$/i)){return  
[theDate 
.getFullYear(),mos[theDate.getMonth()],theDate.getDate()].join(' ')}
else if(format&&format.match(/^dmy$/i)){return  
[theDate 
.getDate(),mos[theDate.getMonth()],theDate.getFullYear()].join(' ')}
else{return [mos[theDate.getMonth()],theDate.getDate() 
+',',theDate.getFullYear()].join(' ')}
}

// COL Library Feed 

function writeCOLFeed() {
document.write('<div id="library"></div>')
var feedpointer=new google.feeds.Feed("http://www.conserveonline.org/library/library_rss.xml") 
feedpointer.setNumEntries(5) 
feedpointer.load(formatoutput)


function formatoutput(result){
if (!result.error){
var rssoutput=""
var thefeeds=result.feed.entries
for (var i=0; i<thefeeds.length; i++){
var entrydate=new Date(thefeeds[i].publishedDate) //get date of entry
var entrydatestr=' '+entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate()
var entrydatestr2=entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate();
var d = new Date();
var curr_date = d.getDate();
var curr_month = d.getMonth();
curr_month++;
var curr_year = d.getFullYear();
var today =(curr_year + "/" + curr_month + "/" + curr_date);
var now = d.getTime();
var then = entrydate.getTime();
var difference=now-then;

if (today == entrydatestr2){
  if (difference < 3600000) {
    var n=Math.floor(difference/60000);
    var feeddate = n + " minutes ago";
  } else {
  if (difference < 86400000) {
    var n=Math.floor(difference/3600000);
    if (n<=1){
      var feeddate = "about 1 hour ago";
    } else {
      var feeddate = "about " + n + " hours ago";
    }
  }
  }  
// not today  
} else {
  var feeddate = formatDate(new Date(entrydatestr), 'MMM d, y')
};

rssoutput+="<div id=gfc><a href='" + thefeeds[i].link + "'>" + thefeeds[i].title + "</a><br><span class=dtdisplay>" + feeddate + "</span><br>" + thefeeds[i].contentSnippet + "</div>"
}
document.getElementById("library").innerHTML=rssoutput
}
else //if error fetching feed, alert human readable error message
alert(result.error.message)
}
}

// Landscope Feed

function writeLandscopeFeed() {
document.write('<div id="land"></div>')
var feedpointer=new google.feeds.Feed("http://www.landscope.org/connect/news/rss") 
feedpointer.setNumEntries(5) 
feedpointer.load(formatoutput)


function formatoutput(result){
if (!result.error){
var rssoutput=""
var thefeeds=result.feed.entries
for (var i=0; i<thefeeds.length; i++){
  
var str=thefeeds[i].content //get date of entry
var datestr1=str.indexOf('</em>,');
var datestr2 = datestr1 +7;
var datestr = str.substring(datestr2);
datestr = formatDate(new Date(datestr), 'MMM d, y');

rssoutput+="<div id=gfc><a href='" + thefeeds[i].link + "' target=_blank>" + thefeeds[i].title + "</a><br><span class=dtdisplay>" + datestr + "</span><br>" + thefeeds[i].contentSnippet + "</div>"
}
document.getElementById("land").innerHTML=rssoutput
}
else //if error fetching feed, alert human readable error message
alert(result.error.message)
}
}

// Yale E360 Feed

function writeYaleFeed() {
document.write('<div id="yale"></div>')
var feedpointer=new google.feeds.Feed("http://feeds.feedburner.com/YaleEnvironment360") 
feedpointer.setNumEntries(5) 
feedpointer.load(formatoutput)


function formatoutput(result){
if (!result.error){
var rssoutput=""
var thefeeds=result.feed.entries
for (var i=0; i<thefeeds.length; i++){
var entrydate=new Date(thefeeds[i].publishedDate) //get date of entry
var entrydatestr=' '+entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate()
var entrydatestr2=entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate();
var d = new Date();
var curr_date = d.getDate();
var curr_month = d.getMonth();
curr_month++;
var curr_year = d.getFullYear();
var today =(curr_year + "/" + curr_month + "/" + curr_date);
var now = d.getTime();
var then = entrydate.getTime();
var difference=now-then;

if (today == entrydatestr2){
  if (difference < 3600000) {
    var n=Math.floor(difference/60000);
    var feeddate = n + " minutes ago";
  } else {
  if (difference < 86400000) {
    var n=Math.floor(difference/3600000);
    if (n<=1){
      var feeddate = "about 1 hour ago";
    } else {
      var feeddate = "about " + n + " hours ago";
    }
  }
  }  
// not today  
} else {
  var feeddate = formatDate(new Date(entrydatestr), 'MMM d, y')
};
rssoutput+="<div id=gfc><a href='" + thefeeds[i].link + "' target=_blank>" + thefeeds[i].title + "</a><br><span class=dtdisplay>" + feeddate + "</span><br>" + thefeeds[i].contentSnippet + "</div>"
}
document.getElementById("yale").innerHTML=rssoutput
}
else //if error fetching feed, alert human readable error message
alert(result.error.message)
}
}



// TNC Cool Green Science Feed

function writeTNCFeed() {
document.write('<div id="nature"></div>')
var feedpointer=new google.feeds.Feed("http://feeds.feedburner.com/nature/pCgI") 
feedpointer.setNumEntries(5) 
feedpointer.load(formatoutput)


function formatoutput(result){
if (!result.error){
var rssoutput=""
var thefeeds=result.feed.entries
for (var i=0; i<thefeeds.length; i++){
var entrydate=new Date(thefeeds[i].publishedDate) //get date of entry
var entrydatestr=' '+entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate()
var entrydatestr2=entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate();
var d = new Date();
var curr_date = d.getDate();
var curr_month = d.getMonth();
curr_month++;
var curr_year = d.getFullYear();
var today =(curr_year + "/" + curr_month + "/" + curr_date);
var now = d.getTime();
var then = entrydate.getTime();
var difference=now-then;

if (today == entrydatestr2){
  if (difference < 3600000) {
    var n=Math.floor(difference/60000);
    var feeddate = n + " minutes ago";
  } else {
  if (difference < 86400000) {
    var n=Math.floor(difference/3600000);
    if (n<=1){
      var feeddate = "about 1 hour ago";
    } else {
      var feeddate = "about " + n + " hours ago";
    }
  }
  }  
// not today  
} else {
  var feeddate = formatDate(new Date(entrydatestr), 'MMM d, y')
};

rssoutput+="<div id=gfc><a href='" + thefeeds[i].link + "' target=_blank>" + thefeeds[i].title + "</a><br><span class=dtdisplay>" + feeddate + "</span><br>" + thefeeds[i].contentSnippet + "</div>"
}
document.getElementById("nature").innerHTML=rssoutput
}
else //if error fetching feed, alert human readable error message
alert(result.error.message)
}
}

// CONSERVATION MAVEN JOB FEEDS

function writeMavenFeed() {
document.write('<div id="jobs"></div>')
var feedpointer=new google.feeds.Feed("http://www.conservationjobboard.com/rss.php") 
feedpointer.setNumEntries(6) 
feedpointer.load(formatoutput)


function formatoutput(result){
if (!result.error){
var rssoutput=""
var thefeeds=result.feed.entries
for (var i=0; i<thefeeds.length; i++){
var entrydate=new Date(thefeeds[i].publishedDate) //get date of entry
var entrydatestr=' '+entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate()
var entrydatestr2=entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate();
var d = new Date();
var curr_date = d.getDate();
var curr_month = d.getMonth();
curr_month++;
var curr_year = d.getFullYear();
var today =(curr_year + "/" + curr_month + "/" + curr_date);
var now = d.getTime();
var then = entrydate.getTime();
var difference=now-then;

if (today == entrydatestr2){
  if (difference < 3600000) {
    var n=Math.floor(difference/60000);
    var feeddate = n + " minutes ago";
  } else {
  if (difference < 86400000) {
    var n=Math.floor(difference/3600000);
    if (n<=1){
      var feeddate = "about 1 hour ago";
    } else {
      var feeddate = "about " + n + " hours ago";
    }
  }
  }  
// not today  
} else {
  var feeddate = formatDate(new Date(entrydatestr), 'MMM d, y')
};

var oldJobContent = thefeeds[i].content;
var newJobContent = oldJobContent.replace("<br>", "; ");

rssoutput+="<div id=gfc><a href='" + thefeeds[i].link + "' target=_blank>" + thefeeds[i].title + "</a><br><span class=dtdisplay>" + feeddate + "</span><br>" + newJobContent + "</div>"
}
document.getElementById("jobs").innerHTML=rssoutput
}
else //if error fetching feed, alert human readable error message
alert(result.error.message)
}
}

// COL Library Feed short (for use on library list screens)

function writeCOLFeedshort() {
document.write('<div id="library"></div>')
var feedpointer=new google.feeds.Feed("http://www.conserveonline.org/library/library_rss.xml") 
feedpointer.setNumEntries(5) 
feedpointer.load(formatoutput)


function formatoutput(result){
if (!result.error){
var rssoutput=""
var thefeeds=result.feed.entries
for (var i=0; i<thefeeds.length; i++){
var entrydate=new Date(thefeeds[i].publishedDate) //get date of entry
var entrydatestr=' '+entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate()
var entrydatestr2=entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate();
var d = new Date();
var curr_date = d.getDate();
var curr_month = d.getMonth();
curr_month++;
var curr_year = d.getFullYear();
var today =(curr_year + "/" + curr_month + "/" + curr_date);
var now = d.getTime();
var then = entrydate.getTime();
var difference=now-then;

if (today == entrydatestr2){
  if (difference < 3600000) {
    var n=Math.floor(difference/60000);
    var feeddate = n + " minutes ago";
  } else {
  if (difference < 86400000) {
    var n=Math.floor(difference/3600000);
    if (n<=1){
      var feeddate = "about 1 hour ago";
    } else {
      var feeddate = "about " + n + " hours ago";
    }
  }
  }  
// not today  
} else {
  var feeddate = formatDate(new Date(entrydatestr), 'MMM d, y')
};

rssoutput+="<p><span class=libdisplay><a href='" + thefeeds[i].link + "'>" + thefeeds[i].title + "</a></span><br><span class=dtdisplay>" + feeddate + "</span></p>"
}
document.getElementById("library").innerHTML=rssoutput
}
else //if error fetching feed, alert human readable error message
alert(result.error.message)
}
}

// Peer Review Feed (for use on Peer Review home page)

function writePeerReviewFeedshort() {
document.write('<div id="peer-review"></div>')
var feedpointer=new google.feeds.Feed("http://www.conserveonline.org/workspaces/col_admin/@@feed-files-pages.xml")
feedpointer.setNumEntries(250) 
feedpointer.load(formatoutput)


function formatoutput(result){
if (!result.error){
var rssoutput=""
var thefeeds=result.feed.entries
for (var i=0; i<thefeeds.length; i++){
  var sURL= thefeeds[i].link;
  if (sURL.indexOf("/view.html")>-1){
    var devURL="col3dev.tnc.org"
    var newURL = sURL.replace("conserveonline.org", devURL);
    var newURL2 = newURL.replace("col_admin", "peer-review-demo")
var entrydate=new Date(thefeeds[i].publishedDate) //get date of entry
var entrydatestr=' '+entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate()
var feeddate=generateRelativePubDate(new Date(thefeeds[i].publishedDate), 'yymmdd')
rssoutput+="<div id=gfc><a href='" + newURL2 + "'>" + thefeeds[i].title + "</a><br><span class=dtdisplay>" + feeddate + "</span><br>" + thefeeds[i].content + "</div>"
  }
}
document.getElementById("peer-review").innerHTML=rssoutput
}
else //if error fetching feed, alert human readable error message
alert(result.error.message)
}
}




// Climate Adaptation Blog Feed short (for use on home page)

function writeCAblogFeedshort() {
document.write('<div id="CAblog"></div>')
var feedpointer=new google.feeds.Feed("http://conserveonline.org/workspaces/climateadaptation/@@feed-blogs.xml")
//var feedpointer=new google.feeds.Feed("http://search.twitter.com/search.atom?q=%23plone")
feedpointer.setNumEntries(5) 
feedpointer.load(formatoutput)


function formatoutput(result){
if (!result.error){
var rssoutput=""
var thefeeds=result.feed.entries
for (var i=0; i<thefeeds.length; i++){
var entrydate=new Date(thefeeds[i].publishedDate) //get date of entry
var entrydatestr=' '+entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate() // 2009/12/15
var entrydatestr2=entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate();
var d = new Date();
var curr_date = d.getDate();
var curr_month = d.getMonth();
curr_month++;
var curr_year = d.getFullYear();
var today =(curr_year + "/" + curr_month + "/" + curr_date);
var now = d.getTime();
var then = entrydate.getTime();
var difference=now-then;

if (today == entrydatestr2){
  if (difference < 3600000) {
    var n=Math.floor(difference/60000);
    var feeddate = n + " minutes ago";
  } else {
  if (difference < 86400000) {
    var n=Math.floor(difference/3600000);
    if (n<=1){
      var feeddate = "about 1 hour ago";
    } else {
      var feeddate = "about " + n + " hours ago";
    }
  }
  }  
// not today  
} else {
  var feeddate = formatDate(new Date(entrydatestr), 'MMM d, y')
};

rssoutput+="<p><span class=CAdisplay><a href='" + thefeeds[i].link + "' class='tiptip' title='" + thefeeds[i].contentSnippet + "'>" + thefeeds[i].title + "</a></span><br><span class=dtdisplay>" + feeddate + "</span></p>"


}
document.getElementById("CAblog").innerHTML=rssoutput
}
else //if error fetching feed, alert human readable error message
alert(result.error.message)
}
}


// Adaptation feeds for use on Adaptation home page


function writeCAblogFeed() {
document.write('<div id="CAblogFeed"></div>')
var feedpointer=new google.feeds.Feed("http://conserveonline.org/workspaces/climateadaptation/@@feed-blogs.xml") 
feedpointer.setNumEntries(10) 
feedpointer.load(formatoutput)


function formatoutput(result){
if (!result.error){
var rssoutput=""
var thefeeds=result.feed.entries
for (var i=0; i<thefeeds.length; i++){
var entrydate=new Date(thefeeds[i].publishedDate) //get date of entry
var entrydatestr=' '+entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate()
var entrydatestr2=entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate();
var d = new Date();
var curr_date = d.getDate();
var curr_month = d.getMonth();
curr_month++;
var curr_year = d.getFullYear();
var today =(curr_year + "/" + curr_month + "/" + curr_date);
var now = d.getTime();
var then = entrydate.getTime();
var difference=now-then;

if (today == entrydatestr2){
  if (difference < 3600000) {
    var n=Math.floor(difference/60000);
    var feeddate = n + " minutes ago";
  } else {
  if (difference < 86400000) {
    var n=Math.floor(difference/3600000);
    if (n<=1){
      var feeddate = "about 1 hour ago";
    } else {
      var feeddate = "about " + n + " hours ago";
    }
  }
  }  
// not today  
} else {
  var feeddate = formatDate(new Date(entrydatestr), 'MMM d, y')
};

rssoutput+="<div id=gfc><a href='" + thefeeds[i].link + "' target=_blank>" + thefeeds[i].title + "</a><br><span class=dtdisplay>" + feeddate + "</span><br>" + thefeeds[i].snippet + "</div>"
}
document.getElementById("CAblogFeed").innerHTML=rssoutput
}
else //if error fetching feed, alert human readable error message
alert(result.error.message)
}
}

// ShoreZone blog feed for inclusion on workspace home page

function writeSZblogFeed() {
document.write('<div id="SZblogFeed"></div>')
var feedpointer=new google.feeds.Feed("http://conserveonline.org/workspaces/shorezone/@@feed-blogs.xml") 
feedpointer.setNumEntries(3) 
feedpointer.load(formatoutput)


function formatoutput(result){
if (!result.error){
var rssoutput=""
var thefeeds=result.feed.entries
for (var i=0; i<thefeeds.length; i++){
var entrydate=new Date(thefeeds[i].publishedDate) //get date of entry
var entrydatestr=' '+entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate()
var entrydatestr2=entrydate.getFullYear()+"/"+(entrydate.getMonth()+1)+"/"+entrydate.getDate();
var d = new Date();
var curr_date = d.getDate();
var curr_month = d.getMonth();
curr_month++;
var curr_year = d.getFullYear();
var today =(curr_year + "/" + curr_month + "/" + curr_date);
var now = d.getTime();
var then = entrydate.getTime();
var difference=now-then;

if (today == entrydatestr2){
  if (difference < 3600000) {
    var n=Math.floor(difference/60000);
    var feeddate = n + " minutes ago";
  } else {
  if (difference < 86400000) {
    var n=Math.floor(difference/3600000);
    if (n<=1){
      var feeddate = "about 1 hour ago";
    } else {
      var feeddate = "about " + n + " hours ago";
    }
  }
  }  
// not today  
} else {
  var feeddate = formatDate(new Date(entrydatestr), 'MMM d, y')
};

rssoutput+="<div id=gfc><a href='" + thefeeds[i].link + "' target=_blank>" + thefeeds[i].title + "</a><br><span class=dtdisplay>" + feeddate + "</span><br>" + thefeeds[i].snippet + "</div>"
}
document.getElementById("SZblogFeed").innerHTML=rssoutput
}
else //if error fetching feed, alert human readable error message
alert(result.error.message)
}
}


