X-Git-Url: https://git.openstreetmap.org./nominatim-ui.git/blobdiff_plain/f9ae81bddd61b9749df987e6c8ee9263ae464705..1e52708ba183a23280db004e28284a0ce6f1b5a8:/src/pages/DetailsPage.svelte diff --git a/src/pages/DetailsPage.svelte b/src/pages/DetailsPage.svelte index baac180..2b8f4cc 100644 --- a/src/pages/DetailsPage.svelte +++ b/src/pages/DetailsPage.svelte @@ -54,6 +54,14 @@ } } + function place_has_keywords(aThisPlace) { + // Return false if Nominatim API sends 'keywords: { name: [], address: [] }' + return ( + aThisPlace.keywords && aThisPlace.keywords.name && aThisPlace.keywords.address + && (aThisPlace.keywords.name.length > 0 || aThisPlace.keywords.address.length > 0) + ); + } + $: { let pageinfo = $page; if (pageinfo.tab === 'details') { @@ -61,6 +69,7 @@ base_url = window.location.search; } } + $: reverse_only = Nominatim_Config.Reverse_Only;
@@ -97,7 +106,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} @@ -108,18 +119,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} @@ -151,34 +168,28 @@ {#if aPlace.address} {#each aPlace.address as addressLine} - + {/each} {/if} {#if aPlace.linked_places} -

Linked Places

+

Linked Places

{#each aPlace.linked_places as addressLine} - + {/each} {/if} -

Keywords

- {#if api_request_params.keywords} + {#if !reverse_only} +

Keywords

+ {#if api_request_params.keywords} - {#if aPlace.keywords && (aPlace.keywords.name || aPlace.keywords.address) } -

Name Keywords

- {#each aPlace.keywords.name as keyword} - - {formatKeywordToken(keyword.token)} - {#if keyword.id} - word id: {keyword.id} - {/if} - - {/each} - - {#if aPlace.keywords.address} -

Address Keywords

- {#each aPlace.keywords.address as keyword} + {#if place_has_keywords(aPlace)} +

Name Keywords

+ {#each aPlace.keywords.name as keyword} {formatKeywordToken(keyword.token)} {#if keyword.id} @@ -186,26 +197,39 @@ {/if} {/each} + + {#if aPlace.keywords.address} +

Address Keywords

+ {#each aPlace.keywords.address as keyword} + + {formatKeywordToken(keyword.token)} + {#if keyword.id} + word id: {keyword.id} + {/if} + + {/each} + {/if} + {:else} + Place has no keywords {/if} {:else} - Place has no keywords + + + display keywords + + {/if} - {:else} - - - display keywords - - {/if} -

Parent Of

+

Parent Of

{#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} -

{type}

+

{type}

{#each aPlace.hierarchy[type] as line} - + {/each} {/each} @@ -256,7 +280,7 @@ } tr.all-columns { - background-color: white !important; + background-color: white !important; border: none; } tr.all-columns td { @@ -268,6 +292,7 @@ } #map-wrapper { + position: relative; width:100%; min-height: auto; height:300px;