diff options
-rw-r--r-- | templates/web/buckinghamshire/report/new/roads_message.html | 14 | ||||
-rw-r--r-- | web/cobrands/buckinghamshire/js.js | 19 | ||||
-rw-r--r-- | web/cobrands/fixmystreet/assets.js | 2 |
3 files changed, 21 insertions, 14 deletions
diff --git a/templates/web/buckinghamshire/report/new/roads_message.html b/templates/web/buckinghamshire/report/new/roads_message.html index 1a66c5dd7..772f38df4 100644 --- a/templates/web/buckinghamshire/report/new/roads_message.html +++ b/templates/web/buckinghamshire/report/new/roads_message.html @@ -1,9 +1,11 @@ <div id="js-bucks-responsibility" class="box-warning hidden"> <strong>Invalid location</strong> - <p id="js-not-bucks-road" class="hidden js-responsibility-message"> - The selected road is not maintained by Buckinghamshire County Council. - </p> - <p id="js-not-a-road" class="hidden js-responsibility-message"> - Please select a road on which to make a report. - </p> + <div id="js-not-bucks-road" class="hidden js-responsibility-message"> + <p>The selected road is not maintained by Buckinghamshire County Council.</p> + <p>Please select another road.</p> + </div> + <div id="js-not-a-road" class="hidden js-responsibility-message"> + <p>The location you have selected doesn't appear to be on a road.</p> + <p>Please select a road on which to make a report.</p> + </div> </div> diff --git a/web/cobrands/buckinghamshire/js.js b/web/cobrands/buckinghamshire/js.js index df46b0eed..8d6313d76 100644 --- a/web/cobrands/buckinghamshire/js.js +++ b/web/cobrands/buckinghamshire/js.js @@ -134,8 +134,6 @@ function show_responsibility_error(id) { $("#js-bucks-responsibility").removeClass("hidden"); $("#js-bucks-responsibility .js-responsibility-message").addClass("hidden"); $(id).removeClass("hidden"); - - // TODO: Disable report creation at this point? } function hide_responsibility_errors() { @@ -143,6 +141,14 @@ function hide_responsibility_errors() { $("#js-bucks-responsibility .js-responsibility-message").addClass("hidden"); } +function disable_report_form() { + $("#problem_form").hide(); +} + +function enable_report_form() { + $("#problem_form").show(); +} + fixmystreet.assets.add($.extend(true, {}, defaults, { http_options: { params: { @@ -156,18 +162,16 @@ fixmystreet.assets.add($.extend(true, {}, defaults, { non_interactive: true, road: true, asset_item: 'road', - asset_category: [ - "Pothole", - "Road surface", - "Road lines / road markings" - ], + all_categories: true, actions: { found: function(layer, feature) { if (bucks_types.indexOf(feature.attributes.feature_ty) != -1) { hide_responsibility_errors(); + enable_report_form(); } else { // User has clicked a road that Bucks don't maintain. show_responsibility_error("#js-not-bucks-road"); + disable_report_form(); } }, @@ -175,6 +179,7 @@ fixmystreet.assets.add($.extend(true, {}, defaults, { // If a feature wasn't found at the location they've clicked, it's // probably a field or something. Show an error to that effect. show_responsibility_error("#js-not-a-road"); + disable_report_form(); } }, usrn: { diff --git a/web/cobrands/fixmystreet/assets.js b/web/cobrands/fixmystreet/assets.js index dd51242fb..6c64bb922 100644 --- a/web/cobrands/fixmystreet/assets.js +++ b/web/cobrands/fixmystreet/assets.js @@ -76,7 +76,7 @@ fixmystreet.roads = { check_for_road: function(lonlat) { var road_providers = fixmystreet.map.getLayersBy('fixmystreet', { test: function(options) { - return options && options.road && options.asset_category.indexOf($('select#form_category').val()) != -1; + return options && options.road && (options.all_categories || options.asset_category.indexOf($('select#form_category').val()) != -1); } }); if (road_providers.length) { |