var useragent = navigator.userAgent;
var browserCheck = (document.all) ? 1 : 0;

nfx = new function(){
	var element;
	// public methods
	/**
	 * public method,
         * 	nfx.drag(element:Object[, start:Function[, end:Function[, callback:Function[, position:Object]]]]):Void
         * @param	Object		X/HTML Element to make draggable
         * @param	Function	callback to call with element as scope on drag init
         * @param	Function	callback to call with element as scope on drag end
         * @param	Function	callback to call with element as scope during drag
         * @param	Object		object with 4 properties:
         * 				$x, $y, x$, y$
         *                              Each propery should be an Int32 or null but must be present.
         * @example
         * 		nfx.drag(document.getElementById("some-div"));	// base
         * 		nfx.drag(someDiv, initCallback);			// base with an init callback
         * 		nfx.drag(someDiv, null, endCallback);		// base with an end callback
         * 		nfx.drag(someDiv, null, null, null, {$y:10, y$:10, $x:null, x$:null});
	 *									// blocked Y position
	 */
	this.onback = function() {
		var a = document.getElementById('HiddenBack');   
		a.style.top = 0;   
		a.style.left = 0;   
		a.style.display = "";   
		var browserSize = getBrowserWindowSize();
		a.style.height = browserSize.height + 'px';  
	}
	function getBrowserWindowSize() {
		var de = document.documentElement;

		return {
			'width': (window.innerWidth || (de && de.clientWidth)|| document.documentElement.clientWidth),
			'height':(window.innerHeight || (de && de.clientHeight ) || document.documentElement.clientHeight)
			}
	};
	this.center = function() {
		
		var win = document.getElementById('win');

		if(!win) return;
		var x,y,pgX,pgY;
		var browserSize = getBrowserWindowSize();
		x = browserSize.width;
		y = browserSize.height;	//ºê¶ó¿ìÀúÃ¢ ³ôÀÌ
		
		pgX = win.clientWidth+120;
		pgY = win.clientHeight+120;	//ÆË¾÷Ã¢ ³ôÀÌ+120

		var left = (x-pgX)/2;
		//var top = (y-pgY)/2;
		var top = document.documentElement.scrollTop + ((document.documentElement.clientHeight - pgY) / 2);

		if(left < 0 ) left = 0;
		if(top < 0 ) top = 0;

		win.style.left =  left + "pt";
		win.style.top =  top + "px";

		var back = document.getElementById('HiddenBack');   
		if(back)
		{
			//back.style.height = browserSize.height + 'px';  
			back.style.height = document.documentElement.scrollHeight + 'px';
		}
	}
	this.drag = function(elementName){ 
		this.onback();
		element = document.getElementById( elementName );
		this.center();
		/*click_element = document.getElementById( elementName + '_bar' );
		click_element.style.cursor = 'move';
		var	tmp = $element(element).nfx.drag;
		nfx.$event(click_element, "onmousedown", function(evt){
			tmp.start = true;
			tmp.onmousedown = d.onmousedown;
			tmp.onmouseup = d.onmouseup;
			d.onmouseup = element.onmouseup;
			return false;
		});
		nfx.$event(click_element, "onmouseup", function(evt){
			tmp.start = false;
			d.onmousedown = tmp.onmousedown;
			d.onmouseup = tmp.onmouseup;
			return false;
		});
		nfx.$event(d, "onmousemove", function(evt){
			var	x = evt.clientX,
				y = evt.clientY,
				size = {x: x - tmp.x, y: y - tmp.y};
			if(tmp.start) {
				nfx.position(element, size);
			}
			else{
				tmp.x = x - element.offsetLeft;
				tmp.y = y - element.offsetTop;
			};
			return false;
		});*/
	};
	this.close = function() {
		var a = document.getElementById('HiddenBack');   
		a.style.display='none';
		if(!element) return;
		element.style.display = "none";
	}
	this.position = function(element, position){
		var	style = $element(element).style;
		style.position = "absolute";
		style.left = position.x + "px";
		style.top = position.y + "px";
	};

	this.$event = function(element, tmp, callback){
		var	value = element[tmp];
		element[tmp] = function(evt){
			if(!evt)
				evt = w.event;
			if(value)
				value.call(this, evt);
			return callback.call(this, evt);
		};
	};

	this.$position = function(element){
		var	position = {x:element.offsetLeft, y:element.offsetTop};
		while(element = element.offsetParent){
			position.x += element.offsetLeft;
			position.y += element.offsetTop;
		};
		return position;
	};

	this.$size = function(element){
		return {width:element.offsetWidth, height:element.offsetHeight};
	};

	this.size$ = function(element, size){
		var	style = element.style;
		style.width = size.width + "px";
		style.height = size.height + "px";
	};

	function $element(element){
		if(!element.nfx)
			element.nfx = {color:0, drag:{}, fade:0, move:0, scroll:0, size:0};
		return element;
	};

	function $end(x, y, speed){
		return x < y ? min(x + speed, y) : max(x - speed, y);
	};

	function $setInterval(element, interval, speed, start, position, style, tmp, callback){
		clearInterval(element.nfx[interval]);
		element.nfx[interval] = setInterval(function(){
			start[style[0]] += (position[style[0]] - start[style[0]]) * speed;
			start[style[1]] += (position[style[1]] - start[style[1]]) * speed;
			nfx[tmp](element, start);
			if(round(start[style[0]]) == position[style[0]] && round(start[style[1]]) == position[style[1]]){
				nfx[tmp](element, position);
				$callback(element, interval, callback);
			}
		}, 1);
	};
	var	w = window,
		d = document,
		max = Math.max,
		min = Math.min,
		round = Math.round;
};
window.onresize =  nfx.center;

var tempX = 0;
var tempY = 0;

function getMouseXY() {
tempX = event.clientX + document.documentElement.scrollLeft;
tempY = event.clientY + document.documentElement.scrollTop;

  if(tempX < 0)
	tempX = 0;
  if(tempY < 0)
	tempY = 0;
  alert(tempY);
}
//document.onmousedown = getMouseXY;