	var box, tempx, tempy, offsetx, offsety, dragapproved


	function _CloseOnEsc(e) {
		if (window.event) e = window.event;
		var unicode=e.keyCode? e.keyCode : e.charCode
		if (unicode == 27) { 
			//hidebox();
			try {hm('catBox')} catch(e) {}
			//try {hm('box');cancelUpload()} catch(e) {}
			return;
		}
	}
	document.onkeypress = _CloseOnEsc;

	function drag_drop(e){
		if (window.event) e = window.event;
		if (dragapproved){
			box.style.left=tempx+e.clientX-offsetx
			box.style.top=tempy+e.clientY-offsety			
			return false}
	}
	
	function initializedrag(e){
		if (window.event) e = window.event;

		box=document.getElementById('boxCode');
		var firedobj=e.srcElement? e.srcElement : e.target;
		if (!firedobj) {return;}
		var topelement="BODY";

		while (firedobj && firedobj.tagName!=topelement && firedobj.id!="dragbar"){
			firedobj=firedobj.parentNode;}
	
		if (firedobj && firedobj.id=="dragbar"){
			offsetx=e.clientX
			offsety=e.clientY

			tempx=getPosX(box)
			tempy=getPosY(box)

			dragapproved=true
			document.onmousemove=drag_drop}
	}

	document.onmousedown=initializedrag
	document.onmouseup=new Function("dragapproved=false")
		
	
	function hidebox(){
		box.style.display="none";
	}



function getPosX(obj) {
	var posX = 0;
	if (obj.offsetParent) {
		posX = obj.offsetLeft;
		while (obj = obj.offsetParent) {
			posX += obj.offsetLeft;
		}
	}
	return posX;
}
function getPosY(obj) {
	var posY = 0;
	if (obj.offsetParent) {
		posY = obj.offsetTop;
		while (obj = obj.offsetParent) {
			posY += obj.offsetTop;
		}
	}
	return posY;
}