diff options
-rw-r--r-- | CHANGELOG.md | 1 | ||||
-rw-r--r-- | web/cobrands/bexley/js.js | 2 | ||||
-rw-r--r-- | web/cobrands/bromley/assets.js | 2 | ||||
-rw-r--r-- | web/cobrands/fixmystreet/assets.js | 2 | ||||
-rw-r--r-- | web/cobrands/fixmystreet/fixmystreet.js | 2 | ||||
-rw-r--r-- | web/cobrands/fixmystreet/staff.js | 3 | ||||
-rw-r--r-- | web/js/duplicates.js | 18 |
7 files changed, 24 insertions, 6 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 5427de162..3afd39446 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,6 +25,7 @@ - Hide category extras when duplicate suggestions shown. - Hide duplicate suggestions when signing in during reporting. - Retain extra data if signing in during reporting. + - 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/cobrands/bexley/js.js b/web/cobrands/bexley/js.js index 907185aea..f2ee820b2 100644 --- a/web/cobrands/bexley/js.js +++ b/web/cobrands/bexley/js.js @@ -114,7 +114,7 @@ fixmystreet.assets.add(defaults, { // We need to trigger the below function on subcategory change also $(function(){ $("#problem_form").on("change.category", "#form_DALocation", function() { - $(fixmystreet).trigger('report_new:category_change', [ $('#form_category') ]); + $(fixmystreet).trigger('report_new:category_change'); }); }); diff --git a/web/cobrands/bromley/assets.js b/web/cobrands/bromley/assets.js index c1f22f529..6de53ae87 100644 --- a/web/cobrands/bromley/assets.js +++ b/web/cobrands/bromley/assets.js @@ -89,7 +89,7 @@ var tfl_asset_categories = Object.keys(bromley_to_tfl); $(function(){ $("#problem_form").on("change.category", "#form_service_sub_code", function() { - $(fixmystreet).trigger('report_new:category_change', [ $('#form_category') ]); + $(fixmystreet).trigger('report_new:category_change'); }); }); diff --git a/web/cobrands/fixmystreet/assets.js b/web/cobrands/fixmystreet/assets.js index c86f09ed9..caef01886 100644 --- a/web/cobrands/fixmystreet/assets.js +++ b/web/cobrands/fixmystreet/assets.js @@ -1001,7 +1001,7 @@ fixmystreet.message_controller = (function() { $('#' + stopperId).remove(); // Get rid of any stopper message responsibility_off(); // Will also reenable form } else { - $(fixmystreet).trigger('report_new:category_change', [ $('#form_category') ]); + $(fixmystreet).trigger('report_new:category_change'); } }); diff --git a/web/cobrands/fixmystreet/fixmystreet.js b/web/cobrands/fixmystreet/fixmystreet.js index 519a01fee..7aac072ea 100644 --- a/web/cobrands/fixmystreet/fixmystreet.js +++ b/web/cobrands/fixmystreet/fixmystreet.js @@ -476,7 +476,7 @@ $.extend(fixmystreet.set_up, { } }); - $(fixmystreet).trigger('report_new:category_change', [ $(this) ]); + $(fixmystreet).trigger('report_new:category_change'); }); }, diff --git a/web/cobrands/fixmystreet/staff.js b/web/cobrands/fixmystreet/staff.js index 0bbf65aae..b074a49f3 100644 --- a/web/cobrands/fixmystreet/staff.js +++ b/web/cobrands/fixmystreet/staff.js @@ -387,7 +387,8 @@ $(fixmystreet).on('display:report', function() { } }); -$(fixmystreet).on('report_new:category_change', function(evt, $this) { +$(fixmystreet).on('report_new:category_change', function() { + var $this = $('#form_category'); var category = $this.val(); var prefill_reports = $this.data('prefill'); var display_names = fixmystreet.reporting_data.display_names || {}; diff --git a/web/js/duplicates.js b/web/js/duplicates.js index b8bb35246..188459565 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; @@ -129,6 +133,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() { @@ -147,6 +159,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() { |