/**
 * small popuper
 * version 0.0.0.0.1 ;)
 */
jQuery.fn.popup = function(show) {

	var self = jQuery.fn.popup;

	if(show && self.showing){
		self.$window.unbind('resize', self.setPosition);
		self.$body.unbind('scroll', self.setPosition);
		self.showing = false;
		self.$obj.hide();
	}
	
	self.obj = this,
	self.$obj = $(this);

	if (!self.$window) {
		self.$window = $(window);
		self.$body = $('body');	
	}
	
	self.$obj.hide();
	
	if (typeof document.body.style.maxHeight === "undefined") {
		self.$obj.css({
			position: 'absolute',
			zIndex: 99999
		});
		self.$window.bind('scroll', function(){
			self.setPosition();
		});
	}else{
		self.$obj.css({
			position: 'fixed',
			zIndex: 99999
		});
	}
	
	self.$body.append(self.$obj);
	
	self.setPosition = function(){
		var divH = self.$obj.height(),
			winH = self.$window.height(),
			divTop = (winH - divH)/2,
			divW = self.$obj.width(),
			winW = self.$window.width(),
			divLeft = (winW - divW)/2;

		if (typeof document.body.style.maxHeight === "undefined") {
			self.$obj.css({
				'top': self.$window.scrollTop() + divTop,
				'left': divLeft
			});
		}else{
			self.$obj.css({
				'top': divTop,
				'left': divLeft
			});
		}
	}
	
	self.$window.bind('resize', self.setPosition);
	self.$body.bind('scroll', self.setPosition);

	
	if(show){ // show
		
		self.showing = true;
		self.setPosition();
		self.$obj.show();
		
	} else { // hide
		
		self.$obj.hide();
		self.$window.unbind('resize', self.setPosition);
		self.$body.unbind('scroll', self.setPosition);
		self.showing = false;
		
	};
	
	return this;
};
