X-Git-Url: https://git.openstreetmap.org/nominatim-ui.git/blobdiff_plain/7218a0c36c5b1e28ed46e1e1b133b5e5dd68b2ca..299cd3166ec51bcfddacf4133f21439b93547bd0:/src/pages/DetailsPage.svelte diff --git a/src/pages/DetailsPage.svelte b/src/pages/DetailsPage.svelte index 2c7f8ba..aa3670f 100644 --- a/src/pages/DetailsPage.svelte +++ b/src/pages/DetailsPage.svelte @@ -56,12 +56,18 @@ function place_has_keywords(aThisPlace) { // Return false if Nominatim API sends 'keywords: { name: [], address: [] }' + // Like no longer needed after Nominatim version 4.3 return ( aThisPlace.keywords && aThisPlace.keywords.name && aThisPlace.keywords.address && (aThisPlace.keywords.name.length > 0 || aThisPlace.keywords.address.length > 0) ); } + function country_code(aThisPlace) { + let aLine = aThisPlace.address.find((address_line) => address_line.type === 'country_code'); + return aLine ? aLine.localname : null; + } + $: { let pageinfo = $page; if (pageinfo.tab === 'details') { @@ -69,6 +75,7 @@ base_url = window.location.search; } } + $: reverse_only = Nominatim_Config.Reverse_Only;
@@ -93,10 +100,11 @@ - {#if (Array.isArray(aPlace.names)) } - No Name - {:else} + {#if aPlace.names && typeof (aPlace.names) === 'object' + && Object.keys(aPlace.names).length} + {:else} + No Name {/if} {aPlace.category}:{aPlace.type} @@ -105,7 +113,9 @@ {aPlace.admin_level} {/if} {aPlace.rank_search} - {aPlace.rank_address} ({formatAddressRank(aPlace.rank_address)}) + + {aPlace.rank_address} ({formatAddressRank(aPlace.rank_address)}) + {#if aPlace.calculated_importance} {aPlace.calculated_importance} @@ -116,18 +126,24 @@ {aPlace.centroid.coordinates[1]},{aPlace.centroid.coordinates[0]} + {@html osmLink(aPlace)} {aPlace.place_id} - (on this server) + ( + on this server + ) {#if aPlace.calculated_wikipedia} + {@html wikipediaLink(aPlace)} {/if} {#if aPlace.calculated_postcode} {aPlace.calculated_postcode} - + {/if} @@ -144,7 +160,7 @@

Address

-
+
@@ -159,34 +175,29 @@ {#if aPlace.address} {#each aPlace.address as addressLine} - + {/each} {/if} {#if aPlace.linked_places} - + {#each aPlace.linked_places as addressLine} - + {/each} {/if} - - {#if api_request_params.keywords} - - {#if place_has_keywords(aPlace)} - - {#each aPlace.keywords.name as keyword} - - - {#if keyword.id} - - {/if} - - {/each} + {#if !reverse_only} + + {#if api_request_params.keywords} - {#if aPlace.keywords.address} - - {#each aPlace.keywords.address as keyword} + {#if place_has_keywords(aPlace)} + + {#each aPlace.keywords.name as keyword} {#if keyword.id} @@ -194,26 +205,39 @@ {/if} {/each} + + {#if aPlace.keywords.address} + + {#each aPlace.keywords.address as keyword} + + + {#if keyword.id} + + {/if} + + {/each} + {/if} + {:else} + {/if} {:else} - + + + {/if} - {:else} - - - {/if} - + {#if api_request_params.hierarchy} - {#if aPlace.hierarchy && typeof (aPlace.hierarchy) === 'object' && Object.keys(aPlace.hierarchy).length} + {#if aPlace.hierarchy && typeof (aPlace.hierarchy) === 'object' + && Object.keys(aPlace.hierarchy).length} {#each Object.keys(aPlace.hierarchy) as type} - + {#each aPlace.hierarchy[type] as line} - + {/each} {/each} @@ -264,7 +288,7 @@ } tr.all-columns { - background-color: white !important; + background-color: white !important; border: none; } tr.all-columns td { @@ -276,6 +300,7 @@ } #map-wrapper { + position: relative; width:100%; min-height: auto; height:300px;
Local name

Linked Places

Linked Places

Keywords

Name Keywords

{formatKeywordToken(keyword.token)}word id: {keyword.id}

Keywords

Address Keywords

Name Keywords

{formatKeywordToken(keyword.token)}

Address Keywords

{formatKeywordToken(keyword.token)}word id: {keyword.id}
Place has no keywords
Place has no keywords
+ display keywords +
- display keywords -

Parent Of

Parent Of

{type}

{type}