Don't flag almost junctions when endpoint is building or parking entrance

Include issues for disabled rules in entity issues
This commit is contained in:
Quincy Morgan
2019-05-09 14:38:19 -04:00
parent 0e7a63f5c5
commit f264cc47f0
3 changed files with 23 additions and 7 deletions
+12 -2
View File
@@ -117,13 +117,23 @@ export function coreValidator(context) {
};
validator.getEntityIssues = function(entityID) {
validator.getEntityIssues = function(entityID, options) {
var issueIDs = _issuesByEntityID[entityID];
if (!issueIDs) return [];
var opts = options || {};
return Array.from(issueIDs)
.map(function(id) { return _issuesByIssueID[id]; })
.filter(function(issue) { return !_disabledRules[issue.type] && !_ignoredIssueIDs[issue.id]; });
.filter(function(issue) {
if (opts.includeDisabledRules === 'only' && !_disabledRules[issue.type]) return false;
if (!opts.includeDisabledRules && _disabledRules[issue.type]) return false;
if (opts.includeIgnored === 'only' && !_ignoredIssueIDs[issue.id]) return false;
if (!opts.includeIgnored && _ignoredIssueIDs[issue.id]) return false;
return true;
});
};
+6 -2
View File
@@ -31,9 +31,13 @@ export function uiEntityIssues(context) {
update();
}
function getIssues() {
return context.validator().getEntityIssues(_entityID, { includeDisabledRules: true });
}
function update() {
var issues = context.validator().getEntityIssues(_entityID);
var issues = getIssues();
_selection
.classed('hide', issues.length === 0);
@@ -44,7 +48,7 @@ export function uiEntityIssues(context) {
function render(selection) {
var issues = context.validator().getEntityIssues(_entityID);
var issues = getIssues();
_activeIssueID = issues.length > 0 ? issues[0].id : null;
+5 -3
View File
@@ -25,8 +25,10 @@ export function validationAlmostJunction() {
osmRoutableHighwayTagValues[entity.tags.highway];
}
function isNoexit(node) {
return node.tags.noexit && node.tags.noexit === 'yes';
function isTaggedAsNotContinuing(node) {
return node.tags.noexit === 'yes' ||
node.tags.amenity === 'parking_entrance' ||
(node.tags.entrance && node.tags.entrance !== 'no');
}
@@ -127,7 +129,7 @@ export function validationAlmostJunction() {
if (osm && !osm.isDataLoaded(node.loc)) {
return false;
}
if (isNoexit(node) || graph.parentWays(node).length !== 1) {
if (isTaggedAsNotContinuing(node) || graph.parentWays(node).length !== 1) {
return false;
}