Add lang attribute to issue fix labels (re: #7963)

This commit is contained in:
Quincy Morgan
2020-09-22 17:48:35 -04:00
parent aa9b44a0bf
commit 7b5df1bc40
15 changed files with 37 additions and 36 deletions
+2 -1
View File
@@ -58,7 +58,7 @@ export function validationIssue(attrs) {
if (issue.severity === 'warning') {
// allow ignoring any issue that's not an error
fixes.push(new validationIssueFix({
title: t('issues.fix.ignore_issue.title'),
title: t.html('issues.fix.ignore_issue.title'),
icon: 'iD-icon-close',
onClick: function() {
context.validator().ignoreIssue(this.issue.id);
@@ -67,6 +67,7 @@ export function validationIssue(attrs) {
}
fixes.forEach(function(fix) {
// the id doesn't matter as long as it's unique to this issue/fix
fix.id = fix.title;
// add a reference to the issue for use in actions
fix.issue = issue;
+4 -4
View File
@@ -88,8 +88,8 @@ export function validationAlmostJunction(context) {
function makeFixes(context) {
let fixes = [new validationIssueFix({
icon: 'iD-icon-abutment',
title: t('issues.fix.connect_features.title'),
onClick(context) {
title: t.html('issues.fix.connect_features.title'),
onClick: function(context) {
const annotation = t('issues.fix.connect_almost_junction.annotation');
const [, endNodeId, crossWayId] = this.issue.entityIds;
const midNode = context.entity(this.issue.data.midId);
@@ -135,8 +135,8 @@ export function validationAlmostJunction(context) {
// node has no descriptive tags, suggest noexit fix
fixes.push(new validationIssueFix({
icon: 'maki-barrier',
title: t('issues.fix.tag_as_disconnected.title'),
onClick(context) {
title: t.html('issues.fix.tag_as_disconnected.title'),
onClick: function(context) {
const nodeID = this.issue.entityIds[1];
const tags = Object.assign({}, context.entity(nodeID).tags);
tags.noexit = 'yes';
+4 -4
View File
@@ -179,11 +179,11 @@ export function validationCloseNodes(context) {
return [
new validationIssueFix({
icon: 'iD-operation-disconnect',
title: t('issues.fix.move_points_apart.title')
title: t.html('issues.fix.move_points_apart.title')
}),
new validationIssueFix({
icon: 'iD-icon-layers',
title: t('issues.fix.use_different_layers_or_levels.title')
title: t.html('issues.fix.use_different_layers_or_levels.title')
})
];
}
@@ -242,7 +242,7 @@ export function validationCloseNodes(context) {
return [
new validationIssueFix({
icon: 'iD-icon-plus',
title: t('issues.fix.merge_points.title'),
title: t.html('issues.fix.merge_points.title'),
onClick: function(context) {
var entityIds = this.issue.entityIds;
var action = actionMergeNodes([entityIds[1], entityIds[2]]);
@@ -251,7 +251,7 @@ export function validationCloseNodes(context) {
}),
new validationIssueFix({
icon: 'iD-operation-disconnect',
title: t('issues.fix.move_points_apart.title')
title: t.html('issues.fix.move_points_apart.title')
})
];
}
+5 -5
View File
@@ -444,7 +444,7 @@ export function validationCrossingWays(context) {
if (isCrossingIndoors) {
fixes.push(new validationIssueFix({
icon: 'iD-icon-layers',
title: t('issues.fix.use_different_levels.title')
title: t.html('issues.fix.use_different_levels.title')
}));
} else if (isCrossingTunnels ||
isCrossingBridges ||
@@ -473,7 +473,7 @@ export function validationCrossingWays(context) {
// repositioning the features is always an option
fixes.push(new validationIssueFix({
icon: 'iD-operation-move',
title: t('issues.fix.reposition_features.title')
title: t.html('issues.fix.reposition_features.title')
}));
return fixes;
@@ -493,7 +493,7 @@ export function validationCrossingWays(context) {
function makeAddBridgeOrTunnelFix(fixTitleID, iconName, bridgeOrTunnel){
return new validationIssueFix({
icon: iconName,
title: t('issues.fix.' + fixTitleID + '.title'),
title: t.html('issues.fix.' + fixTitleID + '.title'),
onClick: function(context) {
var mode = context.mode();
if (!mode || mode.id !== 'select') return;
@@ -702,7 +702,7 @@ export function validationCrossingWays(context) {
return new validationIssueFix({
icon: 'iD-icon-crossing',
title: t('issues.fix.' + fixTitleID + '.title'),
title: t.html('issues.fix.' + fixTitleID + '.title'),
onClick: function(context) {
var loc = this.issue.loc;
var connectionTags = this.issue.data.connectionTags;
@@ -745,7 +745,7 @@ export function validationCrossingWays(context) {
function makeChangeLayerFix(higherOrLower) {
return new validationIssueFix({
icon: 'iD-icon-' + (higherOrLower === 'higher' ? 'up' : 'down'),
title: t('issues.fix.tag_this_as_' + higherOrLower + '.title'),
title: t.html('issues.fix.tag_this_as_' + higherOrLower + '.title'),
onClick: function(context) {
var mode = context.mode();
+4 -4
View File
@@ -53,13 +53,13 @@ export function validationDisconnectedWay() {
}
if (!fixes.length) {
fixes.push(new validationIssueFix({
title: t('issues.fix.connect_feature.title')
title: t.html('issues.fix.connect_feature.title')
}));
}
fixes.push(new validationIssueFix({
icon: 'iD-operation-delete',
title: t('issues.fix.delete_feature.title'),
title: t.html('issues.fix.delete_feature.title'),
entityIds: [singleEntity.id],
onClick: function(context) {
var id = this.issue.entityIds[0];
@@ -71,7 +71,7 @@ export function validationDisconnectedWay() {
}));
} else {
fixes.push(new validationIssueFix({
title: t('issues.fix.connect_features.title')
title: t.html('issues.fix.connect_features.title')
}));
}
@@ -182,7 +182,7 @@ export function validationDisconnectedWay() {
return new validationIssueFix({
icon: 'iD-operation-continue' + (useLeftContinue ? '-left' : ''),
title: t('issues.fix.continue_from_' + whichEnd + '.title'),
title: t.html('issues.fix.continue_from_' + whichEnd + '.title'),
entityIds: [vertexID],
onClick: function(context) {
var wayId = this.issue.entityIds[0];
+1 -1
View File
@@ -30,7 +30,7 @@ export function validationHelpRequest(context) {
dynamicFixes: function() {
return [
new validationIssueFix({
title: t('issues.fix.address_the_concern.title')
title: t.html('issues.fix.address_the_concern.title')
})
];
},
+2 -2
View File
@@ -176,7 +176,7 @@ export function validationImpossibleOneway() {
if (attachedOneways.length) {
fixes.push(new validationIssueFix({
icon: 'iD-operation-reverse',
title: t('issues.fix.reverse_feature.title'),
title: t.html('issues.fix.reverse_feature.title'),
entityIds: [way.id],
onClick: function(context) {
var id = this.issue.entityIds[0];
@@ -190,7 +190,7 @@ export function validationImpossibleOneway() {
(!isFirst && textDirection === 'rtl');
fixes.push(new validationIssueFix({
icon: 'iD-operation-continue' + (useLeftContinue ? '-left' : ''),
title: t('issues.fix.continue_from_' + (isFirst ? 'start' : 'end') + '.title'),
title: t.html('issues.fix.continue_from_' + (isFirst ? 'start' : 'end') + '.title'),
onClick: function(context) {
var entityID = this.issue.entityIds[0];
var vertexID = this.issue.entityIds[1];
+1 -1
View File
@@ -43,7 +43,7 @@ export function validationIncompatibleSource() {
dynamicFixes: function() {
return [
new validationIssueFix({
title: t('issues.fix.remove_proprietary_data.title')
title: t.html('issues.fix.remove_proprietary_data.title')
})
];
}
+3 -3
View File
@@ -103,13 +103,13 @@ export function validationMismatchedGeometry() {
var connectEndsOnClick = makeConnectEndpointsFixOnClick(entity, context.graph());
fixes.push(new validationIssueFix({
title: t('issues.fix.connect_endpoints.title'),
title: t.html('issues.fix.connect_endpoints.title'),
onClick: connectEndsOnClick
}));
fixes.push(new validationIssueFix({
icon: 'iD-operation-delete',
title: t('issues.fix.remove_tag.title'),
title: t.html('issues.fix.remove_tag.title'),
onClick: function(context) {
var entityId = this.issue.entityIds[0];
var entity = context.entity(entityId);
@@ -218,7 +218,7 @@ export function validationMismatchedGeometry() {
return [
new validationIssueFix({
icon: 'iD-operation-extract',
title: t('issues.fix.extract_point.title'),
title: t.html('issues.fix.extract_point.title'),
onClick: extractOnClick
})
];
+2 -2
View File
@@ -61,7 +61,7 @@ export function validationMissingRole() {
makeAddRoleFix('outer'),
new validationIssueFix({
icon: 'iD-operation-delete',
title: t('issues.fix.remove_from_relation.title'),
title: t.html('issues.fix.remove_from_relation.title'),
onClick: function(context) {
context.perform(
actionDeleteMember(this.issue.entityIds[0], this.issue.data.member.index),
@@ -87,7 +87,7 @@ export function validationMissingRole() {
function makeAddRoleFix(role) {
return new validationIssueFix({
title: t('issues.fix.set_as_' + role + '.title'),
title: t.html('issues.fix.set_as_' + role + '.title'),
onClick: function(context) {
var oldMember = this.issue.data.member;
var member = { id: this.issue.entityIds[1], type: oldMember.type, role: role };
+2 -2
View File
@@ -98,7 +98,7 @@ export function validationMissingTag(context) {
fixes.push(new validationIssueFix({
icon: 'iD-icon-search',
title: t('issues.fix.' + selectFixType + '.title'),
title: t.html('issues.fix.' + selectFixType + '.title'),
onClick: function(context) {
context.ui().sidebar.showPresetList();
}
@@ -122,7 +122,7 @@ export function validationMissingTag(context) {
fixes.push(
new validationIssueFix({
icon: 'iD-operation-delete',
title: t('issues.fix.delete_feature.title'),
title: t.html('issues.fix.delete_feature.title'),
disabledReason: disabledReasonID ? t('operations.delete.' + disabledReasonID + '.single') : undefined,
onClick: deleteOnClick
})
+2 -2
View File
@@ -180,7 +180,7 @@ export function validationOutdatedTags() {
return [
new validationIssueFix({
autoArgs: autoArgs,
title: t('issues.fix.upgrade_tags.title'),
title: t.html('issues.fix.upgrade_tags.title'),
onClick: (context) => {
context.perform(doUpgrade, t('issues.fix.upgrade_tags.annotation'));
}
@@ -276,7 +276,7 @@ export function validationOutdatedTags() {
return [
new validationIssueFix({
autoArgs: [doUpgrade, t('issues.fix.move_tags.annotation')],
title: t('issues.fix.move_tags.title'),
title: t.html('issues.fix.move_tags.title'),
onClick: (context) => {
context.perform(doUpgrade, t('issues.fix.move_tags.annotation'));
}
+1 -1
View File
@@ -67,7 +67,7 @@ export function validationPrivateData() {
return [
new validationIssueFix({
icon: 'iD-operation-delete',
title: t('issues.fix.' + fixID + '.title'),
title: t.html('issues.fix.' + fixID + '.title'),
onClick: function(context) {
context.perform(doUpgrade, t('issues.fix.upgrade_tags.annotation'));
}
+2 -2
View File
@@ -75,7 +75,7 @@ export function validationSuspiciousName() {
return [
new validationIssueFix({
icon: 'iD-operation-delete',
title: t('issues.fix.remove_the_name.title'),
title: t.html('issues.fix.remove_the_name.title'),
onClick: function(context) {
let entityId = this.issue.entityIds[0];
let entity = context.entity(entityId);
@@ -121,7 +121,7 @@ export function validationSuspiciousName() {
return [
new validationIssueFix({
icon: 'iD-operation-delete',
title: t('issues.fix.remove_the_name.title'),
title: t.html('issues.fix.remove_the_name.title'),
onClick: function(context) {
const entityId = this.issue.entityIds[0];
const entity = context.entity(entityId);
+2 -2
View File
@@ -85,7 +85,7 @@ export function validationUnsquareWay(context) {
return [
new validationIssueFix({
icon: 'iD-operation-orthogonalize',
title: t('issues.fix.square_feature.title'),
title: t.html('issues.fix.square_feature.title'),
autoArgs: autoArgs,
onClick: function(context, completionHandler) {
var entityId = this.issue.entityIds[0];
@@ -100,7 +100,7 @@ export function validationUnsquareWay(context) {
}),
/*
new validationIssueFix({
title: t('issues.fix.tag_as_unsquare.title'),
title: t.html('issues.fix.tag_as_unsquare.title'),
onClick: function(context) {
var entityId = this.issue.entityIds[0];
var entity = context.entity(entityId);