
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.01
  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 && d.getElementById) x=d.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];}
}

var Mac = navigator.appVersion.indexOf('Mac',0) != -1;
var Win = navigator.appVersion.indexOf('Win',0) != -1;
var IE  = navigator.appName.indexOf("Microsoft Internet Explorer",0) != -1;
var NN  = navigator.appName.indexOf("Netscape",0) != -1;
var Moz = navigator.userAgent.indexOf("Gecko") != -1;
var Opera = window.opera;
var Vmajor = parseInt(navigator.appVersion); // ex. 3
var Vminor = parseFloat(navigator.appVersion); // ex. 3.01
var WinIE55 = ((Win && navigator.appVersion.indexOf('MSIE 5.5',0) != -1));
var MacIE5 = ((Mac && navigator.appVersion.indexOf('MSIE 5.',0) != -1));
var MacIE4 = ((Mac && navigator.appVersion.indexOf('MSIE 4.',0) != -1));
var MacIE3 = ((Mac && navigator.appVersion.indexOf('MSIE 3.',0) != -1));
var getX = 0;
var getY = 0;

var baInfoTips = new Object();
baInfoTips.id = "infoTips";
baInfoTips.bgColor = "#023085";
baInfoTips.color = "#ffffff";
baInfoTips.width = 180;
baInfoTips.modTimer = null;
baInfoTips.loaded = false;

function infoTipsInit() {
 if (document.all) {
  document.onmousemove=getEventCoords;
  baInfoTips.loaded = true;
 } else if (Moz) {
  document.addEventListener("mousemove", getEventCoords, false);
  baInfoTips.loaded = true;
 } else if (NN && Vminor >= 4.75) {
  window.captureEvents(Event.MOUSEMOVE);
  window.onmousemove=getEventCoords;
  setBackgroundColor4Lyr(baInfoTips.id , baInfoTips.bgColor);
  baInfoTips.loaded = true;
 }
}

function showInfoTipsApp(str) {
 if (baInfoTips.loaded) {
  var writeSrc;
  changeVisible (baInfoTips.id ,0);
  if (document.layers) {
   writeSrc = '<table border="0" cellpadding="3" cellspacing="0" width="'+ baInfoTips.width +'"><tr><td class="helpText">' + str +'<\/td><\/tr><\/table>';
  } else {
   writeSrc = '<p class="helpText">'+ str +'<\/p>';
  }
  writeLayer(baInfoTips.id ,writeSrc);
  if (baInfoTips.modTimer) clearTimeout(baInfoTips.modTimer);
  baInfoTips.modTimer = setTimeout("showInfoTips()", 200);
 }
}

function showInfoTips() {
 if (baInfoTips.loaded) {
  scw = getScrollWidth();
  sch = getScrollHeight();
  helpX = getX - 16;
  helpY = getY - getDivHeight(baInfoTips.id) - 16;
  if ( helpX > scw - getDivWidth(baInfoTips.id)) helpX = scw - getDivWidth(baInfoTips.id) - 16;
  if ( getX < getScrollLeft() + 16 ) helpX = 16;
  if ( getY < getScrollTop() + getDivHeight(baInfoTips.id)) helpY = getY + 24;
  if (!(document.layers)) {
   helpX += getScrollLeft();
   helpY += getScrollTop();
  }
  moveDivTo(baInfoTips.id ,helpX,helpY);
  changeVisible (baInfoTips.id ,1);
  if (baInfoTips.modTimer) clearTimeout(baInfoTips.modTimer);
  baInfoTips.modTimer = setTimeout("showInfoTips()",16);
 }
}

function hideInfoTips() {
 if (baInfoTips.loaded) {
  if (baInfoTips.modTimer) clearTimeout(baInfoTips.modTimer);
  changeVisible (baInfoTips.id ,0);
 }
}

function printInfoTipsCore() {
 with (document) {
  open();
  if (document.layers) {
   write('<layer name="'+ baInfoTips.id +'"><\/layer>');
  } else {
   write('<div id="'+ baInfoTips.id +'"><\/div>');
  }
  close();
 }
}

function printInfoTipsStyle() {
 var src;
 with (document) {
  open();
  src  = '<style type="text/css"><!--';
  src += '#'+ baInfoTips.id +' { position: absolute; border: solid 3px #023085; background-color: '+ baInfoTips.bgColor +'; visibility: hidden; padding: 3px; z-index: 100; width: '+ baInfoTips.width + 'px; }';
  src += '.helpText { color: '+ baInfoTips.color +'; font-size: 11px; margin: 0; }';
  src += 'p.helpText { line-height: 14px; }';
  src += '--><\/style>';
  write (src);
  close();
 }
}

function getEventCoords(e){
	if (IE) {
		getX = window.event.clientX;
		getY = window.event.clientY;
	} else if (Moz) {
		getX = e.clientX;
		getY = e.clientY;
	} else if (document.layers) {
		getX = e.pageX;
		getY = e.pageY;
	}
	// window.status = 'X : ' + getX + ', Y : ' + getY;
}

function setObj(id) {
	if (document.all) {
		return document.all(id);
	} else if (document.getElementById) {
		return document.getElementById(id);
	} else if (document.layers) {
		return document.layers[id];
	}
	return false;
}


function getScrollTop() {
	if (IE) {
		return document.body.scrollTop;
	} else if (Moz) {
		return window.pageYOffset;
	} else if (NN) {
		return window.pageYOffset;
	}
	return 0;
}

function getScrollLeft() {
	if (IE) {
		return document.body.scrollLeft;
	} else if (Moz) {
		return window.pageXOffset;
	} else if (NN) {
		return window.pageXOffset;
	}
	return 0;
}

function getScrollWidth() {
	if (IE) {
		return document.body.scrollWidth;
	} else if (Moz) {
		return window.innerWidth;
	} else if (NN) {
		return window.innerWidth;
	}
	return 0;
}

function getScrollHeight() {
	if (IE) {
		return document.body.scrollHeight;
	} else if (Moz) {
		return window.innerHeight;
	} else if (NN) {
		return window.innerHeight;
	}
	return 0;
}

function moveDivTo(lyrname,Xpx,Ypx) {
	var obj = setObj(lyrname);
	if (document.all && obj.style) {
		obj.style.pixelLeft = Xpx;
		obj.style.pixelTop  = Ypx;
	} else if (document.getElementById && obj.style) {
		obj.style.left = Xpx + 'px';
		obj.style.top  = Ypx + 'px';
	} else if (document.layers) {
		obj.moveTo(Xpx,Ypx);
	}
}

function cngPosX(lyrname,Xpx) {
	var obj = setObj(lyrname);
	if (document.all && obj.style) {
		obj.style.pixelLeft = Xpx;
	} else if (document.getElementById && obj.style) {
		obj.style.left  = Xpx + 'px';
	} else if (document.layers) {
		obj.left = Xpx;
	}
}

function getDivPosY(lyrname) {
	var obj = setObj(lyrname);
	if (document.all && obj.style) {
		return parseInt(obj.style.pixelTop);
	} else if (document.getElementById && obj.style) {
		if (Moz) {
			style = getComputedStyle(obj,null);
			return parseInt(style.getPropertyValue('top'));
		}
		return parseInt(obj.style.top);
	} else if (document.layers) {
		return parseInt(obj.top);
	}
	return '';
}

function getDivWidth(lyrname) {
	var obj = setObj(lyrname);
	if (document.all && obj.style) {
		return obj.clientWidth;
	} else if (document.getElementById && obj.style) {
		if (Moz) {
			style=getComputedStyle(obj,null);
			return parseInt(style.getPropertyValue('width'));
		}
		return parseInt(obj.style.width);
	} else if (document.layers) {
		return obj.clip.width;
	}
	return '';
}

function getDivHeight(lyrname) {
	var obj = setObj(lyrname);
	if (document.all && obj.style) {
		return obj.clientHeight;
	} else if (document.getElementById && obj.style) {
		if (Moz) {
			style=getComputedStyle(obj,null);
			return parseInt(style.getPropertyValue('height'));
		}
		return parseInt(obj.style.height);
	} else if (document.layers) {
		return obj.clip.height;
	}
	return '';
}

function resizeDivTo (lyrname,width,height) {
	var obj = setObj(lyrname);
	if (document.all && obj.style) {
		obj.style.pixelWidth  = width + 'px';
		obj.style.pixelHeight = height + 'px';
	} else if (document.layers) {
		obj.resizeTo(width,height);
	}
}

function setBackgroundRepeat(lyrname,order) {
	var obj = setObj(lyrname);
	if ((document.getElementById || document.all) && obj.style) {
		obj.style.backgroundRepeat = order;
	} else if (document.layers) {
		document.layers[lyrname].backgroundRepeat = order;
	}
}

function setBackgroundColor4Lyr(lyrname,color) {
	var obj = setObj(lyrname);
	if ((document.getElementById || document.all) && obj.style) {
		obj.style.background = color;
	} else if (document.layers) {
		obj.bgColor = color;
	}
}

function setBackgroundImage4Lyr(lyrname,url) {
	var obj = setObj(lyrname);
	if ((document.getElementById || document.all) && obj.style) {
		obj.style.backgroundImage = (url == ('none' || null)) ? 'none' : 'url(' + url + ')';
	} else if (document.layers) {
		document.layers[lyrname].background.src = (url == ('none' || null)) ? null : url;
	}
}

function changeVisible(lyrname, str) {
	var obj = setObj(lyrname);
	var values = new Array(2);
	if ((document.getElementById || document.all) && obj.style) {
		values[1] = 'visible',values[0] = 'hidden';
		if (str == null) str = ( obj.style.visibility == values[0] ) ? 1 : 0;
		obj.style.visibility = (str > 0) ? values[1] : values[0];
	} else if (document.layers) {
		values[1] = 'show',values[0] = 'hide';
		if (str == null) str = ( obj.visibility == values[0] ) ? 1 : 0;
		obj.visibility = (str > 0) ? values[1] : values[0];
	}
}

function writeLayer(lyrname,code) {
	var obj = setObj(lyrname);
	if (document.all) {
		obj.innerHTML=code;
	} else if (document.getElementById) {
		obj.innerHTML=code;
	} else if (document.layers) {
		obj.document.open();
		obj.document.write(code);
		obj.document.close();
	}
}

