Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/phabricator
Path: blob/master/webroot/rsrc/js/application/search/behavior-reorder-queries.js
12242 views
1
/**
2
* @provides javelin-behavior-search-reorder-queries
3
* @requires javelin-behavior
4
* javelin-stratcom
5
* javelin-workflow
6
* javelin-dom
7
* phabricator-draggable-list
8
*/
9
10
JX.behavior('search-reorder-queries', function(config) {
11
12
var root = JX.$(config.listID);
13
14
var list = new JX.DraggableList('named-query', root)
15
.setFindItemsHandler(function() {
16
return JX.DOM.scry(root, 'li', 'named-query');
17
});
18
19
list.listen('didDrop', function(node) {
20
var nodes = list.findItems();
21
var order = [];
22
var key;
23
for (var ii = 0; ii < nodes.length; ii++) {
24
key = JX.Stratcom.getData(nodes[ii]).queryKey;
25
if (key) {
26
order.push(key);
27
}
28
}
29
30
list.lock();
31
JX.DOM.alterClass(node, 'drag-sending', true);
32
33
new JX.Workflow(config.orderURI, {order: order.join()})
34
.setHandler(function() {
35
JX.DOM.alterClass(node, 'drag-sending', false);
36
list.unlock();
37
})
38
.start();
39
});
40
41
});
42
43