function quickEditMenu(){
	
	var dialogdiv = $('#site-dialog');
	dialogdiv.load(window.location.href, {'module':'menu', 'action':'quickEditDialog'}, function(){
		var titleNode = dialogdiv.find('h1').first();
		var title = titleNode.text(); 
		titleNode.remove();
		dialogdiv.attr('title', title);
		dialogdiv.dialog({width: 600, title: title});
		dialogdiv.dialog("option", "title", title);
	});
	
}

var menuEntriesDraggableOptions = {
	opacity: 0.5,
	revert: true,
	handle: '.module-menu-quickEdit-entry'
};
var menuDroppableOptions = {
	accept: '.module-menu-draggableMenu li',
	hoverClass: 'module-menu-draggableMenu-dropHover',
	tolerance: 'pointer'
};

function quickEditFormAppendRow(){
	
	var str = '<li style="display:none;">'
			+ '<div class="ui-icon ui-icon-circle-close" onclick="jQuery(this).parent().fadeOut(\'default\', function(){$(this).remove()});">close</div>'
			+ '<div class="module-menu-draggableMenu-prevDrop">&nbsp;</div>'
			+ '<div class="module-menu-draggableMenu-subDrop module-menu-quickEdit-entry">'
			+ '<div class="module-menu-quickEdit-entry-name">Name</div>'
			+ '<div class="module-menu-quickEdit-entry-url">Url</div>'
			+ '</div>'
			+ '<div class="module-menu-draggableMenu-nextDrop">&nbsp;</div>'
			+ '</li>';
	newRow = $(str);
	newRow.draggable(menuEntriesDraggableOptions)
	newRow.find('.module-menu-draggableMenu-prevDrop, .module-menu-draggableMenu-subDrop, .module-menu-draggableMenu-nextDrop').droppable(menuDroppableOptions);
	newRow.find('.module-menu-quickEdit-entry div').editable(function(text){
			$('#quickEditMenu-reloadButton').fadeIn();
			return text;
		}, {
		onblur: 'submit' 
	});
	jQuery('#quickEditMenuForm > ul.module-menu-draggableMenu').append(newRow);
	newRow.fadeIn();
	
	quickEditFormNewNodes = quickEditFormNewNodes + 1;
	
	jQuery('#quickEditMenu-reloadButton').fadeIn();
}

function quickEditMenuOnload($){
	$('.module-menu-quickEdit-entry div').editable(function(text){
			$('#quickEditMenu-reloadButton').fadeIn();
			return text;
		}, {
		onblur: 'submit' 
	});
	
	$('.module-menu-draggableMenu li').each(function(){
		$(this).draggable(menuEntriesDraggableOptions);
	});
	
	$('.module-menu-draggableMenu li > div').droppable(menuDroppableOptions);
	$('.module-menu-draggableMenu li div.module-menu-draggableMenu-subDrop').live("drop", function(event, ui){
		var subul = $(this).parent().find('ul.module-menu-draggableMenu');
		if(subul.length >= 1){
			subul = subul.first();
		}
		else{
			subul = $('<ul class="module-menu-draggableMenu"/>');
			$(this).after(subul);
		}
		$(ui.draggable).appendTo(subul);
		$('#quickEditMenu-reloadButton').fadeIn();
	});
	$('.module-menu-draggableMenu li div.module-menu-draggableMenu-prevDrop').live("drop", function(event, ui){
		$(this).parent().before($(ui.draggable));
		$('#quickEditMenu-reloadButton').fadeIn();
	});
	$('.module-menu-draggableMenu li div.module-menu-draggableMenu-nextDrop').live("drop", function(event, ui){
		$(this).parent().after($(ui.draggable));
		$('#quickEditMenu-reloadButton').fadeIn();
	});
	
	function moduleMenuQuickEditGetPostDataFromHtml(root){
		var count = 0;
		var data = {};
		
		root.children().each(function(){
			var dataEntry = {};
			var entry = $(this).children('.module-menu-quickEdit-entry');
			dataEntry['id'] = entry.attr('module-menu-id');
			entry.children().each(function(){
				if($(this).hasClass('module-menu-quickEdit-entry-name'))
					dataEntry['name'] = $(this).text();
				else if($(this).hasClass('module-menu-quickEdit-entry-url'))
					dataEntry['url'] = $(this).text();
			});
			var submenu = $(this).children('ul.module-menu-draggableMenu');
			if(submenu.length > 0)
				dataEntry['children'] = moduleMenuQuickEditGetPostDataFromHtml(submenu);
			data[count] = dataEntry;
			count = count+1;
		});
		
		return data;
	};
	
	$('#quickEditMenuForm').submit(function(){
		var data = {
			'module-menu-tree': moduleMenuQuickEditGetPostDataFromHtml($(this).children('ul').first())
		};
		
		data['module'] = 'menu';
		data['action'] = 'quick-management-save';
		
		
		composeAjaxSubmit({
			href: location.href,
			params: data,
			successCallback: function(data){
				var newul = $('<div>' + data.html + '</div>');
				$('#site-menu .module-menu-mainDiv').html(newul.children('.module-menu-mainDiv').html());
				startQuickManagement();
			},
			//successMsg:quickEditMenuSuccesDivHtml
		});
		return false;
	});
}
