Changeset View
Changeset View
Standalone View
Standalone View
webroot/rsrc/js/application/differential/ChangesetViewManager.js
Show First 20 Lines • Show All 184 Lines • ▼ Show 20 Lines | _startContentWorkflow: function(workflow) { | ||||
JX.Router.getInstance().queue(routable); | JX.Router.getInstance().queue(routable); | ||||
}, | }, | ||||
/** | /** | ||||
* Receive a response to a context request. | * Receive a response to a context request. | ||||
*/ | */ | ||||
_oncontext: function(target, response) { | _oncontext: function(target, response) { | ||||
var table = JX.$H(response.changeset).getNode(); | // TODO: This should be better structured. | ||||
// If the response comes back with several top-level nodes, the last one | |||||
// is the actual context; the others are headers. Add any headers first, | |||||
// then copy the new rows into the document. | |||||
var markup = JX.$H(response.changeset).getFragment(); | |||||
var len = markup.childNodes.length; | |||||
var diff = JX.DOM.findAbove(target, 'table', 'differential-diff'); | |||||
for (var ii = 0; ii < len - 1; ii++) { | |||||
diff.parentNode.insertBefore(markup.firstChild, diff); | |||||
} | |||||
var table = markup.firstChild; | |||||
var root = target.parentNode; | var root = target.parentNode; | ||||
this._moveRows(table, root, target); | this._moveRows(table, root, target); | ||||
root.removeChild(target); | root.removeChild(target); | ||||
this._onchangesetresponse(response); | this._onchangesetresponse(response); | ||||
}, | }, | ||||
_moveRows: function(src, dst, before) { | _moveRows: function(src, dst, before) { | ||||
▲ Show 20 Lines • Show All 184 Lines • Show Last 20 Lines |