document.write('<script language="JavaScript1.2" src="/foresee/foresee-trigger.js"></script>');

//this function includes all necessary js files for the application
function include(file) {
  var script  = document.createElement('script');
  script.src  = file;
  script.type = 'text/javascript';
  script.defer = true;
  document.getElementsByTagName('head').item(0).appendChild(script);
}

function scAni(name,value,days) {
document.cookie = name+"="+value+"; path=/";
}

function rcAni(name) {
return ((document.cookie.indexOf(name) == -1) ? null : 'found');
}
                    
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  
  if(!d) 
     d=document; 
  if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; 
    n=n.substring(0,p);
  }
  if(!(x=d[n])&&d.all) 
    x=d.all[n]; 
    
  for (i=0;!x&&i<d.forms.length;i++) 
    x=d.forms[i][n];
  
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) 
     x=MM_findObj(n,d.layers[i].document);
  
  if(!x && document.getElementById) 
     x=document.getElementById(n); 
     
  return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { 
  	v=args[i+2];
   	 if (obj.style) { 
   	 	obj=obj.style; 
   	 	//display added by MT
   	 	d=(v=='show')?'block':(v=='hide')?'none':v; 
   	 	v=(v=='show')?'visible':(v=='hide')?'hidden':v; 
   	 	}
    	obj.visibility=v; 
    	obj.display=d;
    	}
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function bigScreen() {
	return (window.screen && screen.width >= 835);
}

// Returns the entire query string passed to the current page.
function getQueryString(){ 
	zquery = parent.location.search; 
	zquery = zquery.substring(1,zquery.length); 
	return (zquery);
} 

// Parses a query string 'queryString' for the variable 'queryName'
// and returns the value associated with that name.
function parseQuery (queryString, queryName) {
    startIndex = queryString.indexOf(queryName);
    if (startIndex == -1) {
        return "";
    }
    
    startIndex = queryString.indexOf("=", startIndex) + 1;
    endIndex = queryString.indexOf("&", startIndex);
    if (endIndex == -1) {
        endIndex = queryString.length;
    }
    return queryString.substring(startIndex, endIndex);
}

function detectionRedirection() {
    var queryString = getQueryString();
    var currPage = location.pathname;
    var redirectUrl = "/media/mmhe2/detect.htm?";
    redirectUrl += "context=" + context;
    redirectUrl += "&Ref=" + Ref;
    redirectUrl += "&RefId=" + RefId;
    //currPage = currPage.substring(currPage.lastIndexOf("/")+1, currPage.lastIndexOf("."));
    currPage = ItemId;
    redirectUrl += "&mediaID=" + currPage;
    location.replace(redirectUrl);
}

function openWindow(queryString, winWidth, winHeight){
    window.open(encodeURI(queryString),null,"width="+winWidth+",height="+winHeight+",resizable=no");
}

function isValidEmail(str) {
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})$/;
	return (filter.test(str));
}

function validateEmailFriendForm(to_email, from_name, from_email) {
	var errors = '';
	
	if (to_email == null || !isValidEmail(to_email)) {
		errors += message_to_label + " " + emailError + '\n';
	}
	if (from_name == null || from_name == '') {
		errors += sendername_label + " " + nullError + '\n';
	}
	if (from_email == null || !isValidEmail(from_email)) {
		errors += message_from_label + " " + emailError + '\n';
	}
	
	if (errors != '') {
        alert(validationMessage + '\n\n' + errors);
    }
	return (errors == '');
}

var dt01 = new Array();

function drugTerm(numTerms, obj, state) {
	var obj = MM_findObj(obj);
	if (state == 1) {
		var base = 12 + ((mosby=='') ? 0 : 18);
		var ht = ((obj.offsetHeight)) * -1 + 1;
		obj.style.top = ht + "px";
		obj.style.visibility = "visible";
	}
	else if (state == 2) {
		obj.style.visibility = "hidden";
	}
}

function validateForm(formname, evt, qtName) {
	var valid = eval("(document.forms['"+formname+"']."+qtName+".value != '')");
	var elw = externalLinkWarning.replace(/\*n/g,'\n');
	if (evt == 333) {
		if ((formname == "mosbySearch") && valid) {
			return(confirm(elw));
		} else {
			return(valid);
		}
	} 
	else {
		evt = (evt) ? evt : ((event) ? event : null);    
		if (evt.returnValue) {
			evt.returnValue = valid;
		}
		else if (evt.preventDefault && valid==false) {
			evt.preventDefault();
		} else {
			if ((formname == "mosbySearch") && (valid || (navigator.appName.indexOf("Microsoft") != -1))) {
				return(alert(elw));
			} else {
				return(valid);
			}
		}
	}
}

function submitForm(formname, qtName) {
    if (validateForm(formname, 333, qtName)) {
    	eval("document.forms['"+formname+"'].submit()");
    }
}

var MedWarningOnLeaving = "You are leaving msd-australia.com.au.\r\rPlease consider the following points about the information on the website you are about to visit:\r\r- it may not comply with Australian regulatory requirements.  For information about use of our products in Australia please refer to the Consumer Medicine Information which can be found on our website.\r\r- it is for your information only and is not intended as advice.\r\r- it should be discussed with your health care professional and does not replace their advice.\r\rMerck Sharp and Dohme (MSD) does not review or control the content of any non-MSD sites.  MSD does not endorse and is not responsible for the accuracy, content, practices or standards of any non-MSD sources.";

//below is the old file multimedia.js - now consolidated into utils.js.
var linkclasses = new Array('externalLink');

if (window.onload)	{
	var loadStr4 = window.onload.toString();
	var newLoadStr4 = loadStr4.substring(loadStr4.indexOf("{") + 1,loadStr4.lastIndexOf("}") - 1) + "\r" + ";" + "appendExternalLinks()";
	window.onload = new Function(newLoadStr4);
} else {
	window.onload = appendExternalLinks;
}

function appendExternalLinks() {
	var aTags = document.getElementsByTagName('a');
	for (var i=0; i<aTags.length; i++) {
		for (var j=0; j<linkclasses.length; j++) {
			if (aTags[i].className.indexOf(linkclasses[j]) != -1) {
				aTags[i].onclick = extLink;
			}
		}
	}
}

function extLink() {
	var elw = externalLinkWarning.replace(/\*n/g,'\n');
	var uc = confirm(elw);
	this.target = "_blankExternal";
	return(uc);
}

function mm_link(url) {
	if (window.opener && !window.opener.closed) {
		window.opener.focus();
		if (window.opener.location.pathname != url) {
			window.opener.location.href = url;
		}
	}
	else {
		window.open(url, "newWindow");
	}
	window.close();
}
// end old multimedia.js

function showSearchTips() {
	div_searchTips.innerHTML = 
		"<table style='background: #666 url(/site_images/mm/tips_corner.gif) top left no-repeat;' cellpadding=0 cellspacing=0 border=0>" + 
		"<tr>" +
		"<td style='padding: 4px 10px;'><p class='stTitle'>" +
		searchTipsTitle +
		"</p></td>" + 
		"<td align=right style='padding: 4px 10px; border-right: 1px solid black;'><a href='javascript:hideSearchTips();'><img src='/site_images/mm/x.gif' border=0></a></td>" + 
		"</tr>" +
		"<tr><td colspan=2 style='border: 1px solid black; padding: 4px 10px; background: #ccc;'><ul>" +
		searchTipsText +
		"</ul></td></tr>" +
		"</table>";
}
function hideSearchTips() {
	div_searchTips.innerHTML = "";
}

function hideContent(action, ok) {
	if ((action == 'start') && ok) {
		document.write('<' + '!' + '--');
	} else if ((action == 'end') && ok) {
		document.write('--' + '>');
	}
}

function showHideChildren(topic, level, path, forceHide) {
	var element = document.getElementById("img" + path + "_" + topic);
	if (element) {
		var i = 0, j = 0, k = 0;
		var show = forceHide ? false : (element.className == 'bullet' + level + 'plus');
		var display = show ? (isIE ? 'inline' : 'table-row') : 'none';
		var tempEid = path + "E0_" + topic;
		var tempFid = path + "F0_" + topic;
		var tempGid = path + "G0_" + topic;
		element.className = 'bullet' + level + (show ? 'minus' : 'plus');
		while (document.getElementById(tempEid)) {
			document.getElementById(tempEid).style.display = display;
			showHideChildren(topic, 'E', path + 'E' + i, true);
			tempEid = path + "E" + (++i) + "_" + topic;
		}
		while (document.getElementById(tempFid)) {
			document.getElementById(tempFid).style.display = display;
			showHideChildren(topic, 'F', path + 'F' + j, true);
			tempFid = path + "F" + (++j) + "_" + topic;
		}
		while (document.getElementById(tempGid)) {
			document.getElementById(tempGid).style.display = display;
			tempGid = path + "G" + (++k) + "_" + topic;
		}
	}
}

var isIE = (navigator.appName.indexOf("Microsoft") != -1);
function showHideIndex(id) {
	var element = document.getElementById(id+"Dplus");
	if (element) {
		var show = element.className == 'bulletD' + 'plus';
		
		var display = show ? (isIE ? 'inline' : 'table-row') : 'none';
		element.className = 'bulletD' + (show ? 'minus' : 'plus');
		var trTags = document.getElementsByTagName('tr');
		for (var i=0; i<trTags.length; i++) {
				if (trTags[i].className.indexOf(id+'TRL') != -1) {
					trTags[i].style.display = display;
			}
		}			
	}
}

function getScrollTop() {
	var scrTop = 0;
	if (typeof(window.pageYOffset) == 'number') {
		//Netscape compliant
		scrTop = window.pageYOffset;
	} 
	else if (document.body && document.body.scrollTop) {
		//DOM compliant
		scrTop = document.body.scrollTop;
	} 
	else if (document.documentElement && document.documentElement.scrollTop) {
		//IE6 standards compliant mode
		scrTop = document.documentElement.scrollTop;
	}
	return scrTop;
}

function moveTopicNavManual() {
	if (!isIE) {
	  moveTopicNav();
	  window.setTimeout("moveTopicNavManual();",1);
	}
}

function moveTopicNav() {
	// Get position of footer to use as reference
	var footerPos = 0;
	var footerElement = document.getElementById("sitemap_img");
	while (footerElement != null) {
	 	footerPos += footerElement.offsetTop;
		footerElement = footerElement.offsetParent;
	}
	
	// Get position and height of In-This-Topic nav
	var ittElement = document.getElementById("inthistopicOuter");
	var ittHeight = ittElement.offsetHeight;
	var initPos = 0;
	while (ittElement != null) {
	 	initPos += ittElement.offsetTop;
		ittElement = ittElement.offsetParent;
	}
	
	// Move inner div based on how much the browser window has been scrolled
	var bodyTop = getScrollTop();
	var newTop = 0;
	if (bodyTop > initPos) {
		if (footerPos - ittHeight < bodyTop) {
			newTop = footerPos - ittHeight - initPos;
		}
		else {
			newTop = bodyTop - initPos;
		}
	}
	document.getElementById("inthistopicNav").style.top = newTop;
}

function readCookie(name) {
    var c = document.cookie
    if (c.indexOf(name)==-1) return null
    else {
        var start = c.indexOf(name)+name.length+1
        for (var end=start;end<c.length;end++) if (c.charAt(end)==";") break
        return unescape(c.substring(start,end));
    }
}

function searchCookiePresent() {
	return(document.cookie.indexOf('searchListDisabled=') != -1);
}

function searchCookieValid() {
	if (searchCookiePresent()) {
		return(document.cookie.indexOf('searchListDisabled=true') == -1);
	} else {
		return(true);
	}
}

function searchCookieContains(qt) {
	if (searchCookiePresent()) {
		var alm = readCookie("searchList1")+'**'+readCookie("searchList2")+'**'+readCookie("searchList3");
		return(alm.indexOf(qt) != -1);
	} else {
		return(false);
	}
}

function searchCookieAdd(qt) {
	//adds term to the search cookie, removing the last one on the list
	if (searchCookiePresent()) {
		document.cookie = "searchList3="+escape(readCookie('searchList2'))+"; path=/"
		document.cookie = "searchList2="+escape(readCookie('searchList1'))+"; path=/"
	} else {
		document.cookie = "searchList2=null; path=/"
		document.cookie = "searchList3=null; path=/"
		document.cookie = "searchListDisabled=false; path=/"		
	}
	document.cookie = "searchList1="+escape(qt)+"; path=/"
}

function addSearch(qt) {
	if (searchCookieValid() && !(searchCookieContains(qt))) {
		searchCookieAdd(qt);
	}
}

function hideSearchList() {
	document.cookie = "searchListDisabled=true; path=/";
	MM_showHideLayers('searchList','','hide');
}

function getSearchList() {
	var sl = new Array(3);
	if (searchCookiePresent() && searchCookieValid()) {
		sl[0] = readCookie('searchList1');
		sl[1] = readCookie('searchList2');
		sl[2] = readCookie('searchList3');
	}
	return(sl);
}

function sendSearch(qt) {
	document.MMHE2searchForm.qt.value = qt;
	submitForm('MMHE2searchForm', 'qt');
}

function changeTabNav(n) {
	var tn1 = document.getElementById("tabNav1");
	var tn2 = document.getElementById("tabNav2");
	var tn3 = document.getElementById("tabNav3");
	var tnt1 = document.getElementById("tabNavTable1");
	var tnt2 = document.getElementById("tabNavTable2");
	var tnt3 = document.getElementById("tabNavTable3");
	
	if (tn1 && tnt1) {
		tn1.className = (n==1 ? "navTabOn" : "navTabOff");
		tnt1.style.display = (n==1 ? "" : "none");
	}
	if (tn2 && tnt2) {
		tn2.className = (n==2 ? "navTabOn" : "navTabOff");
		tnt2.style.display = (n==2 ? "" : "none");
	}
	if (tn3 && tnt3) {
		tn3.className = (n==3 ? "navTabOn" : "navTabOff");
		tnt3.style.display = (n==3 ? "" : "none");
	}
}

/* puts rotating ad banner on MM pages */
var adboxURL = "";
function setAdboxPath() {
    document.getElementById("adbox").src = adboxURL;
}
function drawAdBox(path, numberOfAds, isSmallAd) {
    var rac = parseInt(getCookie("rotatingAdCount"));
    var viewCount = rac ? rac : 0;
    var rand = (viewCount % numberOfAds) + 1; 
    setCookie("rotatingAdCount", viewCount + 1, 365);
    adboxURL = path + "mmpub" + rand + (isSmallAd?"s":"") + ".htm";
    
    if (window.onload)	{
    	var loadStr = window.onload.toString();
    	var newLoadStr = loadStr.substring(loadStr.indexOf("{") + 1,loadStr.lastIndexOf("}") - 1) + "\r" + ";" + "setAdboxPath()";
    	window.onload = new Function(newLoadStr);
    }
    else {
    	window.onload = setAdboxPath;
    }
}

/******************** COOKIES **********************/
function setCookie(name, value, days, path, domain, secure) {
	var expires = "";
	if ((typeof days == "number") && (days != -1)) {
		var date = new Date();
		date.setTime(date.getTime() + (days*24*60*60*1000));
		expires = date.toGMTString();
	}
	document.cookie = name + "=" + escape(value) +
		((expires) ? "; expires=" + expires : "") +
		((path) ? "; path=" + path : "") +
		((domain) ? "; domain=" + domain : "") +
		((secure) ? "; secure" : "");
}
function getCookie(name) {
	var nameq = name + "=";
	var c_ar = document.cookie.split(';');
	for (var i=0; i < c_ar.length; i++) {
		var c = c_ar[i];
		while (c.charAt(0)==' ') {
			c = c.substring(1, c.length);
		}
		if (c.indexOf(nameq) == 0) {
			return unescape(c.substring(nameq.length, c.length));
		}
	}
	return null;
}

