﻿var MessageDialog = function()
{
	var nativeAlert;
	var dialog;
	var dialogContainerId = '';
	
	var handleOk = function () 
	{		
        dialog.hide();        
	};
	
	var createDialog = function()
    {
		dialog = new YAHOO.widget.SimpleDialog("taskInfoDialog", 
             { width: "300px",
               fixedcenter: true,
               visible: false,
               draggable: true,
               modal: true,
               close: true,               
               icon: YAHOO.widget.SimpleDialog.ICON_INFO,
               constraintoviewport: true,
               buttons : [ { text:"OK", handler:handleOk, isDefault:true }]
             } );
             
		dialog.setHeader("");        
        dialog.render(dialogContainerId);
    };
    
    var showDialog = function(message, header)
    {
		if (dialog == null)
		{
			createDialog();
		}
		
		var dialogHeader = (typeof(header) == 'undefined') ? '' : header;
				
		dialog.setHeader(dialogHeader);
		dialog.setBody(message);
		dialog.render(dialogContainerId);
		
		 
        YAHOO.util.Event.addListener(window, 'unload', function()
		{		
			if (dialog != null)	
			{
				dialog.destroy();
			}
		});
		
		return dialog.show();
    };
    
    return {
		init: function(dlgContainerId)	
		{
			dialogContainerId = dlgContainerId;
		},
		
		show: showDialog,
		
		saveNativeAlert: function()
		{
			nativeAlert = window.alert;
		},
		
		restoreNativeAlert: function()
		{
			if (nativeAlert != null)
			{
				window.alert = nativeAlert;
			}
		}
	};
}();
