Changeset View
Changeset View
Standalone View
Standalone View
webroot/rsrc/js/application/projects/WorkboardBoard.js
Show First 20 Lines • Show All 196 Lines • ▼ Show 20 Lines | _onmovecard: function(list, item, after_node, src_list) { | ||||
var item_phid = JX.Stratcom.getData(item).objectPHID; | var item_phid = JX.Stratcom.getData(item).objectPHID; | ||||
var data = { | var data = { | ||||
objectPHID: item_phid, | objectPHID: item_phid, | ||||
columnPHID: dst_phid, | columnPHID: dst_phid, | ||||
order: this.getOrder() | order: this.getOrder() | ||||
}; | }; | ||||
// We're going to send an "afterPHID" and a "beforePHID" if the card | |||||
// was dropped immediately adjacent to another card. If a card was | |||||
// dropped before or after a header, we don't send a PHID for the card | |||||
// on the other side of the header. | |||||
// If the view has headers, we always send the header the card was | |||||
// dropped under. | |||||
var after_data; | var after_data; | ||||
var after_card = after_node; | var after_card = after_node; | ||||
while (after_card) { | while (after_card) { | ||||
after_data = JX.Stratcom.getData(after_card); | after_data = JX.Stratcom.getData(after_card); | ||||
if (after_data.objectPHID) { | if (after_data.objectPHID) { | ||||
break; | break; | ||||
} | } | ||||
if (after_data.headerKey) { | |||||
break; | |||||
} | |||||
after_card = after_card.previousSibling; | after_card = after_card.previousSibling; | ||||
} | } | ||||
if (after_data) { | if (after_data) { | ||||
if (after_data.objectPHID) { | |||||
data.afterPHID = after_data.objectPHID; | data.afterPHID = after_data.objectPHID; | ||||
} | } | ||||
} | |||||
var before_data; | var before_data; | ||||
var before_card = item.nextSibling; | var before_card = item.nextSibling; | ||||
while (before_card) { | while (before_card) { | ||||
before_data = JX.Stratcom.getData(before_card); | before_data = JX.Stratcom.getData(before_card); | ||||
if (before_data.objectPHID) { | if (before_data.objectPHID) { | ||||
break; | break; | ||||
} | } | ||||
if (before_data.headerKey) { | |||||
break; | |||||
} | |||||
before_card = before_card.nextSibling; | before_card = before_card.nextSibling; | ||||
} | } | ||||
if (before_data) { | if (before_data) { | ||||
if (before_data.objectPHID) { | |||||
data.beforePHID = before_data.objectPHID; | data.beforePHID = before_data.objectPHID; | ||||
} | } | ||||
} | |||||
var header_key = JX.Stratcom.getData(after_node).headerKey; | var header_data; | ||||
var header_node = after_node; | |||||
while (header_node) { | |||||
header_data = JX.Stratcom.getData(header_node); | |||||
if (header_data.headerKey) { | |||||
break; | |||||
} | |||||
header_node = header_node.previousSibling; | |||||
} | |||||
if (header_data) { | |||||
var header_key = header_data.headerKey; | |||||
if (header_key) { | if (header_key) { | ||||
var properties = this.getHeaderTemplate(header_key) | var properties = this.getHeaderTemplate(header_key) | ||||
.getEditProperties(); | .getEditProperties(); | ||||
data.header = JX.JSON.stringify(properties); | data.header = JX.JSON.stringify(properties); | ||||
} | } | ||||
} | |||||
var visible_phids = []; | var visible_phids = []; | ||||
var column = this.getColumn(dst_phid); | var column = this.getColumn(dst_phid); | ||||
for (var object_phid in column.getCards()) { | for (var object_phid in column.getCards()) { | ||||
visible_phids.push(object_phid); | visible_phids.push(object_phid); | ||||
} | } | ||||
data.visiblePHIDs = visible_phids.join(','); | data.visiblePHIDs = visible_phids.join(','); | ||||
▲ Show 20 Lines • Show All 108 Lines • Show Last 20 Lines |