diff --git a/html/template/rmo/nuisance.html b/html/template/rmo/nuisance.html
index 52401cc4..0b24045f 100644
--- a/html/template/rmo/nuisance.html
+++ b/html/template/rmo/nuisance.html
@@ -78,11 +78,11 @@
longitude.value = location.geometry.coordinates[0];
latlngAccuracyType.value = props.precision;
latlngAccuracyValue.value = props.distance;
- number.value = props.address_components.number;
- postalcode.value = props.address_components.postal_code;
- locality.value = context.whosonfirst.locality.name;
- region.value = context.whosonfirst.region.abbreviation;
- street.value = props.address_components.street;
+ number.value = props.address_components?.number ?? "";
+ postalcode.value = props.address_components?.postal_code ?? "";
+ locality.value = context.whosonfirst?.locality?.name ?? "";
+ region.value = context.whosonfirst?.region?.abbreviation ?? "";
+ street.value = props.address_components?.street ?? "";
}
function toggleCollapse(something) {
el = document.getElementById(something);
diff --git a/html/template/rmo/water.html b/html/template/rmo/water.html
index 453091e0..5aa2af71 100644
--- a/html/template/rmo/water.html
+++ b/html/template/rmo/water.html
@@ -78,11 +78,11 @@
longitude.value = location.geometry.coordinates[0];
latlngAccuracyType.value = props.precision || 0;
latlngAccuracyValue.value = props.distance || 0;
- number.value = props.address_components.number;
- postalcode.value = props.address_components.postal_code;
- locality.value = context.whosonfirst.locality.name;
- region.value = props.context.whosonfirst.region.abbreviation;
- street.value = props.address_components.street;
+ number.value = props.address_components?.number ?? "";
+ postalcode.value = props.address_components?.postal_code ?? "";
+ locality.value = context.whosonfirst?.locality?.name ?? "";
+ region.value = context.whosonfirst?.region?.abbreviation ?? "";
+ street.value = props.address_components?.street ?? "";
}
function toggleCollapse(something) {
el = document.getElementById(something);
diff --git a/static/js/address-suggestion.js b/static/js/address-suggestion.js
index 8c2284d6..4b1afacb 100644
--- a/static/js/address-suggestion.js
+++ b/static/js/address-suggestion.js
@@ -201,7 +201,14 @@ class AddressInput extends HTMLElement {
}
SetValue(suggestion) {
- this.value = suggestion.properties.formatted_address_line;
+ const props = suggestion.properties;
+ if (props.formatted_address_line) {
+ this.value = props.formatted_address_line;
+ } else if (props.address_components) {
+ this.value = `${props.address_components.number ?? ""} ${props.address_components.street ?? ""}, ${props.coarse_location ?? ""}`;
+ } else {
+ this.value = `${props.name ?? ""}, ${props.coarse_location}`;
+ }
this._suggestions.innerHTML = "";
}
}