var feeds = new Object ();

feeds = {
	current_issue: ["Current Issue", "http://content.nejm.org/rss/current.xml"], 
	most_recent_issues: ["Most Recent Issues", "http://content.nejm.org/rss/recent.xml"], 
	image_of_week: ["Image of the Week", "http://rss.nejm.org/imagecast.xml"],
	most_viewed_week: ["Most Viewed (Week)", "http://services.nejm.org/rss/nejmmostpopular/mostviewed.aspx"],
	most_viewed_month: ["Most Viewed (Month)", "http://services.nejm.org/rss/nejmmostpopular/mostviewed.aspx?days=30"],
	most_emailed_week: ["Most E-mailed (Week)", "http://services.nejm.org/rss/nejmmostpopular/mostemailed.aspx"],
	most_cited_recent: ["Most Cited (Recent)", "http://services.nejm.org/rss/nejmmostpopular/mostcited.aspx?mode=RECENT"],
	most_cited_hot: ["Most Cited (Hot)", "http://services.nejm.org/rss/nejmmostpopular/mostcited.aspx?mode=HOT"],
	most_cited_classic: ["Most Cited (Classic)", "http://services.nejm.org/rss/nejmmostpopular/mostcited.aspx?mode=CLASSIC"],
	most_blogged_week: ["Most Blogged (Week)", "http://services.nejm.org/rss/nejmmostpopular/mostblogged.aspx"],
	most_blogged_month: ["Most Blogged (Month)", "http://services.nejm.org/rss/nejmmostpopular/mostblogged.aspx?days=30"],
	top_search_terms_week: ["Top Search Terms (Week)", "http://services.nejm.org/rss/nejmmostpopular/mostsearched.aspx"],
	top_search_terms_month: ["Top Search Terms (Month)", "http://services.nejm.org/rss/nejmmostpopular/mostsearched.aspx?days=30"],
	covered_in_press: ["Widely Covered in the Press (Month)", "http://services.nejm.org/rss/nejmmostpopular/mostmediacited.aspx"],
	collection_1: ["Aging/Geriatrics", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=1"],
	collection_23: ["Allergy/Immunology", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=23"],
	collection_2: ["Anticoagulants/Thromboembolism", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=2"],
	collection_3: ["Arrhythmias", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=3"],
	collection_4: ["Asthma", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=4"],
	collection_58: ["Avian Influenza", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=58"],
	collection_35: ["Bone Disease", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=35"],
	collection_6: ["Breast Cancer", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=6"],
	collection_7: ["Cardiomyopathy/Myocarditis", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=7"],
	collection_49: ["Cardiovascular Diseases", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=49"],
	collection_8: ["Child Health", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=8"],
	collection_9: ["Colorectal Cancer", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=9"],
	collection_10: ["Coronary Disease", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=10"],
	collection_50: ["Critical Care", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=50"],
	collection_11: ["Dermatology", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=11"],
	collection_13: ["Diabetes", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=13"],
	collection_12: ["Diet/Nutrition", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=12"],
	collection_52: ["Emergency Medicine", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=52"],
	collection_14: ["Endocrinology", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=14"],
	collection_15: ["Gastroenterology", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=15"],
	collection_16: ["Genetics", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=16"],
	collection_55: ["Global Health", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=55"],
	collection_21: ["HIV/AIDS", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=21"],
	collection_17: ["Health Care Delivery", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=17"],
	collection_18: ["Health Policy", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=18"],
	collection_19: ["Heart Failure", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=19"],
	collection_20: ["Hematology", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=20"],
	collection_22: ["Hypertension", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=22"],
	collection_23: ["Immunology", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=23"],
	collection_5: ["Infectious Diseases", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=5"],
	collection_24: ["Kidney Disease", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=24"],
	collection_26: ["Legal Issues", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=26"],
	collection_25: ["Leukemia/Lymphoma", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=25"],
	collection_27: ["Liver Disease", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=27"],
	collection_56: ["Medical Education and Training", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=56"],
	collection_29: ["Medical Ethics", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=29"],
	collection_30: ["Multiple Sclerosis", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=30"],
	collection_31: ["Neonatal Medicine", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=31"],
	collection_32: ["Neurologic Disease", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=32"],
	collection_33: ["Obesity", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=33"],
	collection_34: ["Oncology", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=34"],
	collection_35: ["Osteoporosis/Bone Disease", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=35"],
	collection_57: ["Pain and Palliative Care", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=57"],
	collection_36: ["Parkinson's Disease", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=36"],
	collection_37: ["Pregnancy", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=37"],
	collection_38: ["Prostate Disease", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=38"],
	collection_39: ["Psychiatry", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=39"],
	collection_40: ["Pulmonary Disease", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=40"],
	collection_41: ["Rheumatic Disease", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=41"],
	collection_53: ["SARS", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=53"],
	collection_42: ["Seizures", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=42"],
	collection_54: ["Statistics", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=54"],
	collection_43: ["Stroke", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=43"],
	collection_51: ["Surgery", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=51"],
	collection_44: ["Transplantation", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=44"],
	collection_45: ["Tuberculosis", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=45"],
	collection_46: ["Vaccines", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=46"],
	collection_47: ["Viral Diseases", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=47"],
	collection_48: ["Women&#39;s Health", "http://rss.nejm.org/search/SearchResults.aspx?type=C&numberOfResults=20&srch=48"]
	}

function showFeed (link,whichFeed) {

	// close others
	closeFeedInfo();
	
	var feed = feeds[whichFeed];
	var linkParent = link.parentNode;
	
	// if the link was clicked more than once there could be a feed div here, so check that the li has only one child, an a and delete any other
	var linkParentChildNodes = linkParent.childNodes;
	for (var i = 1; i < linkParentChildNodes.length; i++) {
		if (linkParentChildNodes[i].nodeName == "DIV") {
	   		linkParent.removeChild(linkParentChildNodes[i]);
	   	}
   	}
   		
	// create container 
	var feedContainer = document.createElement('div');
	feedContainer.className = "feedContainer";
	feedContainer.id = "feedContainer";		
	
	// build close feed info control, will need to add function to close it
	var closeImage = document.createElement('img');
	closeImage.src = "../icons/close_circle.gif";
	closeImage.alt = "Close";
	closeImage.border = "0";
	var closeLink = document.createElement('a');
	closeLink.className = "x";
	closeLink.href = "nejm-online-feeds.html";
	closeLink.onclick = function() {      
		    closeFeedInfo(); return false;
	}	

	closeLink.appendChild(closeImage);

	//build header
	var feedHeader = document.createElement('h2');
	var feedDisplayName = feed[0];
	feedHeader.innerHTML = "Subscribe to " + feedDisplayName + " Feed";	
	
	//build feed buttons area
	var para1 = document.createElement('p');
	para1.innerHTML = "Choose your reader:";
	
	var feedTable =  document.createElement('table');
	feedTable.className = "rssFeeds";
	var feedTableBody = document.createElement('tbody');
	var tableRow1 = document.createElement('tr');
	
	// google
	var tdGoogle = document.createElement('td');
	var linkGoogle = document.createElement('a');
	linkGoogle.href = "http://fusion.google.com/add?feedurl=" + escape(feed[1]);
	var imgGoogle = document.createElement('img');
	imgGoogle.src = "../icons/google-plus.gif";
	imgGoogle.alt = "Add to Google"; 
	imgGoogle.border = "0";
	linkGoogle.appendChild(imgGoogle);
	tdGoogle.appendChild(linkGoogle);
	
	// yahoo
	var tdYahoo = document.createElement('td');
	var linkYahoo = document.createElement('a');
	linkYahoo.href = "http://add.my.yahoo.com/content?.intl=us&url=" + escape(feed[1]);
	var imgYahoo = document.createElement('img');
	imgYahoo.src = "../icons/yahoo.gif";
	imgYahoo.alt = "Add to My Yahoo!";
	imgYahoo.border = "0";
	linkYahoo.appendChild(imgYahoo);
	tdYahoo.appendChild(linkYahoo);
	
	// msn
	var tdMsn = document.createElement('td');
	var linkMsn = document.createElement('a');
	linkMsn.href = "http://my.msn.com/addtomymsn.armx?id=rss&ut=" + escape(feed[1]);
	var imgMsn = document.createElement('img');
	imgMsn.src = "../icons/msn.gif";
	imgMsn.alt = "Add to My MSN";
	imgMsn.border = "0";
	linkMsn.appendChild(imgMsn);
	tdMsn.appendChild(linkMsn);

	// new row
	var tableRow2 = document.createElement('tr');

	// newsgator
	var tdNewsgator = document.createElement('td');
	var linkNewsgator = document.createElement('a');
	linkNewsgator.href = "http://www.newsgator.com/ngs/subscriber/subext.aspx?url=" + escape(feed[1]);
	var imgNewsgator = document.createElement('img');
	imgNewsgator.src = "../icons/newsgator.gif";
	imgNewsgator.alt = "Add to Newsgator";
	imgNewsgator.border = "0";
	linkNewsgator.appendChild(imgNewsgator);
	tdNewsgator.appendChild(linkNewsgator);
	
	// rojo
	var tdRojo = document.createElement('td');
	var linkRojo = document.createElement('a');
	linkRojo.href = "http://www.rojo.com/add-subscription?resource=" + escape(feed[1]);
	var imgRojo = document.createElement('img');
	imgRojo.src = "../icons/rojo.gif";
	imgRojo.alt = "Add to Rojo";
	imgRojo.border = "0";
	linkRojo.appendChild(imgRojo);
	tdRojo.appendChild(linkRojo);	
	
	// bloglines
	var tdBloglines = document.createElement('td');
	var linkBloglines = document.createElement('a');
	linkBloglines.href = "http://www.bloglines.com/sub/" + escape(feed[1]);
	var imgBloglines = document.createElement('img');
	imgBloglines.src = "../icons/bloglines.gif";
	imgBloglines.alt = "Add to Bloglines";
	imgBloglines.border = "0";
	linkBloglines.appendChild(imgBloglines);
	tdBloglines.appendChild(linkBloglines);		

	// build input 
	var para2 = document.createElement('p');
	para2.innerHTML = "<a href=\"#\" onclick=\"copyText(\'feedUrlInput\');return false;\">Copy to clipboard</a> or cut and paste the feed URL below:";
	var feedUrlInput = document.createElement('input');
	feedUrlInput.id = "feedUrlInput";
	feedUrlInput.className = "feedUrlInput";
	var feedUrl = unescape(feed[1]);
	var increaseWidth = feedUrl.length*6;
	feedUrlInput.style.width = (increaseWidth + 10) + "px";
	if (increaseWidth > 350) {
		feedUrlInput.style.width = (increaseWidth + 40) + "px";
		feedContainer.style.width = (increaseWidth + 80) + "px";
	}

	feedUrlInput.value = feedUrl
	feedUrlInput.onclick = function() {      
		    document.getElementById('feedUrlInput').select();
	}	
	
	//build table
	
	tableRow1.appendChild(tdGoogle);
	tableRow1.appendChild(tdYahoo);
	tableRow1.appendChild(tdMsn);
	tableRow2.appendChild(tdNewsgator);
	tableRow2.appendChild(tdRojo);
	tableRow2.appendChild(tdBloglines);
	
	feedTableBody.appendChild(tableRow1);
	feedTableBody.appendChild(tableRow2);
	feedTable.appendChild(feedTableBody);
	
	//build feed info 
	feedContainer.appendChild(closeLink);
	feedContainer.appendChild(feedHeader);
	feedContainer.appendChild(para1);
	feedContainer.appendChild(feedTable);
	feedContainer.appendChild(para2);
	feedContainer.appendChild(feedUrlInput);
	
	// the feeds in the most popular table need different treatment
	if (linkParent.nodeName == "TD") {
		// feed into displayed absolutely 10px below parent and at same left position
		feedContainer.style.position = "absolute";
		feedContainer.top = (linkParent.top + 10) + "px";
		feedContainer.left = (linkParent.left + 0) + "px";		
	}
	
	// put the container in the document
	linkParent.appendChild(feedContainer);

	
}

function closeFeedInfo () {
	var openContainer = document.getElementById('feedContainer');
	if (openContainer) {
		var parent = openContainer.parentNode;
		parent.removeChild(openContainer);
	}	
}

function chooseCollection (whichCollection) {
	var feedback = document.getElementById('formFeedback');
	
	if (whichCollection == "--") {
		feedback.innerHTML = "You must select a collection";
	}
	else {
		feedback.innerHTML = "";
		whichCollection = "collection_" + whichCollection;
		showFeed(feedback.parentNode,whichCollection);
	}
}

//for copy to clipboard functionality

function copyText(elToCopy) {

  inElement = document.getElementById(elToCopy);
  if (inElement.createTextRange) {
    var range = inElement.createTextRange();
    if (range)
     range.execCommand('Copy');
       
  } else {
    var flashcopier = 'flashcopier';
    if(!document.getElementById(flashcopier)) {
      var divholder = document.createElement('div');
      divholder.id = flashcopier;
      document.body.appendChild(divholder);
    }
    document.getElementById(flashcopier).innerHTML = '';
    var divinfo = '<embed src="_clipboard.swf" FlashVars="clipboard='+escape(inElement.value)+'" width="0" height="0" type="application/x-shockwave-flash"></embed>';
    document.getElementById(flashcopier).innerHTML = divinfo;
  }
}