/* ------------------------------------------------------- */
/* Browser check					   */
/*                                                         */
/* FIXME: check this file for unused garbage               */
/* ------------------------------------------------------- */

var browserOk = false;
var name      = navigator.appName;
var version   = navigator.appVersion;
var agent     = navigator.userAgent;
var major     = version.charAt(0);
var minor     = version.charAt(2);
var platform="";
if (major>=4) platform = navigator.platform;
var helpPage  = "/help_browser.html";

// IE and NN >=4
if ((name.indexOf("Netscape")!=-1 || name=="Mozilla" || name=="Microsoft Internet Explorer") && (major>=5)) {
		browserOk = true;
} else if (name=="Microsoft Internet Explorer" && version.indexOf("MSIE 4")==-1) {
		browserOk = true;
} else {	
//		location.replace(helpPage);
}

var isNav=navigator.appName=="Netscape";
var isIE=navigator.appName=="Microsoft Internet Explorer";
var isNav4=(navigator.appName=="Netscape"&&(navigator.appVersion.charAt(0)=='4'));

var sidebar = 0;

function getStyleObject(objectId) {
// cross-browser function to get an object's style object given its id
if(document.getElementById && document.getElementById(objectId)) {
// W3C DOM
return document.getElementById(objectId).style;
} else if (document.all && document.all(objectId)) {
// MSIE 4 DOM
return document.all(objectId).style;
} else if (document.layers && document.layers[objectId]) {
// NN 4 DOM.. note: this won't find nested layers
return document.layers[objectId];
} else {
return false;
}
} // getStyleObject
function changeObjectVisibility(objectId, newVisibility) {
// get a reference to the cross-browser style object and make sure the object exists
var styleObject = getStyleObject(objectId);
if(styleObject) {
styleObject.visibility = newVisibility;
return true;
} else {
// we couldn't find the object, so we can't change its visibility
return false;
}
} 

function moveObject(objectId, newXCoordinate, newYCoordinate) {
    // get a reference to the cross-browser style object and make sure the object exists
    var styleObject = getStyleObject(objectId);
    if(styleObject) {
	styleObject.left = newXCoordinate;
	styleObject.top = newYCoordinate;
	return true;
    } else {
	// we couldn't find the object, so we can't very well move it
	return false;
    }
}

// changeObjectVisibility
var isNav=navigator.appName=="Netscape";
var isIE=navigator.appName=="Microsoft Internet Explorer";
var isNav4=(navigator.appName=="Netscape"&&(navigator.appVersion.charAt(0)=='4'));
function layerOn(whichlayer) {
changeObjectVisibility(whichlayer,'visible');
}

function layerOff(layerString) {
	var layerIds = layerString.split(',');
	var len = layerIds.length;
	for  ( var i=0; i<len; i++ )  {
		changeObjectVisibility(layerIds[i], 'hidden' );
	}
}

 function imgOn(imgName,layerName) {
		if (isNav4) {
			document.layers[layerName].document.images[imgName].src='/resources/images/selector_a.gif';
		} else {
			document.images[imgName].src='/resources/images/selector_a.gif';
		}
	}
  function imgOff(imgName,layerName) {
		if (isNav4) {
			document.layers[layerName].document.images[imgName].src='/resources/images/selector.gif';
		} else {
			document.images[imgName].src='/resources/images/selector.gif';
		}
   }

  function imgJOn(imgName,layerName) {
		if (isNav4) {
			document.layers[layerName].document.images[imgName].src='/resources/images/selector_js_a.gif';
		} else {
			document.images[imgName].src='/resources/images/selector_js_a.gif';
		}
	}
  function imgJOff(imgName,layerName) {
		if (isNav4) {
			document.layers[layerName].document.images[imgName].src='/resources/images/selector_js.gif';
		} else {
			document.images[imgName].src='/resources/images/selector_js.gif';
		}
   }

/* OLD VERSION
 function imgOnSrc(imgName,layerName, imgSrc) {
	if (isNav4) 
	{
		document.layers[layerName].document.images[imgName].src=imgSrc;
	} else {
		document.images[imgName].src=imgSrc;
	}
  }

this function has to be replaced with imgOnSrc
*/
  function imgOffSrc(imgName,layerName, imgSrc) {
	if (isNav4) {
		document.layers[layerName].document.images[imgName].src=imgSrc;
	} else {
		document.images[imgName].src = imgSrc;
	}
  }
/*
NEW HUNG VERSION
 */

function imgOnSrc(imgName,layerName, imgSrc) {
	if (isNav4) 
	{
		if (layerName.indexOf(',')!=-1) {
			var layerNames = layerName.split(',');
			var layerpart = '';
			for(var i = 0; i < layerNames.length; i++) {
				layerpart = layerpart + 'document.layers[\'' + layerNames[i] + '\'].'
			}
			eval(layerpart + 'document.images[\'' + imgName + '\'].src= imgSrc;');
		} else {
			document.layers[layerName].document.images[imgName].src= imgSrc;
		}
	} else {
		document.images[imgName].src=imgSrc;
	}
}

function printpage(url) {
width=640;
height=400;
var winl = (screen.width-width) / 2; 
var wint = (screen.height-height) / 2; 
printwin = window.open(url,"print","width="+width+",height="+height+",top="+wint+",left="+winl+",toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0");
printwin.focus();
}

function checkSize() {
	if (isIE) {
		var bodywidth = document.body.offsetWidth;
	} else {
		var bodywidth = window.innerWidth
	}
	if (bodywidth<801) {
		changeObjectVisibility('satellite2', 'hidden');
		moveObject('satellite2',1,1);
	}
}

function openPopup(art)	{
	art = "http://www.eurexchange.com/popup.html?" + art;
	width=665;
	height=500;
	var winl = (screen.width-width) / 2; 
	var wint = (screen.height-height) / 2; 
	window.open(art, Date.parse(Date()), "width="+width+",height="+height+",top="+wint+",left="+winl+",scrollbars=no,menubar=no");
}

// Functions used in /cgi/eurexDQ:
function changeImage(state) {
  if (state=="on") {
    document.images.go_button.src = "/resources/images/button_go_en_a.gif";
  } else {
    document.images.go_button.src = "/resources/images/button_go_en.gif";
  }
}

function submitForm() {
  document.visible_form.submit();
}

function swap_gif(chart_url,scale) {
  var sca = ";scale=" + scale.options[scale.selectedIndex].value;
  document.chart.src = chart_url + sca;
}

function updateAlphaSymbolList(self_url, alpha) {
  location.href = self_url + alpha.options[alpha.selectedIndex].value;
}

function updateIndexSymbolList(self_url, indexlist) {
  location.href = self_url + indexlist.options[indexlist.selectedIndex].value;
}

// Functions used in user administration
function confirmDelete(form) {
  if (form.isDelete.value == 'true') {
    form.isDelete.value = 'false';
    return confirm('Really delete user?');
  }
  return true;
}


    var bannerImgArr = new Array();
    var bannerUrlArr = new Array();
    var bannerTarArr = new Array();
    var bannerTimArr = new Array();
    
    var iBanner = -1;
    
    /*rieman am abklaeren 
    iBanner++;
    bannerImgArr[iBanner] = 'banner_vola_futures.gif';
    bannerUrlArr[iBanner] = '/products/overview/VOL_background.html';
    bannerTarArr[iBanner] = '';
    bannerTimArr[iBanner] = 27500;
    */
   
    /* deactivated on april 26th, 2006 according to C. Bodler
    iBanner++;
    bannerImgArr[iBanner] = 'banner_euroschatzoptions.gif';
    bannerUrlArr[iBanner] = '/products/FIX.html';
    bannerTarArr[iBanner] = '';
    bannerTimArr[iBanner] = 21000;
    
    iBanner++;
    bannerImgArr[iBanner] = 'banner_euro_flex.gif';
    bannerUrlArr[iBanner] = '/new/flexi_options.html';
    bannerTarArr[iBanner] = '';
    bannerTimArr[iBanner] = 23600;
    
    iBanner++;
    bannerImgArr[iBanner] = 'banner_dj_600_index.gif';
    bannerUrlArr[iBanner] = '/products/STX.html';
    bannerTarArr[iBanner] = '';
    bannerTimArr[iBanner] = 28000;
    */
    
    
    iBanner++;
    bannerImgArr[iBanner] = 'weekly_options.gif';
    bannerUrlArr[iBanner] = '/new/weekly_options.html';
    bannerTarArr[iBanner] = '';
    bannerTimArr[iBanner] = 17500;
    
    iBanner++;
    bannerImgArr[iBanner] = 'banner_singlestockfutures.gif';
    bannerUrlArr[iBanner] = '/products/overview/EQU.html';
    bannerTarArr[iBanner] = '';
    bannerTimArr[iBanner] = 16000;
    
    iBanner++;
    bannerImgArr[iBanner] = 'banner_dj_mid_200.gif';
    bannerUrlArr[iBanner] = '/products/overview/VOL_background.html';
    bannerTarArr[iBanner] = '';
    bannerTimArr[iBanner] = 27500; 
    
    iBanner++;
    bannerImgArr[iBanner] = 'banner_euro_buxl.gif';
    bannerUrlArr[iBanner] = '/products/FGBX.html';
    bannerTarArr[iBanner] = '';
    bannerTimArr[iBanner] = 24000;


    function writeBanners() {
      for (i=0;i<bannerImgArr.length;i++) {
        document.write('<div id="banner_layer_' + i + '" style="position:absolute; left:625px; top:115px; width: 137px; height: 60px; visibility: hidden;">');
        document.write('<a href="' + bannerUrlArr[i] + '" target="' + bannerTarArr[i] + '">');
        document.write('<img src="/resources/images/' + bannerImgArr[i] + '" border="0" alt="" width="137" height="60"/></a>');
        document.write('</div>');
      }
    }
    
		var current=0;
		var layername="";
				
		function changeBanner() {
			// Wechsel der Banner
			if (current > bannerImgArr.length) current=0;
			// Alle Banner verstecken
			for (i=0;i<=bannerImgArr.length;i++) {			
				layername = "banner_layer_" + i.toString();
        changeObjectVisibility(layername,"hidden");
			}	
			// Aktuellen Banner anzeigen
			layername = "banner_layer_" + current.toString();
      changeObjectVisibility(layername,"visible");

			
			setTimeout("changeBanner()", bannerTimArr[current]);
      
      current = current + 1;
			
			return true;
		}
    
    
function wusage() {
  var bName = navigator.appName;
	var bVer = parseInt(navigator.appVersion);
	var ver;
	if (bName == "Netscape" && bVer >= 4) {
		ver = 4;
	} else if (bName == "Microsoft Internet Explorer" && bVer >= 4) {
		ver = 4;
	} else {
		ver = 0;
	}
	if (ver >= 4) {
		document.write('<img src="/wusage_screen_properties.gif?' +
			'width=' + screen.width	+ '&' +
			'height=' + screen.height + '&' +
			'depth=' + screen.colorDepth + '">'); 	
		document.writeln();
	}
}
    
        
function lib_bwcheck(){ //Browsercheck (needed)
this.ver=navigator.appVersion;
this.agent=navigator.userAgent;
this.dom=document.getElementById?1:0;
this.opera5=(navigator.userAgent.indexOf("Opera")>-1 && document.getElementById)?1:0;
this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0;
this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
this.ie=this.ie4||this.ie5||this.ie6;
this.mac=this.agent.indexOf("Mac")>-1;
this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0;
this.ns4=(document.layers && !this.dom)?1:0;
this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5);
return this;
}
var bw=new lib_bwcheck();
messages=new Array();

fromX=-200; 
fromY=-200;

function makeObj(obj){
this.evnt=bw.dom? document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?document.layers[obj]:0;
if(!this.evnt) return false
this.css=bw.dom||bw.ie4?this.evnt.style:bw.ns4?this.evnt:0;
this.wref=bw.dom||bw.ie4?this.evnt:bw.ns4?this.css.document:0;
this.writeIt=b_writeIt;
return this
}
function b_writeIt(text){if(bw.ns4){this.wref.write(text);this.wref.close()}
else this.wref.innerHTML=text}

//Capturing mousemove
var descx=0
var descy=0
function popmousemove(e){descx=bw.ns4||bw.ns6?e.pageX:event.x; descy=bw.ns4||bw.ns6?e.pageY:event.y}

var oDesc;
//Shows the messages
function popup(num){
if(oDesc){
oDesc.writeIt('<div class="clDescription">'+messages[num]+'</div>')
if(bw.ie5||bw.ie6) descy=descy+document.body.scrollTop
oDesc.css.left=descx+fromX; oDesc.css.top=descy+fromY
oDesc.css.visibility='visible'
}
}
//Hides it
function popout(num){
if(oDesc) oDesc.css.visibility='hidden'
}
function setPopup(){
if(bw.ns4)document.captureEvents(Event.MOUSEMOVE)
document.onmousemove=popmousemove;
oDesc=new makeObj('divDescription')
}
