//
// Last changes: showLayers(), checkCookies() (Marat Saitov, 10.03.2004)
// Last changes: einbindung Usertracking (Henning Busacker 25.03.2004)
// Last changes: Korrekturen(Hostname,Kontakt,Search,aktivierung Usertracking) (Henning Busacker 22.07.2004)
// Last changes: Entfernen Webtrends tracking, USetracking hinzu
// Last changes: aufgeraeumt , flash_popup hinzu (Henning Busacker 17.05.2006)
//
// File   msd_scriptlib.js   
// 
// Purpose: 
// For the use in the product-pages of msd.de
//
// Contents:
// navigation-highlight script
// Respective to the path of a html-page, the highlight-images of the navigation are set
//
// include stylesheet script
// Respective to the browser the right stylesheet is included
//
// Product websites
var productsites=new Array ("Arcoxia","Cancidas","Cosopt","Emend","Ezetrol","Fosavance","Inegy","Invanz","Janumet","Januvia","Maxalt","Propecia","Singulair","Tredaptive");

var trackurl="http://report.msd.de/MSDdeTrack/track?site=";
//var trackurl="http://selene.avinci.de:8080/MSDdeTrack/track?site=";
// the actual folder-structure
var folderlist=new Array("pathophysiologie","produktprofil","wirksamkeit","service","xxxx", "kontakt", "uebermsd","sitemap", "kontakt");
// the logical navigationstructure  (if different from the folderstructure)
var imagelist=new Array("pathophysiologie", "produktprofil","wirksamkeit","news_service","","meta_kontakt","meta_uebermsd","meta_sitemap","meta_kontakt");
// image-preload arrays
var buttons_in=new Array();
var buttons_out=new Array();
var buttons_rollover=new Array();
var trenner=new Array();
// imagepath
var gfxsrc = "/images/navi/";
// imagetype (gif, jpg, png ...)
var type = "gif";
// highlight extention
var highlight = "_hi";
// rollover extention
var rollover = "_rollover";
// the path of the html-file (with folder structure)
var loc = window.location.pathname;

var hl_position = -1;

//--------------------------------------------------------------------------------------------------------------------
// set stylesheet
//--------------------------------------------------------------------------------------------------------------------
document.open();
document.write("<LINK rel='stylesheet' type='text/css' href='/css/msd.css'>");
document.close();
//-----------------------------------------------------------------------------------------------------------------
// preload Images
//-----------------------------------------------------------------------------------------------------------------
for (i=0;i<(imagelist.length);i++){
	buttons_in[i]=new Image();
	buttons_out[i]=new Image();
	buttons_rollover[i]=new Image();
	buttons_in[i].src=gfxsrc+imagelist[i]+highlight+"."+type;
	buttons_out[i].src=gfxsrc+imagelist[i]+"."+type;
	buttons_rollover[i].src=gfxsrc+imagelist[i]+rollover+"."+type;
}
trenner[0]=new Image();
trenner[0].src=gfxsrc+"trenner.gif";
trenner[1]=new Image();
trenner[1].src=gfxsrc+"trenner_hi.gif";

//-----------------------------------------------------------------------------------------------------------------
// highlight
//-----------------------------------------------------------------------------------------------------------------
function getProductname() {
	host=location.host;
	host=host.replace(/www\./,"");
	host=host.replace(/\.de/,"");
	host=host.replace(/\.muc-prj.*/,"");
	host=host.replace(/de-ut.merck.com/,"");
	return host;
}
function loadimages(){
	for (i=0;i<(folderlist.length);i++){
		if (loc.indexOf(folderlist[i]) != -1 && document.images["button"+i]) {
			hl_position = i;
			if (document.images["button"+i]) {document.images["button"+i].src=buttons_in[i].src}
			if (i <= "4") {
				if (document.images["tre"+i]) {document.images["tre"+i].src=trenner[0].src}
			}
			if (hl_position!=-1 && document.images["button"+hl_position]) {
				document.images["button"+hl_position].src=buttons_in[hl_position].src;
				if (hl_position <= "4") {
					document.images["tre"+hl_position].src=trenner[1].src;
					if (document.images["tre"+(hl_position+1)]) { document.images["tre"+(hl_position+1)].src=trenner[1].src;}
				}
			}
			break;
		}
	}
	if (window.location.search !="" && window.location.search.indexOf("?request_url")!=-1) {		
		document.forms["yahoo"].request_url.value=window.location.search.substring(13,window.location.search.length);
	}	
}

function change_over(i){ 
	if ((i != hl_position)){
		document.images["button"+i].src=buttons_rollover[i].src;
	} 
} 

function change_out(i){
	if (i!= hl_position) { 
		document.images["button"+i].src=buttons_out[i].src;
	} 
}
//++++++++++++++++++++++++++++++++++++++++++++++++++++++
// tracking
function track_explicit(url) {
	unc=getCookie('unique_visitor');
	img=new Image();
	img.src=trackurl+window.location.host+"&url="+url+"&unc="+unc;
}

function msdtrack() {
	i=window.location.search.indexOf("referrer=");
	amp=window.location.search.indexOf("&",i);
	if (amp < 0) { 
 		amp=window.location.search.length;
	}
 	referrer="";
 
	if (i!=-1) {
		referrer="&referrer="+window.location.search.substring(i+9,amp);
	} else {
	 	if ((window.document.referrer != '') && (window.document.referrer.indexOf(window.document.location.host) == -1)) {
			if (window.document.referrer.search(/\.ua-s\.de|\.groupinfra\.de|-ut\.merck\.com/) == -1) {
				e=/^http[s]?:\/\/(.*?)\//
				e.exec(window.document.referrer);
				referrer="&referrer="+RegExp.$1;
			}
		}
	}

	unc=getCookie('unique_visitor');
	img=new Image();
	img.src=trackurl+window.location.host+"&url="+loc+"&unc="+unc+referrer;
}
msdtrack();
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++

//***************************************************************
// Checks cookies out
//***************************************************************
function cookieCheck(name) {
	 if(document.cookie && document.cookie.match(name)) {
		return true;
	 } else {
		return false;
	 }
}

//***************************************************************
// Read cookies
//***************************************************************
function getCookie(name) {
	var start = document.cookie.indexOf(name+"=");
	var len = start+name.length+1;
	if ((!start) && (name != document.cookie.substring(0,name.length))) return null;
	if (start == -1) return null;
	var end = document.cookie.indexOf(";",len);
	if (end == -1) end = document.cookie.length;
	return unescape(document.cookie.substring(len,end));
}

//-----------------------------------------------------------
// open search popup window
//-----------------------------------------------------------
function openSearch() {
	targetvalue=encodeURI("/MSDdeSearch/MSDdeSearchServlet");
	colvalue=encodeURI(document.forms.query.col.value);
	p=getProductname();
	if (p == "cancidas") 
		p="caspofungin";
	qpvalue=encodeURI("+url:"+p+".de -url:*print.html");
	lavalue=encodeURI(document.forms.query.la.value);
	qtvalue=encodeURI(document.forms.query.qt.value);
	url = targetvalue + "?col=" + colvalue + "&qp=" + qpvalue + "&la=" + lavalue + "&qt=" + qtvalue;
	mywin = window.open(url, 'winsuche', 'width=608,height=550,scrollbars,resizable=yes');
	mywin.focus();
}


function doNothing() {}

//***************************************************************
// Product select creation and calling
//***************************************************************
function writeProducts() {
	host=getProductname();
	for (i=0;i<productsites.length;i++) {
 		var product=productsites[i];
 		var prodl=product.toLowerCase();
 		if (prodl!=host) {
			l=location.host;
			l=l.replace(host,prodl);
			document.writeln('<option value="'+l+'">'+product+'</option>');
 		} 
	}	
}
function productChanged(site) {
	if (site) {
		var secure=getCookie("MSD-LOGIN");
 		if (secure) {
			location.href='/htbin/dologin.pl?request_url='+site+'/secure/home.html'+"&referrer="+location.host;
		} else {
			location.href="http://"+site+"/"+"?referrer="+location.host;
 		}
 	}
}

//---------------------------------------------------------------------------------------------------------------
// open pop-up window
//---------------------------------------------------------------------------------------------------------------
function open_popup(sUrl,width,heigth,scroll,x,y) {
	sTmp = "width=" + width + ",height=" + heigth + ",scrollbars=" + scroll + ",status=0" + ",left=" + x + ",top=" + y + ",resizable=no";
		
    popupref=open('','popup','top=-999,left=-999,screenX=-999,screenY=-999,width=100,height=100');
	if(self.popupref && !popupref.closed) popupref.close();	
	
	if(!window.popWin)
	{
		window.popWin = window.open(sUrl,'popup',sTmp);
	}
    else if(window.popWin.closed)
	{
		window.popWin = window.open(sUrl,'popup',sTmp);
	}
    else
    {
		if (window.popWin) window.popWin.close();
		window.popWin = null;             
		window.popWin = window.open(sUrl,'popup',sTmp);
    }
	window.popWin.focus();
}


// open popup for a picture with title and text
function pic_popup(pic,text,x,y,title,alt,yoffset) {
	var wx=x+20;
	var wy=y+(yoffset?yoffset:86);
	var pop=window.open('about:blank','pic_pop','height='+wy+',width='+wx+',menubar=no,resizable=no,scrollbars=no,status=no');
	pop.document.writeln('<html><head><title>'+title+'</title></head><body marginwidth="10" marginheight="10" topmargin="10" leftmargin="10">');
	pop.document.writeln('<div align="center" valign="top"><img src="'+pic+'" border="0" alt="'+alt+'" width="'+x+'" height="'+y+'"></div>');
	pop.document.writeln('<img src="/images/tab.gif" border="0" alt="" height="8" width="8"><br>');
	pop.document.writeln('<table border="0" width="'+x+'" bgcolor="#dbd9d8" cellspacing="0" cellpadding="4"><tr><td style="background-color:#dbd9d8;font-family:Verdana,Arial,Helvetica;font-size:9px;line-height:12px;color:#000000;">'+text+'</td></tr></table>');
	pop.document.writeln('<img src="/images/tab.gif" border="0" alt="" height="8" width="8"><br>');
	pop.document.writeln('<table border="0" width="'+x+'"><tr><td bgcolor="#ffffff" align="left" width="50%"><a href="javascript:window.print();"><img src="/images/content/drucken_button.gif" border="0"></a></td><td align="right" width="50%"><a href="" onclick="window.close();"><img src="/images/content/schliessen.gif" border="0"></a></td></tr></table>');
	pop.document.writeln('</body></html>');
	pop.document.close();
	pop.focus();
}

//**************************************************************
// open Poup with Flash application
//**************************************************************
function flash_popup(path,flash,title,width,height,bgcolor) {
	var base=document.location.protocol+"//"+document.location.host+path+"/";
	var pop=window.open('about:blank','flash_pop','height='+height+',width='+width+',menubar=no,resizable=no,scrollbars=no,status=no');
	pop.document.writeln('<html><head><base href="'+base+'">');
	pop.document.writeln('<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>'+title+'</title></head><body marginwidth="0" marginheight="0" topmargin="0" leftmargin="0" style="padding:0px;background-color:'+bgcolor+'">');
	pop.document.writeln('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="'+width+'" height="'+height+'" id="film" align="middle">');
	pop.document.writeln('<param name="allowScriptAccess" value="sameDomain" />');
	pop.document.writeln('<param name="movie" value="'+flash+'" />');
	pop.document.writeln('<param name="quality" value="high" />');
	pop.document.writeln('<param name="bgcolor" value="'+bgcolor+'" />');
	pop.document.writeln('<embed src="'+flash+'" quality="high" bgcolor="'+bgcolor+'" width="'+width+'" height="'+height+'" name="film" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
	pop.document.writeln('</object>');
	pop.document.writeln('</body></html>');
	pop.document.close();
	pop.focus();
}

// scripts for flash and shockwave integration

function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs,img) 
{ 
  var str = '<object ';
  for (var i in objAttrs)
    str += i + '="' + objAttrs[i] + '" ';
  str += '>';
  for (var i in params)
    str += '<param name="' + i + '" value="' + params[i] + '" /> ';
  str += '<embed ';
  for (var i in embedAttrs)
    str += i + '="' + embedAttrs[i] + '" ';
  str += ' ></embed></object>';
 if (img['img']) str+=(img['imglink']?img['imglink']+'>':"")+'<img src="'+img['img']+'" border="0" alt="" description="'+img['imgalt']+'" style="position:absolute;left:'+(img['imgOffX']?img['imgOffX']:'0')+'px;top:'+(img['imgOffY']?img['imgOffY']:'0')+'px;"'+(img['imgmap']?' usemap="#'+img['imgmap']+'"':'')+'>'+(img['imglink']?'</a>':"");
  str+='</object>';

//	window.alert(str);
  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs,ret.img);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  ret.img=new Object();;
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
	case "img":
		ret.img['img']=args[i+1];
	break;
	case "imgalt":
		ret.img['imgalt']=args[i+1];
	break;
	case "imglink":
		ret.img['imglink']=args[i+1];
	break;
	case "imgoffx":
		ret.img['imgOffX']=args[i+1];
	break;
	case "imgoffy":
		ret.img['imgOffY']=args[i+1];
	break;
	case "imgmap":
		ret.img['imgmap']=args[i+1];
	break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
	case "style":
	case "wmode":
	case "swliveconnect":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "id":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}


// generic scripts for ActiveX-Controls
function AC_AX_RunContent(){
  var ret = AC_AX_GetArgs(arguments);
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_AX_GetArgs(args){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "pluginspage":
      case "type":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "data":
      case "codebase":
      case "classid":
      case "id":
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  return ret;
}

function video_popup(path,film,title,width,height,bgcolor) {
	var base=document.location.protocol+"//"+document.location.host+path+"/";
	var pop=window.open('about:blank','vidoe_pop','height='+height+',width='+width+',menubar=no,resizable=no,scrollbars=no,status=no');
	pop.document.writeln('<html><head><base href="'+base+'">');
	pop.document.writeln('<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>'+title+'</title></head><body marginwidth="0" marginheight="0" topmargin="0" leftmargin="0" style="padding:0px;background-color:'+bgcolor+'">');

	pop.document.writeln('<object id="mediaplayer"  classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95" width="'+width+'" height="'+height+'" align="middle" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,0,02,902" standby="Lade Microsoft Windows Media Player..." type="application/mpeg" >');
	pop.document.writeln('<param name="allowScriptAccess" value="sameDomain" />');
	pop.document.writeln('<param name="filename" value="'+film+'" />');
	pop.document.writeln('<param name="AutoStart" value="1" />');
	pop.document.writeln('<param name="CACHE" value="true" />');
	pop.document.writeln('<param name="ShowStatusBar" value="True" />');
	pop.document.writeln('<param name="bgcolor" value="'+bgcolor+'" />');
	pop.document.writeln('<embed src="'+film+'" quality="high" bgcolor="'+bgcolor+'" width="'+width+'" height="'+height+'" name="mediaplayer" align="middle" AutoStart="true" type="video/mpeg" pluginspage="http://www.microsoft.com/Windows/MediaPlayer/" />');
	pop.document.writeln('</object>');
	pop.document.writeln('</body></html>');
	pop.document.close();
	pop.focus();
}
