
function previewPage(callback) {
	$(":input").each( function() {
		$(this).blur();
	});
	$('#welOverlayPreview').modal( {
		close :false,
		overlayId :'confirmModalOverlayPreview',
		containerId :'confirmModalContainer'
	});
	$(document).click( function(){
		if(confirm("Preview mode only. No other actions are possible.\nDo you want to close this preview window?")){
			window.open('','_self','');
			window.close();
		}
	});
}
/**
 * This method can show confirm dialogue.
 * 
 * @param message - confirm message.
 * @param callback - The callback function.
 * @return
 * 
 * NOTE:
 */

function confirmMsg(message, callback) {
	$(":input").each( function() {
		$(this).blur();
	});
	$('#confirm').modal( {
		close :false,
		overlayId :'confirmModalOverlay',
		containerId :'confirmModalContainer',
		onShow : function(dialog) {
			dialog.data.find('.message').append(message);

			// if the user clicks "yes"
		    dialog.data.find('.yes').click( function() {
			// call the callback
				if ($.isFunction(callback)) {
					callback.apply();
				}
				// close the dialog
				$.modal.close();
			});
		    dialog.data.find('.no').click(function(){$.modal.close();});  
		    dialog.data.find('.close').click(function(){$.modal.close();});  
	  }
	});
}

function confirmLeaveChat(message, chatLaterCallback, terminateCallback) {
	$(":input").each( function() {
		$(this).blur();
	});
	$('#confirmLeaveChat').modal( {
		close :false,
		overlayId :'confirmModalOverlay',
		containerId :'confirmModalContainer',
		onShow : function(dialog) {
			dialog.data.find('.message').append(message);

			// if the user clicks "yes"
		    dialog.data.find('.chatLater').click( function() {
			// call the callback
				if ($.isFunction(chatLaterCallback)) {
					chatLaterCallback.apply();
				}
				// close the dialog
				$.modal.close();
			});
		    
		    dialog.data.find('.terminate').click( function() {
			// call the callback
				if ($.isFunction(chatLaterCallback)) {
					terminateCallback.apply();
				}
				// close the dialog
				$.modal.close();
			});
		    
		    dialog.data.find('.cancel').click(function(){$.modal.close();});  
		    dialog.data.find('.close').click(function(){$.modal.close();});  
	  }
	});
}

/**
 * This method can show confirm login dialogue.
 * 
 * @param message -
 *            confirm message.
 * @param callback -
 *            The callback function.
 * @return
 * 
 * NOTE:
 */
function confirmLogin(message, callback) {
	$(":input").each( function() {
		$(this).blur();
	});
	$('#confirmLogin').modal( {
		close :false,
		overlayId :'confirmModalOverlay',
		containerId :'confirmModalContainer',
		onShow : function(dialog) {
			dialog.data.find('.message').append(message);

			// if the user clicks "yes"
			dialog.data.find('.yes').click( function() {
			// call the callback
				if ($.isFunction(callback)) {
					callback.apply();
				}
				// close the dialog
				$.modal.close();
			});
			dialog.data.find('.no').click(function(){$.modal.close();}); 
			dialog.data.find('.close').click(function(){$.modal.close();}); 
	}
	});
}

/**
 * This method can show confirm login continue dialogue.
 * 
 * @param message -
 *            confirm message.
 * @param callback -
 *            The callback function.
 * @return
 * 
 * NOTE:
 */
function confirmLoginContinue(message, callback) {
	$(":input").each( function() {
		$(this).blur();
	});
	$('#confirmLoginContinue').modal( {
		close :false,
		overlayId :'confirmModalOverlay',
		containerId :'confirmModalContainer',
		onShow : function(dialog) {
			dialog.data.find('.message').append(message);

			// if the user clicks "yes"
			dialog.data.find('.yes').click( function() {
			// call the callback
				if ($.isFunction(callback)) {
					callback.apply();
				}
				// close the dialog
				$.modal.close();
			});
			dialog.data.find('.no').click(function(){$.modal.close();});  
		    dialog.data.find('.close').click(function(){$.modal.close();});  
	}
	});
}

/**
 * This method can show confirm Edit My Profile dialogue.
 * 
 * @param message -
 *            confirm message.
 * @param callback -
 *            The callback function.
 * @return
 * 
 * NOTE:
 */
function confirmEditMyProfile(message, yes_callback,no_callback) {
	$(":input").each( function() {
		$(this).blur();
	});
	$('#confirmEditMyProfile').modal( {
		close :false,
		overlayId :'confirmModalOverlay',
		containerId :'confirmModalContainer',
		onShow : function(dialog) {
			dialog.data.find('.message').append(message);

			// if the user clicks "yes"
			dialog.data.find('.yes').click( function() {
			// call the callback
				if ($.isFunction(yes_callback)) {
					yes_callback.apply();
				}
				// close the dialog
				$.modal.close();
			});
			dialog.data.find('.no').click(function(){			
				// call the callback
				if ($.isFunction(no_callback)) {
					no_callback.apply();
				}
				// close the dialog
				$.modal.close();});  
		    dialog.data.find('.close').click(function(){$.modal.close();});  
	}
	});
}

/**
 * This method can show alert dialogue.
 * 
 * @param message -
 *            alert message.
 * @param callback -
 *            The callback function.
 * @return
 * 
 * NOTE:
 */
function alertMessageInfo(message, callback) {
	$(":input").each( function() {
		$(this).blur();
	});
	$('#alertInfo').modal( {
		close :false,
		overlayId :'confirmModalOverlay',
		containerId :'confirmModalContainer',
		onShow : function(dialog) {
			dialog.data.find('.message').append(message);
			// if the user clicks "ok"
			dialog.data.find('.yes').click( function() {
			// call the callback
				if ($.isFunction(callback)) {
					callback.apply();
				}
				// close the dialog
				$.modal.close();
			});
			// if the user clicks "Close"
			dialog.data.find('.close').click(function(){$.modal.close();});  
	}
	});
}

/**
 * This method can show warning dialogue.
 * 
 * @param message -
 *            warning message.
 * @param callback -
 *            The callback function.
 * @return
 * 
 * NOTE:
 */
function alertMessageWarning(message, callback) {
	$(":input").each( function() {
		$(this).blur();
	});

	$('#alert').modal( {
		close :false,
		overlayId :'confirmModalOverlay',
		containerId :'confirmModalContainer',
		onShow : function(dialog) {
			dialog.data.find('.message').append(message + "<br/>");
			// if the user clicks "ok"
			dialog.data.find('.yes').click( function() {
			// call the callback
				if ($.isFunction(callback)) {
					callback.apply();
				}
				// close the dialog
				$.modal.close();
			});
		//if the user clicks "Close"
		dialog.data.find('.close').click(function(){$.modal.close();});  
	}
	});
}

/**
 * This method can show login error message.
 * 
 * @param message -
 *            warning message.
 * @param callback -
 *            The callback function.
 * @return
 * 
 * NOTE:
 */
function alertLoginError(message, callback) {
	$(":input").each( function() {
		$(this).blur();
	});

	$('#alertLoginError').modal( {
		close :false,
		overlayId :'confirmModalOverlay',
		containerId :'confirmModalContainer',
		onShow : function(dialog) {
			dialog.data.find('.message').append(message + "<br/>");
			// if the user clicks "ok"
			dialog.data.find('.yes').click( function() {
			// call the callback
				if ($.isFunction(callback)) {
					callback.apply();
				}
				// close the dialog
				$.modal.close();
			});
		//if the user clicks "Close"
		dialog.data.find('.close').click(function(){$.modal.close();});  
	}
	});
}

/**
 * This method can show big confirm dialogue.
 * 
 * @param message -
 *            confirm message.
 * @param callback -
 *            The callback function.
 * @return
 * 
 * NOTE:
 */
function confirmBigMessageWarning(message, callback) {
	$(":input").each( function() {
		$(this).blur();
	});

	$('#confirm_big').modal( {
		close :false,
		overlayId :'confirmModalOverlay',
		containerId :'confirmModalContainer',
		onShow : function(dialog) {
			dialog.data.find('.message').append(message);
			// if the user clicks "ok"
			dialog.data.find('.ok').click( function() {
			// call the callback
				if ($.isFunction(callback)) {
					callback.apply();
				}
				// close the dialog
				$.modal.close();
			});
	}
	});
}

function alertMessageCheckBrowse(msg){
	$('#check_browse').modal( {
		close :false,
		overlayId :'check_browse_overlay',
		containerId :'check_browse_container',
		onShow : function(dialog) {
			dialog.data.find('.message').text(msg);
	  }
	});
}

function alertConfirmInfo(message, callback) {
	$(":input").each( function() {
		$(this).blur();
	});
	$('#alertInfo').modal({
		close :false,
		overlayId :'confirmModalOverlay',
		containerId :'confirmModalContainer',
		onShow : function(dialog) {
			dialog.data.find('.message').append(message);
			// if the user clicks "ok"
			dialog.data.find('.yes').click( function() {
			// call the callback
				if ($.isFunction(callback)) {
					callback.apply();
				}
				// close the dialog
				$.modal.close();
			});
			// if the user clicks "Close"
			dialog.data.find('.close').click( function() {
			// call the callback
				if ($.isFunction(callback)) {
					callback.apply();
				}
				// close the dialog
				$.modal.close();
			});  
	}
	});
}