diff --git a/data/core.yaml b/data/core.yaml index d4be9bb25..0a065c096 100644 --- a/data/core.yaml +++ b/data/core.yaml @@ -69,12 +69,7 @@ en: multiple: "Deleted {n} objects." incomplete_relation: This feature can't be deleted because it hasn't been fully downloaded. delete_member: - annotation: - point: Removed a point from a relation. - vertex: Removed a node from a relation. - line: Removed a line from a relation. - area: Removed an area from a relation. - relation: Removed a relation from a relation. + annotation: Removed a member from a relation. connect: annotation: point: Connected a way to a point. diff --git a/dist/locales/en.json b/dist/locales/en.json index 0627d9aea..0320566f5 100644 --- a/dist/locales/en.json +++ b/dist/locales/en.json @@ -91,13 +91,7 @@ "incomplete_relation": "This feature can't be deleted because it hasn't been fully downloaded." }, "delete_member": { - "annotation": { - "point": "Removed a point from a relation.", - "vertex": "Removed a node from a relation.", - "line": "Removed a line from a relation.", - "area": "Removed an area from a relation.", - "relation": "Removed a relation from a relation." - } + "annotation": "Removed a member from a relation." }, "connect": { "annotation": { diff --git a/js/id/ui/raw_member_editor.js b/js/id/ui/raw_member_editor.js index 003e39ea5..71401ea36 100644 --- a/js/id/ui/raw_member_editor.js +++ b/js/id/ui/raw_member_editor.js @@ -2,20 +2,20 @@ iD.ui.RawMemberEditor = function(context) { var id; function selectMember(d) { - context.enter(iD.modes.Select(context, [d.member.id])); + context.enter(iD.modes.Select(context, [d.id])); } function changeRole(d) { var role = d3.select(this).property('value'); context.perform( - iD.actions.ChangeMember(id, _.extend({}, d.member, {role: role}), d.index), + iD.actions.ChangeMember(d.relation.id, _.extend({}, d.id, {role: role}), d.index), t('operations.change_role.annotation')); } function deleteMember(d) { context.perform( - iD.actions.DeleteMember(id, d.index), - t('operations.delete_member.annotation.' + context.geometry(d.member.id))); + iD.actions.DeleteMember(d.relation.id, d.index), + t('operations.delete_member.annotation')); } function rawMemberEditor(selection) { @@ -23,7 +23,13 @@ iD.ui.RawMemberEditor = function(context) { memberships = []; entity.members.forEach(function(member, index) { - memberships.push({member: member, index: index, entity: context.hasEntity(member.id)}); + memberships.push({ + index: index, + id: member.id, + role: member.role, + relation: entity, + member: context.hasEntity(member.id) + }); }); selection.call(iD.ui.Disclosure() @@ -46,13 +52,13 @@ iD.ui.RawMemberEditor = function(context) { .attr('class', 'member-list'); var $items = $list.selectAll('li') - .data(memberships, function(d) { return iD.Entity.key(entity) + ',' + d.index; }); + .data(memberships, function(d) { return iD.Entity.key(d.relation) + ',' + d.index; }); var $enter = $items.enter().append('li') .attr('class', 'member-row form-field'); $enter.each(function(d) { - if (d.entity) { + if (d.member) { var $label = d3.select(this).append('label') .attr('class', 'form-label') .append('a') @@ -61,11 +67,11 @@ iD.ui.RawMemberEditor = function(context) { $label.append('span') .attr('class', 'member-entity-type') - .text(function(d) { return context.presets().match(d.entity, context.graph()).name(); }); + .text(function(d) { return context.presets().match(d.member, context.graph()).name(); }); $label.append('span') .attr('class', 'member-entity-name') - .text(function(d) { return iD.util.localeName(d.entity); }); + .text(function(d) { return iD.util.localeName(d.member); }); } else { d3.select(this).append('label') @@ -79,7 +85,7 @@ iD.ui.RawMemberEditor = function(context) { .property('type', 'text') .attr('maxlength', 255) .attr('placeholder', t('inspector.role')) - .property('value', function(d) { return d.member.role; }) + .property('value', function(d) { return d.role; }) .on('change', changeRole); $enter.append('button') diff --git a/js/id/ui/raw_membership_editor.js b/js/id/ui/raw_membership_editor.js index 8a6652e99..c23baf71a 100644 --- a/js/id/ui/raw_membership_editor.js +++ b/js/id/ui/raw_membership_editor.js @@ -15,7 +15,7 @@ iD.ui.RawMembershipEditor = function(context) { function deleteMembership(d) { context.perform( iD.actions.DeleteMember(d.relation.id, d.index), - t('operations.delete_member.annotation.' + context.geometry(d.member.id))); + t('operations.delete_member.annotation')); } function rawMembershipEditor(selection) {