(function ($) {
	$.fn.lithiumWindow = function (options) {

		var defaults = {
			width: 480,
			padding: 1
		}
		
		options = $.extend(defaults, options);

		var el = $(this);
		
		$("body").append($('<div class="ui-overlay"><div class="ui-widget-overlay"></div></div>'));
		
		if (el.find('.popin-inner').length == 0) {
			var inner = $('<div></div>');
			inner.addClass('popin-inner');
				/*.css('overflow-y', 'auto')
				.css('overflow-x', 'hidden');*/
			el.wrapInner(inner);
		}
		
		if (el.find('.popin').length == 0) {
			var close = $('<a></a>');
			close.css('cursor', 'pointer');
			close.addClass('close-popin');
			el.prepend(close);
		
			close.click(function(e) {
				e.preventDefault();
				el.lithiumWindow_close();
			});
		}
		
		var left = ($(window).width() - (options.width + 2*options.padding)) /2;

		el
			.addClass('ui-widget').addClass('ui-widget-content').addClass('ui-corner-all')
			.css('position', 'absolute').css('width', options.width+'px').css('padding', options.padding+'px')
			.css('z-index', 100).css('left', left+'px').show();
		
		el.lithiumWindow_resize();

		var heightOverlay = Math.max (($("body").height() +150), $(window).height());
		
		$(".ui-widget-overlay").width($("body").width()).height(heightOverlay);
		$(".ui-widget-overlay").css('z-index', 99);
	};
	
	$.fn.lithiumWindow_resize = function() {
		
		var height = $(this).find(".popin-inner").height();
		
		// si ça dépasse de l'écran
		if (height > ($(window).height() - 40)) {
			
			var thetop = $(window).scrollTop() + 20;
			//height = $(window).height() - 40;
			
			//$(this).height(height);
			//$(this).find(".popin-inner").css('overflow-y', 'auto');
			//$(this).height((height + 2*padding));
			//$(this).find(".popin-inner").height( (height-10) ).css('overflow-y', 'auto').css('overflow-x', 'hidden');
		} else {
			var padding = $(this).css('padding').replace('px','');
			var thetop = $(window).scrollTop() + ($(window).height() - (height + 2*padding)) /2;
		}
		
		$(this).css('top', thetop+'px');
	}

	$.fn.lithiumWindow_close = function () {
		$(".ui-overlay").remove(); 
		$(".ui-widget-shadow").remove();
		$(this).hide();
	};
	
	$.fn.lithiumWindow_html = function (html) {
		$(this).find('.popin-inner').html(html);
		$(this).lithiumWindow_resize();
	}
	
	$.fn.lithiumWindow_load = function(url, params) {
		var el = $(this);
		$(this).lithiumWindow_html('<div class="waiting-box"></div>');
		/*$(this).find('.popin-inner').load(url, params, function() {
			el.lithiumWindow_resize();
		});*/
		$.get(url, params, function(html) {
			el.find('.popin-inner').html(html);
			el.lithiumWindow_resize();
		})
	}
})(jQuery);
