function showWindow(sel, e){
	voidWindowsMaxZIndex++;
	$(sel).css('z-index', voidWindowsMaxZIndex);
	var scrollTop = self.pageYOffset || (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop);
	var	scrollLeft = self.pageXOffset || (document.documentElement && document.documentElement.scrollLeft) || (document.body && document.body.scrollLeft);
		
	if(e!=false){
		if( (e.pageX+$(sel).width()) > ($(window).width()+scrollLeft) ){
			$(sel).css('left', ($(window).width()+scrollLeft-$(sel).width()-20)+'px');
		}else{
			$(sel).css('left', e.pageX);
		}
		
		if( e.pageY+$(sel).height() > $(window).height()+scrollTop ){
			$(sel).css('top', ($(window).height()+scrollTop-$(sel).height()-20)+'px');
		}else{
			$(sel).css('top', e.pageY);
		}
	}
	else{
		$(sel).css('top', scrollTop+(document.getElementsByTagName('html')[0].clientHeight-$(sel).height())/2+'px' );
		$(sel).css('left', scrollLeft+($(window).width()-$(sel).width())/2+'px' );	
	}
	
	$(sel).css('display', 'block');
}
var voidWindowsMaxZIndex=0;
jQuery.fn.transformToWindow = function(options){
 
	var options = jQuery.extend({
	    width: 200,
	    height: 200,
		left: "400px",
		top: "100px",
		background: "#FFFFFF",
		zIndex: 1010,
		title: "window title"
	},options);
	
	if(voidWindowsMaxZIndex==0)
	{
		voidWindowsMaxZIndex=options.zIndex;
	}
	
	//this.remove();
	
	$("body").append(this);
	
	this.attr("class", "window");
	
	//var scrollTop=self.pageYOffset || (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop);
	//var scrollLeft=self.pageXOffset || (document.documentElement && document.documentElement.scrollLeft) || (document.body && document.body.scrollLeft);	
	//alert($(window).width());
	
	this.css("top", options.top);
	this.css("left", options.left);
	this.css("width", options.width+"px");
	this.css("height", options.height+"px");
	this.css("position", "absolute");
	this.css("z-index", options.zIndex);
	
	var form;
	var displX=0; 	// �������� ���� ������������ ���� �� x 
	var displY=0;	// �������� ���� ������������ ���� �� y 
	form='<iframe style="position: absolute; z-index:-1;"></iframe>';							
	form+='<table class="borders" cellpadding="0" cellspacing="0">';
	
		form+='<tr valign="top">';
			form+='<td class="windowTopLeft"></td>';
			form+='<td class="windowTop">';
				form+='<div class="windowHeader">';
			        form+='<div style="margin-left: 10px;" class="windowTitle">';
			            form+=options.title;
			        form+='</div>';
			        form+='<div style="margin-right: 5px;" class="windowClose">';
			            form+='<a href="#"><img src="/img/window/close.gif"/></a>';
			        form+='</div>';
				form+='</div>';
			form+='</td>';
			form+='<td class="windowTopRight"></td>';										
		form+='</tr>';
		
		form+='<tr valign="top">';
			form+='<td class="windowLeft"></td>';
			form+='<td class="windowHeight">';
				form+='<div class="windowContent"><div>'+this.html();
				form+='</div></div>';
			form+='</td>';
			form+='<td class="windowRight"></td>';										
		form+='</tr>';
		
		form+='<tr valign="top">';
			form+='<td class="windowBottomLeft"></td>';
			form+='<td class="windowBottom">';
			
			form+='</td>';
			form+='<td class="windowBottomRight"></td>';										
		form+='</tr>';
		
	form+='</table>';
	
	this.html(form);
	
	var content=this.find(".windowContent");
	var window=this;
	var iframe=window.find('iframe');
	var header=this.find(".windowHeader");
	var close=this.find(".windowClose");
	
	this.find(".windowHeight").css("height", window.css("height"));
	
	//this.css("width", options.width+"px");
	//this.css("height", options.height+"px");
	
	//content.css("padding", "10px");
	content.css("width", (options.width-8)+"px");
	content.css("height", (options.height)+"px");
	iframe.css("width", window.css('width'));
	iframe.css("height", window.height() + 'px');
	iframe.css("border", "0px");
	
	function windowMove(event){
		window.css("left", event.pageX-displX);
		window.css("top", event.pageY-displY);
		
		return false;
	}
	
	function stopWindowMove()
	{
		$("#windowMoveBack").css("display", "none");
		$(document).unbind("mousemove");
		window.css("opacity", "1");
		content.css("display", "block");
	}
	
	function mouseDown(event){
		//alert("mouseDown");
		displX=event.pageX-window.offset().left;
		displY=event.pageY-window.offset().top;
		//content.css("display", "none");
		
		if($("#windowMoveBack").length==0)
		{
			$("body").append('<div id="windowMoveBack"></div>');
		}
		$("#windowMoveBack").css("width", $(document).width())+"px";
		$("#windowMoveBack").css("height", $(document).height()+"px");
		$("#windowMoveBack").css("z-index", options.zIndex-10);
		$("#windowMoveBack").css("display", "block");
		voidWindowsMaxZIndex++;
		$(window).css("z-index", voidWindowsMaxZIndex);
		//window.css("opacity", "0.7");
		$(document).bind("mousemove", windowMove);
		$(document).bind("mouseup", stopWindowMove);
		
		return false;
	}
	
	function closeWindow(){
		window.css("display", "none");
		voidWindowsMaxZIndex++;
		$(window).css("z-index", voidWindowsMaxZIndex);
		return false;
	}
	
	header.bind("mousedown", mouseDown);
	window.bind("click", function(){
		voidWindowsMaxZIndex++;
		$(window).css("z-index", voidWindowsMaxZIndex);
	})
	close.bind("mousedown", closeWindow);
	
	return this;
}    