(function($) {
	$.fn.jkWindow = function (options) {
		var opts = $.extend({}, $.fn.jkWindow.defaults, options);

	return this.each(function() {
		//alert("init");
		var thislink=jQuery(this);

		var ww = $(opts.winId);
		var wwbg = $(opts.winBg).appendTo("body");
		//var wwbg = $(opts.winBgId);
		//alert(wwbg.length);

		if (ww.length != 0) {
			jQuery(this).bind("click", function() {
				openWin();
				return false;
			});

			jQuery(this).bind("openAjax", function(e, dta) {
				opts.loadUrl = dta.url;
				//alert("openAjax");
				openWin();

				return false;
			});

			jQuery(this).bind("close", function() {
				closeWin();
			});
		}

		var openWin = function() {
			/*
			ww.css({
				top: eval(opts.calcTop),
				left: eval(opts.calcLeft)
			});
			*/
			if (jQuery.browser.msie && parseInt(jQuery.browser.version)< 7) { // fosie6
				wwbg.css("height", $(document).height());
			}
			
			ww.center();
			wwbg.css("opacity", "0.0");

			wwbg.bind("click", function() {
				closeWin();
				return false;
			});
			
			if (opts.pageLoader != undefined && opts.loadUrl != "") {
				//alert("pageloader");
				opts.pageLoader.trigger("loadPage", {url: opts.loadUrl });
			}

			ww.find(opts.closeId).bind('click', function() {
				closeWin();
				return false;
			});
			ww.fadeIn(opts.fadeTime);
			wwbg.fadeIn(opts.fadeTime);
		}
		
		var closeWin = function() {
			//ww.hide("fast");
			ww.fadeOut(opts.fadeTime);
			wwbg.hide();
		}

	});
	};
	$.fn.jkWindow.defaults = {
		winId: "_none_",
		fadeTime: 500,
		closeId: '#cancel',
		calcTop: "thislink.parent().parent().position().top - ww.height() + thislink.parent().parent().height() + 10",
		calcLeft: "thislink.parent().parent().position().left",
		pageLoader: undefined,
		loadUrl: "",
		winBg: "<div id='winBg'></div>"
	};
})(jQuery);

