// 1k DHTML API
d=document;l=(d.layers)?1:0;op=navigator.userAgent.toLowerCase().indexOf('opera')!=-1;
function gE(e,f){if(l){f=(f)?f:self;V=f.document.layers;if(V[e])return V[e];for(W=0;W<V.length;)return(gE(e,V[W++]));}if(d.all)return d.all[e];return d.getElementById(e);}
function sE(e){if(l)e.visibility='show';else e.style.visibility='visible';}
function hE(e){if(l)e.visibility='hide';else e.style.visibility='hidden';}
function sZ(e,z){if(l)e.zIndex=z;else e.style.zIndex=z;}
function sX(e,x){if(l)e.left=x;else if(op)e.style.pixelLeft=x;else e.style.left=x;}
function sY(e,y){if(l)e.top=y;else if(op)e.style.pixelTop=y;else e.style.top=y;}
function gY(e){if(l)return e.top;else if(op) return e.style.pixelTop; else return e.style.top;}
function sW(e,w){if(l)e.clip.width=w;else if(op)e.style.pixelWidth=w;else e.style.width=w;}
function sH(e,h){if(l)e.clip.height=h;else if(op)e.style.pixelHeight=h;else e.style.height=h;}
function sC(e,t,r,b,x){if(l){X=e.clip;X.top=t;X.right=r;X.bottom=b;X.left=x;}else e.style.clip='rect('+t+' '+r+' '+b+' '+x+')';}
function wH(e,h){if(l){Y=e.document;Y.write(h);Y.close();}if(e.innerHTML)e.innerHTML=h;}
function aE(o,e,f,c){if(o.addEventListener)o.addEventListener(e,f,c);else if(o.attachEvent)o.attachEvent("on"+e,f);else eval("o.on"+e+"="+f);}
function gET(e){if (e.target) return e.target; else return e;} //getEventTartget, untested
function gV(e) { //Visibility
	r=false;
	if(l) {
		if(e.visibility=="show") r=true;
		return r;
	}
	if(e.style.visibility=="visible") r=true;
	return r;	
}
function gO(elementName) {  // element, layername [, layername], type
	var cEl;
	if (document.getElementById) {
		cEl = document.getElementById(elementName);
	}
	else if (document.layers) {
		if (gO.arguments.length == 1) {
			cEl = eval("document.layers['" + elementName + "']");
		} else if (gO.arguments[1] == 'doc') {
			cEl = eval("document.layers['" + elementName + "'].document");
		} else if (gO.arguments[1] == 'img') {
			cEl = eval("document.images['" + elementName + "']");
		} else if (gO.arguments[1] == 'form') {
			cEl = eval("document.forms['" + elementName + "']");
		} else if (gO.arguments.length>1) { // 
			cEl = "document.layers['" + gO.arguments[1] + "']";
			for (var i=2;i<gO.arguments.length;i++) {
				if ( (gO.arguments[i] != 'doc') && (gO.arguments[i] != 'img') && (gO.arguments[i] != 'form') ) {
					cEl = cEl + ".document.layers['" + gO.arguments[i] + "']";
				}
			}
			if (gO.arguments[gO.arguments.length-1] == 'img')  {  
				cEl = cEl + ".document.images['" + elementName + "']";
			} else if (gO.arguments[gO.arguments.length-1] == 'form')  {
				cEl = cEl + ".document.forms['" + elementName + "']";
			} else {
				cEl = cEl + ".document.layers['" + gO.arguments[0] + "']";
				if (gO.arguments[gO.arguments.length-1] == 'doc') {
				cEl = cEl + ".document";
				}
			} 
			cEl = eval(cEl);
		} else {
			cEl = eval("document.layers['" + gO.arguments[1] + "'].document." + elementName);
		}
	} else if (document.all) {
		cEl = eval('document.all.' + elementName);
	} 
	return cEl;
}

function moveLayer(divName,posX,posY) {
   if(document.layers) {
      document.layers[divName].moveTo(posX,posY);
   } else if (document.all) {
      gO(divName).style.pixelLeft = posX;
      gO(divName).style.pixelTop = posY;
   } else {
      gO(divName).style.left = posX + "px";
      gO(divName).style.top = posY + "px";
   }
}

function getWidth(divName) {
   if(document.layers) {
      var divs="'" + divName + "','";
      for (var i=getWidth.arguments.length-1; i>0;i--){
         divs += getWidth.arguments[i]+"','";
      }
      divs += "doc'";
      tWidth = eval("gO(" + divs + ").width");
   } else {
      tWidth = gO(divName).offsetWidth;
   }
   return tWidth;	
}

function gXY(el) {
	var ie=navigator.userAgent.indexOf("MSIE");
	var x=0;
	var y=0;
	if (ie!=-1) {
		do {
			x+=el.offsetLeft;
			y+=el.offsetTop;
			el=el.offsetParent;
		} while (el!=null);
	}
	else {
		x=el.offsetLeft;
		y=el.offsetTop;
	}
	alert ('x:'+el.pageX);
	var r = new XY(x,y);
	alert('hi');
	alert(r.y);
	return r;
}

function XY(x,y) {
	alert('const:x='+x+',y='+y);
	this.x = x;
	this.y = y;
}
