summaryrefslogtreecommitdiff
path: root/src/client
diff options
context:
space:
mode:
authorAlon Levy <alon@pobox.com>2015-05-05 12:12:26 +0300
committerAlon Levy <alon@pobox.com>2015-05-05 13:54:23 +0300
commitf56d42f3ed53c37e7c9cb5a88206431e1d12abbb (patch)
tree539ce49ad14aa0d16e8924b10f7d8b294a586ad1 /src/client
parentbbfe1313edb5bc32c3c114311a35f1e1630ce64c (diff)
client/messages+selection: fix delete message for links only
Diffstat (limited to 'src/client')
-rw-r--r--src/client/messages.js17
-rw-r--r--src/client/view/selection.js2
2 files changed, 9 insertions, 10 deletions
diff --git a/src/client/messages.js b/src/client/messages.js
index 370dab2f..8c4a1b2e 100644
--- a/src/client/messages.js
+++ b/src/client/messages.js
@@ -3,16 +3,13 @@ function (_, util, graph) {
-function delete_items_message(items) {
- util.assert(items && items.length && items.length > 0);
+function delete_nodes_links_message(nodes, links) {
+ util.assert(nodes && links && nodes.length && links.length && nodes.length + links.length > 0);
- var nodes = _.filter(items, graph.is_node),
- links = _.filter(items, graph.is_link);
-
- return delete_items_message_by_name(nodes, links);
+ return delete_nodes_links_message_by_name(nodes, links);
}
-function delete_items_message_by_name(nodes, links)
+function delete_nodes_links_message_by_name(nodes, links)
{
var middle,
node_names = _.map(_.map(nodes, 'name'), quoted),
@@ -22,6 +19,8 @@ function delete_items_message_by_name(nodes, links)
middle = english_conjunction(node_names) + ', and ' + english_conjunction(link_names) + ' connections';
} else if (nodes.length > 0) {
middle = english_conjunction(node_names);
+ } else {
+ middle = english_conjunction(link_names);
}
return 'Delete ' + middle + '?';
}
@@ -42,7 +41,7 @@ function english_conjunction(names)
return names.slice(0, names.length - 1).join(', ') + ' and ' + names[names.length - 1];
}
-function delete_items_message_by_number(type, nodes, links) {
+function delete_nodes_links_message_by_number(type, nodes, links) {
var count_nodes = nodes.length,
count_links = links.length,
make_descriptor = function (type, count) { return count > 1 ? '' + count + ' ' + type + 's' : 'a ' + type; },
@@ -53,6 +52,6 @@ function delete_items_message_by_number(type, nodes, links) {
}
return {
- delete_items_message: delete_items_message,
+ delete_nodes_links_message: delete_nodes_links_message,
};
});
diff --git a/src/client/view/selection.js b/src/client/view/selection.js
index 496d0b9e..ec8984bc 100644
--- a/src/client/view/selection.js
+++ b/src/client/view/selection.js
@@ -270,7 +270,7 @@ var setup_toolbar = function(main_graph, main_graph_view)
main_graph.nodes__merge(selected_nodes_ids());
},
delete_selection = function() {
- if (confirm(messages.delete_items_message(selected_nodes, []))) {
+ if (confirm(messages.delete_nodes_links_message(selected_nodes, []))) {
main_graph.nodes__delete(ids);
}
},