aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.md1
-rw-r--r--web/js/duplicates.js18
2 files changed, 18 insertions, 1 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 170d4de5b..b196a0804 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -22,6 +22,7 @@
- Fix front-end testing script when run with Vagrant. #2514
- Handle missing category when sending open311 reports #2502
- Fix label associations with category groups. #2541
+ - Have duplicate suggestion and assets coexist better.
- Front end improvements:
- Set report title autocomplete to off to prevent email autocompleting
- Development improvements:
diff --git a/web/js/duplicates.js b/web/js/duplicates.js
index 3ed7e6079..023808a14 100644
--- a/web/js/duplicates.js
+++ b/web/js/duplicates.js
@@ -8,7 +8,11 @@
// but undefined on new report page.
var report_id = $("#report_inspect_form .js-report-id").text() || undefined;
- function refresh_duplicate_list() {
+ function refresh_duplicate_list(evt, params) {
+ if (params && params.skip_duplicates) {
+ return;
+ }
+
var category = $('select[name="category"]').val();
if (category === '-- Pick a category --') {
return;
@@ -128,6 +132,14 @@
fixmystreet.markers.removeFeatures( current_duplicate_markers );
fixmystreet.markers.addFeatures( markers );
current_duplicate_markers = markers;
+
+ // Hide any asset layer that might be visible and get confused with the duplicates
+ var layers = fixmystreet.map.getLayersBy('assets', true);
+ for (var i = 0; i<layers.length; i++) {
+ if (!layers[i].fixmystreet.always_visible && layers[i].getVisibility()) {
+ layers[i].setVisibility(false);
+ }
+ }
}
function remove_duplicate_list() {
@@ -145,6 +157,10 @@
return;
}
fixmystreet.markers.removeFeatures( current_duplicate_markers );
+
+ // In order to reinstate a hidden assets layer, let's pretend we've
+ // just picked the category anew, but skip ourselves
+ $(fixmystreet).trigger('report_new:category_change', { skip_duplicates: true });
}
function inspect_form_state_change() {