jQuery.fn.floatdialog = function(id, options) {

	var Config = {
		backgroundcolor: "#000000",
		speed: 'slow',
		event: 'click',
		effect: true,
		move: 'default',
		closeClass: '.link_close'
	};

	if (options) {
		jQuery.extend(Config, options);
	};
	
	function brwstester() {
		return (document.compatMode && document.compatMode != "BackCompat") ? document.documentElement : document.body;
	}
	
	function display_mask(id) {
		var _id = id;
		
		if (Config.effect) {
			$("#floatdialog_mask_" + id).css('opacity', 0).show().animate({
				opacity: 0.33
			}, Config.speed, function() {
				$('#' + _id).show();
				$('#' + _id + ' input:first').focus();
			});
		}
		else {
			$("#floatdialog_mask_" + id).css({
				opacity: '0.33'
			}).show();
			$('#' + _id).show();
		}
	}
	
	function disable_mask(id){
		$(".disable_masking").hide();
		
		if (Config.effect) {
			$("#floatdialog_mask_" + id).fadeOut(Config.speed).fadeTo("", 100);
		}
		else {
			$("#floatdialog_mask_" + id).hide();
		}
	}
	
	function display_form(id) {
		
		if(id == 'dialog_forgot') {
			disable_mask('dialog_login')
		}
		
		display_mask(id);
	}

	$(document).ready(function(){
		if (!$("#floatdialog_mask_" + id).html()) {
			
			$("body").append('<div id="floatdialog_mask_' + id + '" style="display: none;left: 0px;top: 0px;z-index: 6000;position: absolute;background-color:' + Config.backgroundcolor + '">&nbsp;</div>');
			$("#floatdialog_mask_" + id).css({
				'width': '100%',
				'height': $(document.body).height()
			}).bind('click', function() {
				disable_mask(id);
			});
		
			if (Config.closeClass) {
				$(Config.closeClass).bind('click', function() {
					disable_mask(id);
				});
			}
		}
	});

	$("#" + id).hide().addClass('disable_masking');

	$(this).bind(Config.event, function(){
		display_form(id);
	});
}
