var w3c = document.getElementById ? true : false;
var iex = document.all ? true : false;
var ns4 = document.layers ? true : false;

function fixNetscape(){
	if(origWidth != window.innerWidth || origHeight != window.innerHeight){
		window.location.reload();
	}	
}
if(ns4){
	origWidth = window.innerWidth;
	origHeight = window.innerHeight;
	window.onresize = fixNetscape;
}
function newImage(src){
	img = new Image();
	img.src = src;
	return img;
}
function imageSwap(img,obj,div){
	if(ns4 && div != null){
		document.layers[div].document.images[img].src = obj.src;
	}else{
		document.images[img].src = obj.src;
	}
}
function getStyle(name, nest){
	nest = nest ? 'document.'+nest+'.' : '';
	return w3c ? document.getElementById(name).style : iex ? document.all[name].style : ns4 ? eval(nest+'document.'+name) : false;
}

Menus = new Object();
var curMenu = null;

MakeMenu = function(name,left,top,rollimg,rollout,rollover,rolldiv){
	this.name = name;
	this.left = left;
	this.top = top;
	this.timer = null;
	this.rollimg = rollimg;
	this.rollout = newImage(rollout);
	this.rollover = newImage(rollover);
	this.rolldiv = (rolldiv != null) ? rolldiv : null;
	this.obj = name+'Object';
	eval(this.obj+'=this');
}
MakeMenu.prototype.show = function(){
	clearTimeout(this.timer);
	getStyle(this.name).visibility = 'visible';
	imageSwap(this.rollimg,this.rollover,this.rolldiv);
	curMenu = this.name;
}
MakeMenu.prototype.hide = function(){
	this.timer = setTimeout(this.obj+'.hideIt()',500);
}
MakeMenu.prototype.hideIt = function(){
	getStyle(this.name).visibility = 'hidden';
	imageSwap(this.rollimg,this.rollout,this.rolldiv);
}
MakeMenu.prototype.startMenu = function(){
	var html;
	if(ns4){
		html = '<layer name="'+this.name+'" left="'+this.left+'" top="'+this.top+'" z-index="1000" visibility="hidden" ';
	}else{
		html = '<div id="'+this.name+'" style="position:absolute; left:'+this.left+'px; top:'+this.top+'px; z-index:1000; visibility:hidden" ';
	}
	html += 'onMouseOver="Menus.'+this.name+'.show()" onMouseOut="Menus.'+this.name+'.hide()">';
	return html;
}
hideCur = function(){
	if(curMenu != null){
		Menus[curMenu].hideIt();
		curMenu = null;
	}
}
endMenu = function(){
	 return ns4 ? '<\/layer>' : '<\/div>';
}
createMenu = function(name,left,top,rollimg,rollout,rollover,rolldiv){
	Menus[name] = new MakeMenu(name,left,top,rollimg,rollout,rollover,rolldiv);
}

// object name | left position | top position | rollover image name | normal image src | rollover image src | rollover div name (optional)
createMenu('submenu1', 149,  90, 'img_2', '/info/common/images/bt_about.gif', '/info/common/images/bt_about_on.gif');

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_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_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];}
}

// ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
// 
// Coded by Travis Beckham
// http://www.squidfingers.com | http://www.podlob.com
// If want to use this code, feel free to do so, but please leave this message intact.
//
// ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
// --- version date: 09/29/02 ---------------------------------------------------------

// Utility Functions

var dom = document.getElementById;
var iex = document.all;
var ns4 = document.layers;

function getElement(name, nest){
	nest = nest ? 'document.'+nest+'.' : '';
	var el = dom ? document.getElementById(name) : iex ? document.all[name] : ns4 ? eval(nest+'document.'+name) : false;
	el.css = ns4 ? el : el.style;
	el.getTop = function(){return parseInt(el.css.top) || 0};
	el.setTop = function(y){el.css.top=y};
	el.getHeight = function(){return ns4 ? el.document.height : el.offsetHeight};
	el.getClipHeight = function(){return ns4 ? el.clip.height : el.offsetHeight};
	return el;
}
function getMouse(e){
	return iex ? event.clientY : e.pageY;
}
function fixNetscape(){
	if(NS4origWidth != window.innerWidth || NS4origHeight != window.innerHeight){
		window.location.reload();
	}	
}
if(document.layers){
	NS4origWidth = window.innerWidth;
	NS4origHeight = window.innerHeight;
	window.onresize = fixNetscape;
}

// Scroll Drag Functions

function initScroller(){
	scrollSpeed = 6; // scrolling speed
	dragHeight = 19; // Height of scrollbar drag
	trackHeight = 143; // Height of scrollbar track
	upObj = getElement('up'); // Reference to the up arrow div
	downObj = getElement('down'); // Reference to the down arrow div
	dragObj = getElement('drag'); // Reference to the scrollbar drag div
	contentMaskObj = getElement('contentMask'); // Reference to the content mask div
	contentObj = getElement('content','contentMask'); // Reference to the content div
	trackTop = dragObj.getTop(); // Scrollbar top contraint
	trackBottom = (trackTop+trackHeight)-dragHeight; // Scrollbar bottom contraint
	contentMaskHeight = contentMaskObj.getClipHeight();// Height of the div that masks the content div
	contentHeight = contentObj.getHeight(); // Height of the content div
	scrollLength = (trackHeight-dragHeight)/(contentHeight-contentMaskHeight); // Height difference between the scrollbar track and the content
	scrollTimer = null;
	upObj.onmousedown = scrollUp;
	upObj.onmouseup = stopScroll;
	upObj.onmouseout = stopScroll;
	downObj.onmousedown = scrollDown;
	downObj.onmouseup = stopScroll;
	downObj.onmouseout = stopScroll;
	dragObj.onmousedown = startDrag;
	dragObj.ondragstart = function(){return false}; // for ie4.5 compatibility
	if(ns4){
		upObj.captureEvents(Event.MOUSEDOWN | Event.MOUSEUP | Event.MOUSEOUT);
		downObj.captureEvents(Event.MOUSEDOWN | Event.MOUSEUP | Event.MOUSEOUT);
		dragObj.captureEvents(Event.MOUSEDOWN);
	}
}
function startDrag(e){
	if((ns4 && e.which!=1) || (iex && event.button!=1)){
		return true; // Enables the right mousebutton
	}
	dragStartMouse = getMouse(e); // Holds the starting y mouse position
	dragStartOffset = dragObj.getTop(); // Holds the starting top position of the scrollbar drag
	document.onmousemove = drag;
	document.onmouseup = stopDrag;
	if(ns4) document.captureEvents(Event.MOUSEMOVE | Event.MOUSEUP);
	return false;
}
function stopDrag(){
	if(ns4) document.releaseEvents(Event.MOUSEMOVE | Event.MOUSEUP);
	document.onmousemove = null;
	document.onmouseup = null;
}
function drag(e){
	var currentMouse = getMouse(e);
	var mouseDifference = currentMouse-dragStartMouse;
	var dragDistance = dragStartOffset+mouseDifference;
	var dragMovement = (dragDistance<trackTop) ? trackTop : (dragDistance>trackBottom) ? trackBottom : dragDistance;
	var contentMovement = -(dragMovement-trackTop)*(1/scrollLength);
	dragObj.setTop(dragMovement);
	contentObj.setTop(contentMovement);
	if(iex){
		return false; // So ie-pc doesn't select the image
	}
}

// Scroll Arrow Functions

function scrollUp(){
	var contentMovement = contentObj.getTop()+scrollSpeed;
	if(contentMovement > 0){
		contentMovement = 0;
	}
	contentObj.setTop(contentMovement);
	updateDrag();
	scrollTimer = window.setTimeout('scrollUp()',25);
	return false;
}
function scrollDown(){
	var contentMovement = contentObj.getTop()-scrollSpeed;
	if(contentMovement < -(contentHeight-contentMaskHeight)){
		contentMovement = -(contentHeight-contentMaskHeight);
	}
	contentObj.setTop(contentMovement);
	updateDrag();
	scrollTimer = window.setTimeout('scrollDown()',25);
	return false;
}
function updateDrag(){
	var dragMovement = contentObj.getTop()*((trackHeight-dragHeight)/(contentHeight-contentMaskHeight));
	dragMovement = trackTop-Math.round(dragMovement);
	if(dragMovement < trackTop){
		dragMovement = trackTop;
	}else if(dragMovement > trackBottom){
		dragMovement = trackBottom;
	}
	dragObj.setTop(dragMovement);
}
function stopScroll(){
	if(scrollTimer){
		window.clearTimeout(scrollTimer);
		scrollTimer = null;
	}
}

window.onload = initScroller;

function openBrWindow(theURL,winName,features) { //v2.0
  sw1=window.open(theURL,winName,features);
  if(navigator.appName.charAt(0) == "N" &&
  navigator.appVersion.charAt(0) >= 3){
  sw1.focus();
  }
}
