var ua		= navigator.userAgent;
var opera	= /opera [56789]|opera\/[56789]/i.test(ua);
var ie		= !opera && /msie [56789]/i.test(ua);
var moz		= !opera && /mozilla\/[56789]/i.test(ua);
AcademaWinClass.isSupported = typeof document.createElement != "undefined" &&	typeof document.documentElement != "undefined" &&	typeof document.documentElement.offsetWidth == "number";
function superInstance() { return eval( this.className + ".prototype" ); }
function instanceOf( obj, clazz ) { return obj instanceof clazz; }
Object.prototype.superInstance = superInstance;
function pointLocation(x,y,scale,t,nls) {return "http://www.geabios.com/frames/public.asp?SERVAR="+document.domain+"&X="+x+"&Y="+y+"&S="+scale+"&T="+t+"&NLS="+nls;}
function fastAddresses() {return "http://www.geabios.com/frames/fastaddresses.asp?NLS=SI";}
function AcademaWinClass(pozx,pozy,width,height,url,scrolling) {
	if( scrolling == null ) scrolling = false;
	var oElement = document.createElement('div');
	document.body.appendChild(oElement);
	this.document = oElement.ownerDocument || oElement.document;
	this.className = 'AcademaWinClass';
	if( AcademaWinClass.isSupported && oElement ) {
		this.element = oElement; this.element._window = this; this.element.unselectable = "on";	this.element.className = "window";
		this.element.style.top = pozy + "px";	this.element.style.left = pozx + "px"; this.element.style.width = width + "px"; this.element.style.height = height + "px";
		if( opera ) this.element.innerHTML = '<div class="handle" style="text-align:left;width:'+(width-((ie)?0:4))+'px"><span style="color:black;text-decoration:none;padding-left:20px;"><b>GeaBios - Public Service</b></div></span><img style="position:absolute;top:3px;left:3px;" src="http://www.geabios.com/dhtml/alayout/wclose.gif" onclick="javascript:this.parentNode._window.kill()"><iframe src="http://www.geabios.com/empty.htm" name="geabios" class="aframe" scrolling="'+(scrolling?'yes':'no')+'"></iframe>';
		else this.element.innerHTML = '<iframe style="border:0px;width:'+(width-((ie)?0:4))+'px;height:20px;position:absolute:top:0px;left:0px;" scrolling="no"></iframe><div class="handle" style="text-align:left;width:'+(width-((ie)?0:4))+'px"><span style="color:black;text-decoration:none;padding-left:20px;"><b>GeaBios - Public Service</b></div></span><img style="position:absolute;top:3px;left:3px;" src="http://www.geabios.com/dhtml/alayout/wclose.gif" onclick="javascript:this.parentNode._window.kill()"><iframe src="http://www.geabios.com/empty.htm" name="geabios" class="aframe" scrolling="'+(scrolling?'yes':'no')+'"></iframe>';
		this.element.handle = (this.element.getElementsByTagName('div'))[0]; this.element.handle._window = this; this.windowName="geabios";
	}
	if (AcademaWinClass.isSupported && oElement) {
		this.element.handle.onmousedown	= AcademaWinClass.eventHandlers.onmousedown;
		var ifrm = (this.element.getElementsByTagName('iframe'))[(opera?0:1)]; ifrm.src = url; ifrm.style.width = (width-4)+"px"; ifrm.style.height = (height-18)+"px";
	}
	this.kill = function() {try {this.element.innerHTML = "";document.body.removeChild(this.element);} catch(e) {}}
}

AcademaWinClass.eventHandlers = {
	getEvent:	function (e, el) {
		if (!e) { if (el) e = el.document.parentWindow.event;	else e = window.event; }
		if (!e.srcElement) { var el = e.target; while (el != null && el.nodeType != 1) el = el.parentNode; e.srcElement = el; }
		if (typeof e.offsetX == "undefined") { e.offsetX = e.layerX; e.offsetY = e.layerY; }
		return e;
	},
	getDocument:	function (e) { if (e.target) return e.target.ownerDocument; return e.srcElement.document; },
	getAcademaWinClass:	function (e) {
		var el = e.target || e.srcElement;
		while (el != null && el._window == null) el = el.parentNode;
		if (el) return el._window;
		return null;
	},
	getHandle:	function (e) {
		var el = e.target || e.srcElement;
		var re = /handle/;
		while (el != null && !re.test(el.className)) el = el.parentNode;
		return el;
	},
	stopBubble:		function(e) {
		if( ie ) e.cancelBubble = true;
		else {e.preventDefault(); e.stopPropagation()};
	},
	onmousedown:	function (e) {
		e = AcademaWinClass.eventHandlers.getEvent(e, this);
		var s = this._window;
		if (s.element.focus) s.element.focus();
		AcademaWinClass._currentInstance = s;
		var doc = s.document;
		if (doc.addEventListener) {
			doc.addEventListener("mousemove", AcademaWinClass.eventHandlers.onmousemove, true);
			doc.addEventListener("mouseup", AcademaWinClass.eventHandlers.onmouseup, true);
		}
		else if (doc.attachEvent) {
			doc.attachEvent("onmousemove", AcademaWinClass.eventHandlers.onmousemove);
			doc.attachEvent("onmouseup", AcademaWinClass.eventHandlers.onmouseup);
			doc.attachEvent("onlosecapture", AcademaWinClass.eventHandlers.onmouseup);
			s.element.setCapture();
		}
		s.movingFrame = document.createElement("div");
		s.movingFrame.className = "moving-window";
		s.movingFrame.style.top = s.element.style.top;
		s.movingFrame.style.left = s.element.style.left;
		s.movingFrame.style.width = s.element.style.width;
		s.movingFrame.style.height = (parseInt(s.element.style.height) + 6) + "px";
		document.body.appendChild(s.movingFrame);
		if (AcademaWinClass.eventHandlers.getHandle(e)) {
			AcademaWinClass._windowDragData = {
				startX:	(moz ? e.pageX : e.clientX + document.body.scrollLeft),
				startY:	(moz ? e.pageY : e.clientY + document.body.scrollTop),
				dx:			(moz ? e.pageX : e.clientX + document.body.scrollLeft) - parseInt(s.element.style.left),
				dy:			(moz ? e.pageY : e.clientY + document.body.scrollTop) - parseInt(s.element.style.top),
				_window:		s
			};
		}
		AcademaWinClass.eventHandlers.stopBubble(e);
	},
	onmousemove:	function (e) {
		e = AcademaWinClass.eventHandlers.getEvent(e, this);
		if (AcademaWinClass._windowDragData) {
			var s = AcademaWinClass._windowDragData._window;
			s.movingFrame.style.left = ((moz ? e.pageX : e.clientX + document.body.scrollLeft) - AcademaWinClass._windowDragData.dx) + "px";
			s.movingFrame.style.top = ((moz ? e.pageY : e.clientY + document.body.scrollTop) - AcademaWinClass._windowDragData.dy) + "px";
			return false;
		}
		AcademaWinClass.eventHandlers.stopBubble(e);
	},
	onmouseup:	function (e) {
		e = AcademaWinClass.eventHandlers.getEvent(e, this);
		var s = AcademaWinClass._currentInstance;
		var doc = s.document;
		if (doc.removeEventListener) {
			doc.removeEventListener("mousemove", AcademaWinClass.eventHandlers.onmousemove, true);
			doc.removeEventListener("mouseup", AcademaWinClass.eventHandlers.onmouseup, true);
		}
		else if (doc.detachEvent) {
			doc.detachEvent("onmousemove", AcademaWinClass.eventHandlers.onmousemove);
			doc.detachEvent("onmouseup", AcademaWinClass.eventHandlers.onmouseup);
			doc.detachEvent("onlosecapture", AcademaWinClass.eventHandlers.onmouseup);
			s.element.releaseCapture();
		}
		if (AcademaWinClass._windowDragData) {
			var wc = AcademaWinClass._windowDragData._window;
			wc.element.style.left = (parseInt(wc.element.style.left) + ((moz ? e.pageX : e.clientX + document.body.scrollLeft) - AcademaWinClass._windowDragData.startX)) + "px";
			wc.element.style.top = (parseInt(wc.element.style.top) + ((moz ? e.pageY : e.clientY + document.body.scrollTop) - AcademaWinClass._windowDragData.startY)) + "px";
			document.body.removeChild(s.movingFrame);
			AcademaWinClass._windowDragData = null;
			window.defaultStatus = '';
		}
		AcademaWinClass._currentInstance = null;
		AcademaWinClass.eventHandlers.stopBubble(e);
	}
}
document.write('<style type="text/css">\n'
	+'.window {visibility:visible;position:absolute;background:white;margin:0px;width:438px;height:436px,top:20px;left:20px;z-index:10000}\n'
	+'.moving-window {position:absolute;margin:0px;width:438px;height:442px;top:20px;left:20px;border:3px solid black;z-index:10010}\n'
	+'.handle {position:absolute;background:rgb(66,174,189);margin:0px;top:0px;left:0px;padding-left:0px;height:20px;border:2px solid  #EEEEEE;border-bottom:2px solid black;border-right:2px solid black;}\n'
	+'.aframe {position:absolute;top:20px;left:0px;background:#dddddd;margin:0px;width:434px;height:416px;border:2px solid #EEEEEE;border-bottom:2px solid black;border-right:2px solid black;}\n'
	+'</style>');

