arrow1upon = new Image;
arrow1upon.src = "/cdf/images/arrow1upon.gif";
arrow1dnon = new Image;
arrow1dnon.src = "/cdf/images/arrow1dnon.gif";
arrow2upon = new Image;
arrow2upon.src = "/cdf/images/arrow2upon.gif";
arrow2dnon = new Image;
arrow2dnon.src = "/cdf/images/arrow2dnon.gif";
arrow1upoff = new Image;
arrow1upoff.src = "/cdf/images/arrow1upoff.gif";
arrow1dnoff = new Image;
arrow1dnoff.src = "/cdf/images/arrow1dnoff.gif";
arrow2upoff = new Image;
arrow2upoff.src = "/cdf/images/arrow2upoff.gif";
arrow2dnoff = new Image;
arrow2dnoff.src = "/cdf/images/arrow2dnoff.gif";
var up1arrow, dn1arrow;
var up2arrow, dn2arrow;
var galimg1, galimg2, galpics, galload;
scroller = new Object;

function initGallery() {
	galimg1 = document.getElementById('galleryimage1');
	galimg2 = document.getElementById('galleryimage2');
	galpics = document.getElementById('galpicimages');
	galload = document.getElementById('galpicloading');

	scroller.tnboxobj = document.getElementById('gallerytnbox');
	scroller.tnpicsobj = document.getElementById('gallerytnpics');
	scroller.scrollup = scrollUp;
	scroller.scrolldown = scrollDown;
	scroller.xpos = 0;
	scroller.ypos = 0;

	up1arrow = document.getElementById('arrow1up');
	up1arrow.onmouseover = startScroll;
	up1arrow.onmouseout = stopScroll;
	up1arrow.upward = 0;
	up1arrow.overimg = arrow1upon.src;
	up1arrow.offimg = arrow1upoff.src;
	up1arrow.scroller = scroller;

	up2arrow = document.getElementById('arrow2up');
	up2arrow.onmouseover = startScrollFast;
	up2arrow.onmouseout = stopScroll;
	up2arrow.upward = 0;
	up2arrow.overimg = arrow2upon.src;
	up2arrow.offimg = arrow2upoff.src;
	up2arrow.scroller = scroller;

	dn1arrow = document.getElementById('arrow1dn');
	dn1arrow.onmouseover = startScroll;
	dn1arrow.onmouseout = stopScroll;
	dn1arrow.upward = 1;
	dn1arrow.overimg = arrow1dnon.src;
	dn1arrow.offimg = arrow1dnoff.src;
	dn1arrow.scroller = scroller;

	dn2arrow = document.getElementById('arrow2dn');
	dn2arrow.onmouseover = startScrollFast;
	dn2arrow.onmouseout = stopScroll;
	dn2arrow.upward = 1;
	dn2arrow.overimg = arrow2dnon.src;
	dn2arrow.offimg = arrow2dnoff.src;
	dn2arrow.scroller = scroller;
}

function scrollUp() {
	var minheight = this.tnpicsobj.offsetHeight - this.tnboxobj.offsetHeight;

	if (this.ypos > -minheight) {
		this.ypos -= 5;
		this.tnpicsobj.style.left = this.xpos + 'px';
		this.tnpicsobj.style.top = this.ypos + 'px';
	} else {
		clearInterval(this.intervalID);
	}
}

function scrollDown() {
	if (this.ypos < 0) {
		this.ypos += 5;
		this.tnpicsobj.style.left = this.xpos + 'px';
		this.tnpicsobj.style.top = this.ypos + 'px';
	} else {
		this.tnpicsobj.style.top = '0px';
		clearInterval(this.intervalID);
	}
}

function startScroll() {
	this.src = this.overimg;
	if (this.upward) {
		this.intervalID = setInterval("up1arrow.scroller.scrollup()", 50);
	} else {
		this.intervalID = setInterval("dn1arrow.scroller.scrolldown()", 50);
	}
}

function startScrollFast() {
	this.src = this.overimg;
	if (this.upward) {
		this.intervalID = setInterval("up2arrow.scroller.scrollup()", 3);
	} else {
		this.intervalID = setInterval("dn2arrow.scroller.scrolldown()", 3);
	}
}

function stopScroll() {
	this.src = this.offimg;
	clearInterval(this.intervalID);
}

var gallerybusy;
function doGallery (code) {
	if (gallerybusy) {
		return;
	}
	gallerybusy = 1;
	setTimeout("clearGalleryBusy()", 10000);
	galload.style.background = 'url(' + galimg2.src + ') no-repeat'; //'url([var IMAGE_DIR]/image.gif)';
	//galload.style.backgroundRepeat = 'no-repeat';
	galload.style.visibility = 'visible';
	makeRequest('/cgi-bin/cdf/gallery/gallery_pic.html?mv_arg=' + code);
}

function clearGalleryBusy() {
	gallerybusy = 0;
}

function makeRequest(url) {
	var http_request = false;

	if (window.XMLHttpRequest) { // Mozilla, Safari, ...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
		}
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}

	if (!http_request) {
		alert('Trouble with XMLHTTP instance');
		return false;
	}

	http_request.onreadystatechange = function() { changeContents(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function changeContents(http_request) {
	try {
		if (http_request.readyState == 4) {
			if (http_request.status == 200) {
				galimg1.src = galimg2.src;
				galpics.style.left = '0px';
				document.getElementById('galpicimg2').innerHTML = http_request.responseText;
				galimg2 = document.getElementById('galleryimage2');
				galimg2.onload = function() { slidePics(); };
			} else {
				alert(http_request.status + ': Sorry, there was a problem with your request. Please try again.');
			}
		}
	}
	catch( e ) {
		alert('Caught Exception: ' + e.description);
	}
}

function slidePics() {
	galload.style.visibility = 'hidden';
	galpics.slideleft = slideLeft;
	galpics.xpos = 0;
	galpics.xpossave = 0;
	galpics.speed = 1;
	galpics.maxspeed = 20;
	galpics.endpos = 595;
	galpics.intervalID = setInterval("galpics.slideleft()", 20);
}

function slideLeft() {
	if (galpics.xpos % 2) {
		if (galpics.xpos > -(galpics.endpos / 2)) {
			if (galpics.speed < galpics.maxspeed + 1) {
				galpics.speed += 1;
				galpics.xpossave = -galpics.xpos;
			}
		} else if (galpics.xpos < -(galpics.endpos - galpics.xpossave - galpics.maxspeed - 1)) {
			if (galpics.speed > 1) {
				galpics.speed -= 1;
			}
		}
	}

	if (galpics.xpos > -(galpics.endpos - galpics.speed)) {
		galpics.xpos -= galpics.speed;
		galpics.style.left = this.xpos + 'px';
	} else {
		galpics.style.left = -galpics.endpos + 'px'
		clearInterval(galpics.intervalID);
		clearGalleryBusy();
	}
}

