function formSubmit(f) { 
	if (f._submitbutton) {
		if (f._submitbutton.length) {
			for (var i=0; i<f._submitbutton.length; i++) {
				f._submitbutton[i].value=' - - - - - - '; f._submitbutton[i].disabled=true;
			}
		} else {
			f._submitbutton.value=' - - - - - - '; f._submitbutton.disabled=true;
		}
	}
	if (f._cancelbutton) { f._cancelbutton.value=' - - - - - - '; f._cancelbutton.disabled=true; }
}

function popup(url, name, w, h) { window.open(url, name, 'width='+w+',height='+h+',menubar=no,scrollbars=no,toolbars=no')}

function swap(who, state) {
  var image = eval('document.images.'+who+'');
  var source = image.src.substr(0, image.src.indexOf('.gif')-1);
  image.src = source + state + '.gif';
}

function _goto(w) {
  document.gotoform.action = w;
  document.gotoform.submit();
}


var IE = document.all ? true : false;
if (!IE) document.captureEvents(Event.MOUSEMOVE);
document.onmousemove = getMouseXY;

var currMouseX = 0;
var currMouseY = 0;

function getMouseXY(e) {
	if (IE) { // grab the x-y pos.s if browser is IE
		currMouseX = event.clientX + document.body.scrollLeft;
		currMouseY = event.clientY + document.body.scrollTop;
	} else {  // grab the x-y pos.s if browser is NS
		currMouseX = e.pageX;
		currMouseY = e.pageY;
	}

	// catch possible negative values in NS4
	if (currMouseX < 0) { currMouseX = 0; }
	if (currMouseY < 0) { currMouseY = 0; }  

	return true;
}

function finished_showing(eff) {
	var d = eff.element;
	d.isopen = true;
	d.isopenining = false;
	if (d.scheduleclose) {
		close_slide(d.id);
		d.scheduleclose = false;
	}
}

function finished_hiding(eff) {
	var d = eff.element;
	d.isopen = false;
	d.isopenining = false;
}

function getScrollY() {
  var  scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
  }
  return scrOfY;
}

function show_slide(id, imagesrc, title, description) {
	var d = document.getElementById('slide_' + id);
	if (d.isopen || d.isopenining) {
		return false;
	}

	//--- close all other slides
	var divs = document.getElementsByTagName('div');
	for (var i = 0; i < divs.length; i++) {
		if (divs[i].id.indexOf('slide_') != -1) {
			close_slide(divs[i].id);
		}
	}

	d.innerHTML = '<p style="padding: 10px;"><img src="' + imagesrc + '" border=0 onClick="close_slide(\'slide_' + id + '\')"/><br/><b>' + title + '</b>' + (description ? '<br/>' + description : '') + '</p>';

	var dwidth = parseInt(d.style.width.replace(/px/i, ''));
	var dheight = parseInt(d.style.height.replace(/px/i, ''));

	var newx = currMouseX - parseInt(dwidth / 2);
	var newy = currMouseY - parseInt(dheight / 2);
	if (newx < 0) { newx = 0; }
	if (newy < 0) { newy = 0; }

	var documentRealHeight = document.body.clientHeight + getScrollY();

	if (newx + dwidth > document.body.clientWidth) { newx =  document.body.clientWidth - dwidth - 24; }
	if (newy + dheight > documentRealHeight) { newy = documentRealHeight - dheight - 24; }

	var tmpimg = new Image();
	tmpimg.src = imagesrc;

	d.style.top = newy + 'px';
	d.style.left = newx + 'px';

	

	d.isopenining = true;
	Effect.Appear(d, {duration: 0.5, afterFinish: finished_showing} );
	return false;
}

function close_slide(divid) {
	var d = document.getElementById(divid);
	if (d.isopenining) {
		d.scheduleclose = true;
	} else if (d.isopen) {
		d.isclosing = true;
		Effect.Fade(divid, {duration: 0.2, afterFinish: finished_hiding} );
	}
}
