(function($) {

	$.alertBoxForFocusObj = null;
	$.alertBoxRegional = new Array();

	$.alertBoxRegional['ko'] = {
		closeText: '닫기',
		okayText: '확인',
		cancelText: '취소',
		yesText: '예',
		noText: '아니'
	};

	$.alertBoxRegional['en'] = {
		closeText: 'Close',
		okayText: 'OK',
		cancelText: 'Cancel',
		yesText: 'Yes',
		noText: 'No'
	};

	$.alertBoxLocale = "ko";

	$.alertBox = function(params) {
		if ($("#alert_box_div").length) {
			$("#alert_box_div").remove();
		}

		if (params.focus)
			$.alertBoxForFocusObj = params.focus;

		if (!params.buttons) {
			params.buttons = [ {
				text : $.alertBoxRegional[$.alertBoxLocale].okayText,
				click : function() {
					$(this).dialog("close");
					if ($.alertBoxForFocusObj) {
						$.alertBoxForFocusObj.focus();
					}
				}
			} ];
		}

		var alertBoxDiv = [ "<div id='alert_box_div' title='",
				params.type.toUpperCase(), "'>", params.message, "</div>" ]
				.join("");
		$(alertBoxDiv).appendTo("body");

		$("#alert_box_div").dialog({
			autoOpen : false,
			modal : true,
			width : "auto",
			buttons : params.buttons,
			resizable: false,
			draggable: false,
			closeText: $.alertBoxRegional[$.alertBoxLocale].closeText,
			close: function() {
				$("body").css("overflow", "auto");
			},
			open: function() {
				$("body").css("overflow", "hidden");
			}
		});

		$("#alert_box_div").dialog("open");
	};

	$.alertBox.close = function() {
		if ($("#alert_box_div").length) {
			$("#alert_box_div").dialog("close");
			$("#alert_box_div").remove();
		}
	};

})(jQuery);