/* functions for
showing and hiding "share this article submenu"
*/

function HideContent(d) {
  if(d.length < 1) { return; }
  if(document.getElementById(d) != null) {
    document.getElementById(d).style.display = "none";
  }
}
function ShowContent(d) {
  if(d.length < 1) { return; }
  if(document.getElementById(d) != null) {
    document.getElementById(d).style.display = "block";
  }
}

function SetContentDisplay(d) {
  if(d.length < 1) { return; }
    if(document.getElementById(d) != null) {
    	document.getElementById(d).style.display = "none";
    }
}

function ReverseContentDisplay(d) {
  if(d.length < 1) { return; }
  if(document.getElementById(d) != null) {
	  if(document.getElementById(d).style.display == "none") { document.getElementById(d).style.display = "block"; }
	  else { document.getElementById(d).style.display = "none"; }
  }
}




function drawTools() {
	//Article Tools
	//article_tools.js
	//Author: Matt King
	//Date: 2/14/2008 (happy valentine's day!)
	//Purpose: Create a general purpose, platform agnostic article tools display "box" that can be shared across all CMP Medica Sites. 
	//(it should be fairly easy to modify as well)
	
	
	//variables used throughout the article_tools javascript
	var myUrl=document.location.href;
	var myHost=window.location.hostname;
	var myTitle=encodeURIComponent(document.title);
	
	//Article Tools
	//Currently: email, print, delicious, digg, technorati, reddit, yahoo, google
	//To remove one, comment out it's document.write command
	//To add a new one, add a new variable here, construct the proper html, and create a new document.write command with the others
	//it may help to look at an existing link for help
	
	var emailText=null;
	var printText=null;
	var printToPDF=null;
	var facebookText=null;
	var stumbleText=null;
	var deliciousText=null;
	var diggText=null;
	var technoratiText=null;
	var redditText=null;
	var yahooText=null;
	var googleText=null;
	var twitterText=null;
	var reprintText=null;
	var commentPosition=null;
	var commentText=null;
	
	// output params
	var finalOutput=null;
	var finalPos = null;
	var finalOutputBottom=null;
	var finalPosBottom=null;
	var finalOutputContentAd=null;
	var contentArea=null;
	var finalPosContentAd=null;
	var sourceContentAdPos=null;
	var firstTable=null;
	var numFirstTablePTags=null;
	
	// get variables for printer friendly, email and pdf versions
	var indexOfArticle=myUrl.indexOf('/article');
	var endIndex=myUrl.indexOf('#');
	if(endIndex < indexOfArticle) endIndex = myUrl.length;
	
	var articleId;
	var groupId;
	
	var printableParamString = "?printable=true";
	if(myUrl.substring(indexOfArticle,endIndex).indexOf('?') >= 0) printableParamString = "&printable=true"
	
	// send cme articles to different print page template (no ads)
	var printTemplate = '/print';
	
	if(myUrl.indexOf('cme') >= 0) 
		printTemplate = '/print-cme';
	
	var articlePrintUrl = "http://"+myHost+printTemplate+myUrl.substring(indexOfArticle,endIndex)+printableParamString;
	
	//Print this page link
	if(indexOfArticle>=0){
		printText = '<li class="print"><a href="' + articlePrintUrl + '">&nbsp;PRINT&nbsp;&nbsp;|&nbsp;&nbsp;</a></li>';
	} 
	
	//Email this page link
	var mySubject = ('Found an article you might be interested in');
	var myBody= (myTitle + ': ' + myUrl);
	
	if(indexOfArticle>=0){
		var urlArray = myUrl.substring(0,endIndex).split("/");
		groupId = urlArray[urlArray.length-2];
		var articleIdEndIndex = urlArray[urlArray.length-1].indexOf("?");
		if(articleIdEndIndex < 0){
			articleIdEndIndex = urlArray[urlArray.length-1].length;
		}
		articleId = urlArray[urlArray.length-1].substring(0,articleIdEndIndex);
	
		var articleEmailUrl = "http://"+myHost+"/email?p_p_id=EMAIL_CONTENT&articleId="+articleId+"&groupId="+groupId;
	
		emailText= '<li class="email"><a href="' + articleEmailUrl + '">&nbsp;EMAIL&nbsp;&nbsp;|&nbsp;&nbsp;</a></li>';
	}
	
	
	// Request reprint links
	switch(myHost)
	{
		case 'www.diagnosticimaging.com':
			articleReprintUrl = 'http://www.wrightsreprints.com/reprints/index.cfm?magid=2352';
			break;
	
		case 'www.psychiatrictimes.com':
			articleReprintUrl = 'http://www.wrightsreprints.com/reprints/index.cfm?magid=2344';
			break;
	
		case 'www.consultantlive.com':
			articleReprintUrl = 'http://www.wrightsreprints.com/reprints/?magid=2382';
			break;
	
		case 'www.cancernetwork.com':
			articleReprintUrl = 'http://www.wrightsreprints.com/reprints/?magid=2361';
			break;
	
		case 'jmm.consultantlive.com':
			articleReprintUrl = 'mailto:JMartin@wrightsreprints.com?subject=article reprint request for Journal of Musculoskeletal Medicine';
			break;
	
		case 'imm.consultantlive.com':
			articleReprintUrl = 'mailto:JMartin@wrightsreprints.com?subject=article reprint request for Infectiosn in Medicine';
			break;
	
		case 'theaidsreader.consultantlive.com':
			articleReprintUrl = 'mailto:JMartin@wrightsreprints.com?subject=article reprint request for the AIDS Reader';
			break;
	
		case 'jrd.consultantlive.com':
			articleReprintUrl = 'mailto:JMartin@wrightsreprints.com?subject=article reprint request for Journal of Repiratory Diseases';
			break;
	
		case 'dbt.consultantlive.com':
			articleReprintUrl = 'mailto:JMartin@wrightsreprints.com?subject=article reprint request for Drug Benefit Trends';
			break;
	
	    default: articleReprintUrl = 'mailto:JMartin@wrightsreprints.com?subject=article reprint request for CMPMedica';
	}
		
	
	if(indexOfArticle>=0){
		reprintText = '<li class="reprint"><a href="' + articleReprintUrl + '" target="_blank">&nbsp;REPRINT&nbsp;&nbsp;|&nbsp;&nbsp;</a></li>';
	} 
	
	
	//Print to PDF link
	if(indexOfArticle>=0){
		var articlePDFUrl = "http://"+myHost+"/pdf?p_p_id=PDF_CONTENT&articleId="+articleId+"&groupId="+groupId;
		printToPDF = '<li class="pdf">' +
			'<a href="#" onClick="javascript:window.open(\''+articlePDFUrl+'\')" linkindex="37">&nbsp;PDF&nbsp;&nbsp;|&nbsp;&nbsp;</a></span>' +
			'</li>';
	}
	
	
	// Share this submenu
	var submenuText = '<li class="share"><a href="#" onclick="ReverseContentDisplay(\'toolBoxShareMenu\'); return false;"  onclick="return false;" >&nbsp;SHARE</a><ul id="toolBoxShareMenu">';
	var submenuTextBottom = '<li class="share"><a href="#" onclick="ReverseContentDisplay(\'toolBoxShareMenuBottom\'); return false;"  onclick="return false;" >&nbsp;SHARE</a><ul id="toolBoxShareMenuBottom">';
	//var contentAdText = '<li class="share"><a href="#" onclick="ReverseContentDisplay(\'contentAd\'); return false;"  onclick="return false;" >&nbsp;SHARE</a><ul id="contentAdBox">';
	
	//Facebook link
	 facebookText = '<li class="facebook"><a href="#" onclick="javascript:window.open(\'http://www.facebook.com/share.php?u=' + encodeURIComponent(location.href) + '\')"> Facebook</a></li>';	
	//StumbleUpon
	 stumbleText = '<li class="stumble"><a href="#" onclick="javascript:window.open(\'http://www.stumbleupon.com/submit?url=' + encodeURIComponent(location.href) + '&title=' + encodeURIComponent(document.title) + '\')"> Stumbleupon</a></li>';	
	// TwitterText
	 twitterText = '<li class="twitter"><a href="#" onclick="javascript:window.open(\'http://www.twitter.com/home?status=' + location.href + '\')"> Tweet this</a></li>';	
	 
	//Membership info
	membershipText = '<div id="membership"><span class="redStar">* </span><em>membership required</em></div>';
	submenuEndText = '</ul></li>';	
	
	//Comment Link
	commentText = '<li class="comment"><a href="#article-comments">&nbsp;COMMENT&nbsp;&nbsp;|&nbsp;&nbsp;</a></li>';
	
	// assemble HTML to be written
	finalOutput = '<div class="articleTools"><div class="toolsContainer"><ul class="toolsList" id="toolsList">' 
	// for bottom bar
	finalOutputBottom = '<div class="articleTools"><div class="toolsContainer"><ul class="toolsList" id="toolsListBottom">'
	// content ad
	finalOutputContentAd = '<div class="contentAd"><div class="contentAdContainer"><ul class="contentAdList" id="contentAdList">'
			
	
	if(emailText != null) {
		finalOutput = finalOutput + emailText;
		finalOutputBottom = finalOutputBottom + emailText;
		//finalOutputContentAd = finalOutputContentAd + emailText;
	}
	if(printText != null) {
		finalOutput = finalOutput + printText;
		finalOutputBottom = finalOutputBottom + printText;
	}
	if(printToPDF != null) {
		finalOutput = finalOutput + printToPDF;
		finalOutputBottom = finalOutputBottom + printToPDF;
	}
	//some pages may have comments disabled
	commentPosition = document.getElementById('article-comments');
	if(commentPosition != null) {
		if(commentText != null) {
			finalOutput = finalOutput + commentText;
			finalOutputBottom = finalOutputBottom + commentText;
		}
	}
	if(reprintText != null) {
		finalOutput = finalOutput + reprintText;
		finalOutputBottom = finalOutputBottom + reprintText;
	}
	
	// submenu 
	finalOutput = finalOutput + submenuText;
	finalOutputBottom = finalOutputBottom + submenuTextBottom;
	//in content ad
	//finalOutputContentAd = finalOutputContentAd + contentAdText;
	
	if(facebookText != null) {
		finalOutput = finalOutput + facebookText;
		finalOutputBottom = finalOutputBottom + facebookText;
	}
	if(stumbleText != null) {
	  finalOutput = finalOutput + stumbleText;
	  finalOutputBottom = finalOutputBottom + stumbleText;
	}
	if(twitterText != null) {
	  finalOutput = finalOutput + twitterText;
	  finalOutputBottom = finalOutputBottom + twitterText;
	}
	//if(addToAnyText != null) {
		//finalOutput = finalOutput + addToAnyText;
		//finalOutputBottom = finalOutputBottom + addToAnyText;
	//}
	finalOutput = finalOutput + submenuEndText;
	finalOutputBottom = finalOutputBottom + submenuEndText;
	//finalOutput = finalOutput + membershipText;
	finalOutput = finalOutput + '</ul></div></div>';
	finalOutputBottom = finalOutputBottom + '</ul></div></div>';
	
	//move the ad
	//IE H4XX
	if(document.getElementById) {
		sourceContentAdPos = document.getElementById('content-ad');
	}
	else if(document.all) {
		sourceContentAdPos = document.all['content-ad'];
	}
	if(sourceContentAdPos != null) {
		finalOutputContentAd = finalOutputContentAd + '<li class="email">' + sourceContentAdPos.innerHTML + '</li>';
		finalOutputContentAd = finalOutputContentAd + '</ul></div></div>';
	}
	
	contentArea = document.getElementById('article-content-body');
	if (contentArea != null) {
		finalPosContentAd = contentArea.getElementsByTagName('p')[2];
		firstTable = contentArea.getElementsByTagName('table')[0];
	}
	//check for tables with p tags in them, in the "more like this section"
	
	if(firstTable != null) {
		var firstTablePTags = firstTable.getElementsByTagName('p');
		if(firstTablePTags != null && firstTablePTags.length > 0) { //has p tags in table...
			numFirstTablePTags = firstTablePTags.length;
			finalPosContentAd = contentArea.getElementsByTagName('p')[numFirstTablePTags + 2];
		}
	}
	if(finalPosContentAd != null) {
		var myElement = document.createElement('div');
		myElement.setAttribute('id','contentAdDiv');
		contentArea.insertBefore(myElement,finalPosContentAd);
		myElement.innerHTML = myElement.innerHTML + finalOutputContentAd;
		if(sourceContentAdPos != null) {
			SetContentDisplay('content-ad');
		}
		SetContentDisplay('add-comment');
		ShowContent('add-comment');
	}
	// place tools after id="article-flag", which is present in every article
	finalPos = document.getElementById('article-tools-top');
	finalPosBottom = document.getElementById('article-tools-bottom');	
	
	if(finalPos != null) {
		finalPos.innerHTML = finalPos.innerHTML +  finalOutput;
	
		// set to submenu to hidden
		SetContentDisplay('toolBoxShareMenu');
	}
	
	if(finalPosBottom != null) {
		finalPosBottom.innerHTML = finalPosBottom.innerHTML +  finalOutputBottom;
		
		// set to submenu to hidden
		SetContentDisplay('toolBoxShareMenuBottom');
	}
	
	
}
