BUG: Fix an issue caused by moving a page from one location in the tree to another location doesn't update parent id in the edit form immediately (see #7740)

The issue causes the moved page to revert to previous location when Save and Publish before any page refresh or page switching.
This commit also adds 'Modified' badge to the moved page
This commit is contained in:
Saophalkun Ponlu 2012-08-29 20:33:03 +12:00
parent 70b22fa4ca
commit c3d622c910

View File

@ -86,7 +86,7 @@
.bind('move_node.jstree', function(e, data) { .bind('move_node.jstree', function(e, data) {
if(self.getIsUpdatingTree()) return; if(self.getIsUpdatingTree()) return;
var movedNode = data.rslt.o, newParentNode = data.rslt.np, oldParentNode = data.inst._get_parent(movedNode); var movedNode = data.rslt.o, newParentNode = data.rslt.np, oldParentNode = data.inst._get_parent(movedNode), newParentID = $(newParentNode).data('id') || 0, nodeID = $(movedNode).data('id');
var siblingIDs = $.map($(movedNode).siblings().andSelf(), function(el) { var siblingIDs = $.map($(movedNode).siblings().andSelf(), function(el) {
return $(el).data('id'); return $(el).data('id');
}); });
@ -94,10 +94,14 @@
$.ajax({ $.ajax({
'url': self.data('urlSavetreenode'), 'url': self.data('urlSavetreenode'),
'data': { 'data': {
ID: $(movedNode).data('id'), ID: nodeID,
ParentID: $(newParentNode).data('id') || 0, ParentID: newParentID,
SiblingIDs: siblingIDs SiblingIDs: siblingIDs
}, },
success: function() {
$('.cms-edit-form :input[name=ParentID]').val(newParentID);
self.updateNodesFromServer([nodeID]);
},
statusCode: { statusCode: {
403: function() { 403: function() {
$.jstree.rollback(data.rlbk); $.jstree.rollback(data.rlbk);