//default dialog options
$.extend($.ui.dialog.prototype.options, {
	modal: true,
	resizable: false,
	draggable: true,
	minHeight : 0,
	close : function(){
		$(this).dialog('destroy').remove();
	},
	open : function (){
		var dialog = $(this);
		dialog.find('.dialog-close:not(.direct-link)').click(function(){
			dialog.dialog('close');
			return false
		})
	},
	minWidth : 400
});

function showDialog(options, data, callback){
    var defaultOptions = {
       open : function (){
            var dialog = $(this);
            dialog.find('.dialog-close:not(.direct-link)').click(function(){
                dialog.dialog('close');
                return false
            })
            if (callback) {
                callback();
            }
        }
    }
    var dialogOptions = $.extend({}, defaultOptions, options)
    $('<div />').append(data).dialog(dialogOptions)
}

$(function(){

	//ajax dialogs
	$('a.dialog').live('click', function(){
		
		var self = $(this),
		url = self.attr('href'),
        settings = {}
		
        if (self.attr('data-width')) {
            settings['minWidth'] = self.attr('data-width');
        }
        
		$.get(url, {}, function(data){
			var dialog = $('<div />');
			if (self.attr('id').length) {
				dialog.attr('id', self.attr('id') + '-dialog')
			}
			dialog.append(data);
			settings.title = dialog.children('h1:first').html();
			dialog.children('h1:first').remove();
            
			dialog.dialog(settings)
            
		})
		return false;
	})

});
