
var messageArray;
var messageArrayCounter = 0;

function show_multy_alert_recurs(message, callback) {
	
	if ($.isArray(message)) {
		messageArray = message;
		message = messageArray[messageArrayCounter];
	}
	
	$(document).ready(function() {
		$('#alert').modal({
		    close:false,
		    overlayId:'dialogModalOverlay',
		    containerId:'dialogModalContainer',
		    autoPosition:false,
		    autoOpen: false,
		    onShow: function (dialog) {
				dialog.data.find('.message').append(message);

				// if the user clicks "ok"
		        dialog.data.find('.ok').click(function () {
		            // close the dialog
		            $.modal.close();
		            if (++messageArrayCounter < messageArray.length) {
		            	show_multy_alert_recurs(messageArray[messageArrayCounter], callback);
		            } else {
		            	// call the callback
	                    if ($.isFunction(callback)) {
	                        callback.apply();
	                    }
		            }
		        });
		    }
		});
	});
}

function show_alert_msg(message, callback) {
    $(document).ready(function() {
        $('#alert').modal({
            close:false,
            overlayId:'dialogModalOverlay',
            containerId:'dialogModalContainer',
            autoPosition:false,
            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();
                });
            }
        });
    });

    document.onkeydown = function(e) {
        if (e == null) { // ie
          keycode = event.keyCode;
        } else { // mozilla
          keycode = e.which;
        }
        if(keycode == 13) { // on enter execute callback function
            if ($.isFunction(callback)) {
                callback.apply();
            }
            // close the dialog
            $.modal.close();
        }
        if(keycode == 27){ // close on escape
          $.modal.close();
        }
    }
}

function show_confirm_msg(message, callback) {
    $(document).ready(function() {
	$('#confirm').modal({
		close:false,
		overlayId:'dialogModalOverlay',
		containerId:'dialogModalContainer',
        autoPosition:false,
		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();
			});
			
			// if the user clicks "no"
			dialog.data.find('.no').click(function () {
				// close the dialog
				$.modal.close();
			});
		}
	});
    });

	document.onkeydown = function(e) {
        if (e == null) { // ie
          keycode = event.keyCode;
        } else { // mozilla
          keycode = e.which;
        }
        if(keycode == 13) { // on enter execute callback function
            if ($.isFunction(callback)) {
                callback.apply();
            }
            // close the dialog
            $.modal.close();
        }
        if(keycode == 27){ // close on escape
          $.modal.close();
        }
    }
}

function show_alert(message, code) {
	show_alert_msg(message, function () { eval(code); } );
}

function show_multy_alert(message, code) {
	show_multy_alert_recurs(message, function () { eval(code); } );
}

function show_confirm(message, code) {
    show_confirm_msg(message, function () { eval(code) } );
}

function show_alert_redirect(message, url) {
    if( ! url) {
       return false;
    }
    show_alert_msg(message, function () { window.location.href = url; } );
}

function show_confirm_redirect(message, url) {
	if( ! url) {
       return false;
    }
    show_confirm_msg(message, function () { window.location.href = url; } );
}

